RetroArch runs PAL games too fast on Linux

PAL games run about 10% too fast in Swanstation on Linux (on Windows the speed is fine). Any idea why ? I’m using Vulkan + Pipewire, a 60 Hz monitor (the game is obiously 50 Hz). Is there a way to correct the timing ?

Edit: this also happens with SNES PAL games on two different cores.

1 Like

I have no Windows, so no way for me to test that myself. Running the game on my Linux machine (Vulkan, AMD, 120 Hz monitor, without VRR) game seems to run fine. RetroArch 1.20.0 SwanStation 1.0.0 10af0c7. But I am not sure what speed it should supposed to run. The FPS ingame is for me 49.75. What FPS does the game give you?

Can you check if you enabled “Force NTSC Timings” under Enhancement Settings for the Linux installation of Swanstation? Enabling it for me just breaks the music, but FPS seems the same, so not sure if this has anything to do with it. Just shooting in the dark here.

1 Like

It runs at 49.75 fps, but the game itself (especially the music) is sped up. “Force NTSC timings” wasn’t on but if I enable it it seems to correct the game speed. The game then runs at 60 fps and at normal speed. Apparently this setting could be game-breaking for some games. I still think there could be a bug in the way it handles PAL ?

1 Like

I can test later, but does it run normal with the Beetle core?

No, same problem with Beetle PSX.

Are all PAL games like that? It might be an issue with this specific title.

1 Like

I tried another PAL game; same problem. The boot sequence also runs too fast so it might not be game related.

I just realized other cores also have this behavior, not just PSX ones. The same problem occurs with an SNES PAL game on two different cores (Snes9x and bsnes).

So this seems like a general issue, independent from game and core then. I am not sure how to test if this works correctly on my end, but playing a PAL game doesn’t feel or sound unnatural fast or weird to me (I’m also on Linux).

Could you try to enable general RetroArch option in Settings > Video > Sync to Exact Content Framerate (G-Sync, FreeSync) to ON. If you don’t have a VRR display, not sure if this makes any difference. Next go to Settings > Audio > Synchronization and check if option Synchronization is set to ON (it should), and what settings you have for Maximum Timing Skew and Dynamic Audio Rate Control.

1 Like

After trying what thingsiplay suggested, you could also try going to Settings > Video > Synchronization > VSync Swap Interval and set it to “Auto”. Of course, make sure VSync is enabled and your video driver (if Nvidia) isn’t conflicting by using some global setting.

1 Like

Enabling Sync to Exact Content Framerate makes the game run at proper speed and I don’t have a VRR display. Audio Synchronization was enabled.

My audio settings are: audio_max_timing_skew = “0.050000” audio_rate_control_delta = “0.005000”

What’s strange is that without Sync to Exact Content the statistics show:

  • Core:
  • -FPS: ~50
  • Video:
  • -Framerate: ~60 fps

With Sync to Exact Content the core FPS and video framerate are both about 50 fps. Refresh is shown to be 60 Hz in both cases.

2 Likes

That’s interesting! Because I have Sync to Exact Content Framerate enabled too, without me able to use the VRR of it (its G-Sync fo Nvidia, but I have AMD nowadays). So this actually makes a difference, even if we cannot use the VRR of the display. Weird!

2 Likes

Could you disable it and try a PAL game?

If I disable Sync to Exact Content Framerate, those games seem to be slightly faster, but I am not 100% certain. Either I imagine it, I am not very perceptible to the difference (however in my youth remember how different 50Hz and 60Hz of same games were), or the change in configuration doesn’t make a difference.

Found this interesting list, where a user tested if the PAL games were optimized for their speed compared to the NTSC version. So if you want to test a slowed down PAL game that runs too fast, you should know which game to test I believe: https://www.reddit.com/r/snes/comments/9f9r9q/testing_if_pal_snes_games_are_optimized_for_50_hz/

I tried Street Fighter 2 and F-Zero. Also besides playing the games a little bit myself, I also have recorded in SF2 a playback file in .bsv and recorded the video from it with enabled and then disabled VRR setting. Resulting video runs exact same speed.

No definitive answer from me. Which game do you experience huge difference, that I could test it myself? Could we time an intro in example? I would time it with and without VRR enabled for comparison how long it took.