Raspberry Pi 4
For information, Recalbox IS NOT compatible with Raspberry Pi 4 yet.
Pour information, Recalbox N'EST PAS encore compatible avec le Raspberry Pi 4.
The Recalbox Team.
Input Lag: Vergleich zwischen Recalbox und SNES Classic Mini
The only thing my articles tell the reader is that this devices play Super Mario World with an input lag in ascending order: (from best to worst) on my television (gaming tv with low input lag) with the best possible gamepad setup (wired over wireless if possible)
- SNES Classic Mini
- Wii U Virtual Console
- Recalbox (PocketSNES)
- Recalbox (Snes9x Next)
The SNES Classic Mini has according to my measments by far (!) the lowest input latency. Right now it is not possible to achieve a low input lag with a raspberry pi with the current state of emulation. Many ppl tried but the result is always the same: With the regular emulators you need a powerful pc.
This does not lower the achievement of the Raspberry Pi or Libreto. It's free! But it has trade offs. I believe I am not the only person who felt the input lag right from the start on the raspberry pi (Batocera, Recalbox ,Retropie with and without optimizations). If you play with the SNES Mini in comparision there is no doubt that it responds much faster. Even without my numbers.
Ok, you are right. The comparison should have been done with the same gamepad. I do not know how much input lag difference is between the SNES Classic Mini wired gamepad and a wireless Xbox360 or PS3 Controller.
Also i noticed too, that the internal bluetooth of Pi3 is not as good as certain usb bluetooth dongles.
But at least the comparison test of "Brunni" from the RetroArch forum is very enlightening. Did you take a look?
He found out, that with certain settings ("video driver" = dispmanx and "threaded video" = off) you can lower the input lag to a level near to SNES Classic Mini.
Could you please test Recalbox with your method with the settings i mentioned?
In the libretro-forum i found another interesting thread with a guide to reduce input lag:
Maybe some of the settings mentioned there are also possible to set in Recalbox and will reduce input lag a bit more?
Since we already have a date later this month (we live in the same city) we can test this if you visit me. My experience with this is: These settings work only with a PC and not a Raspberry Pi. It does either nothing at all or emulation becomes slow.
@marcdk just my own experience : when playing with recalbox on a crt i have some tweakes to make to reach better speed. Removing double buffering is one of them. I'll try to list what kivutar (lakka project leader) told me
@joinski on the pi, internal wifi and bluetooth are conflicting which each others, there was some tweaking on the forum a while ago which really improved input lag for internal bt.
But any way I would really compare to the snes mini with a connected controller for both systems, not a bluetooth one.
Also snes should be connected on lcd tv like the pi, not a crt one
In my tests, BT and Wifi were disabled. I extend the article to reflect that.
@marcdk disabled how ? With an overlay or just "not used" ?
WiFi not used.BT disabled.
@marcdk better disable both with an overlay
do you really believe that this has any impact on input lag?
@marcdk prolly not, but there is the wrong way, and the good way to do this. But for bluetooth pads : disabling the right way wifi does have a massive impact (even menwho.s not a picky input lag communist noticed it)
But still, you've got some leads to slighlty improve the global lag performance. And you couldnbe able to save up to 2 frames i think, maybe even a little more, who knows
Let’s assume that some of this settings would actually improve input lag. Why are this options switched off in the first place? I’ll answer the question myself: because they are trade-offs with slow performance and glitches.
Many ppl tried to improve this on the rpi. I asked that question in this very forum about a year ago. It is not possible to really improve the performance to a level that you "feel" a noticeable difference. You do instantly feel a difference with a very powerful pc or the SNES mini in comparison.
I was always a defender of the raspberry pi and recalbox in general. And yes, it is still awesome to have all this systems for free. But if you really want to play this games and have to option to play on real Hardware for comparison you will quickly notice the problems these solutions have.
@marcdk Dude, I know you can probably guess by yourself that:
- we are not Retroarch pros
- some settings could have been written AFTER recalbox was started
- we can't keep an eye on every Retroarch commit + every libretro core commit + every emulator commit + every buildroot commit
- just regarding dispmanx, I'm the one who added it on 4.1
- we terribly lack time and/or contributors to do this ground work
- and yes, we also aim for the "most compatible" configuration in terms of emulation but also arch (pi, odroids anx both x86 share the same RA configuration file)
We're really open to get feedback from users if they are willing to improve anything. But just read our commit log, just check by yourself : hardly any one does.
Now a little earlier in the conversation you asked
So please tell me how to significantly reduce the input lag on recalbox with a raspberry pi. I will measure it and extend the article right away.
@joinski gave you some leads, so go ahead and try it by yourself, measure it, write blog articles if it's your hobby. We both know it will never reach the latency of a modern computer or a dedicated box. But it can be slightly improved, maybe to a point where you can feel "more comfortable" when playing, without ever reaching what a PC can do. Regarding PC, i also remember that some libretro forum member made some measure and sad a windows PC was around 7 FPS of input lag, linux was 1 FPS above.
The input lag investigation says it all, is very complete regarding tests, the way they did it etc ...
Retropie gives a few tricks, despite i'm sceptical about the video max swap chain, i was told to put it to 2 or even 1 by libretro members.