PS1 on Lakka

I’m running Lakka on an asus chromebox and so far I’ve managed to get everything running great even psp however I tried playing breath of fire IV on ps1 and it’s real choppy both video and audio. I’ve tried messing with the audio sync and vsync options but so far it still remains choppy. Even with no shaders enabled. Is it normal to have ps1 emulation run poorly even if psp works great? Thanks

if it’s an x86 chromebox, you’ll be using mednafen-psx, which has no dynarec and is software-rendered, while PPSSPP has a dynarec and is hardware-rendered. So, yeah, it can happen.

I played around with it for a couple hours and figured it out. Enabling “threaded video” fixed it. Not entirely sure why. What does threaded video do exactly? Running ps1 games at full speed now.

RetroArch typically works by locking your video to your monitor’s refresh rate and then locking your audio to that same rate and dynamically resampling the audio as necessary to keep the audio buffer from emptying. Threaded video throws that out and just lets the video and audio run in separate threads without being locked together. This mode was added to work on platforms where refresh rates are frequently misreported by the OS and audio latencies are unpredictable (Android, cough cough).

It does have some interesting effects in certain other situations, though, such as too-heavy shaders causing frameskip instead of actually reducing the speed.

In your case, I’m not sure why threaded video helped but I’m glad it did :slight_smile:

Very interesting! Thanks for the info. Is there a way to save certain options per core. So I could have threaded video enabled when the psx core is loaded but disabled for like nes/snes? Thanks! Still learning my way around Lakka/retroarch but so far I’m loving it! Excellent work to everyone involved!

Yes, under settings > configuration, you can set ‘load override files automatically’ to ON. Once you do that, you can create a directory inside your ‘config’ directory (whatever that’s set to in settings > directories) called “Mednafen PSX” (the name needs to exactly match the core’s internal naming scheme, which can be hard to determine sometimes) and inside that directory make a text file named Mednafen PSX.cfg that contains any options you want to change for just that core. In this case, you would just need to have: video_threaded = “true”