Amiberry 3.3 / RPi 4 slow
-
@gordonfreemanjr No, you missed my point. 30 fps at 4k resolution is a hardware limitation. You can do 50/60 on pal/ntsc at 1080p no problem. Pi4 can output 4k, but it doesn't do it very well. Emulation is taxing and Pi4 just can't handle it without stuttering and frameskips, even at 30fps hard cap. That's why you'll find dozens of threads here saying to set your resolution to 1080p.
-
@thorr69 Oh, sorry. Got it.
Yes, switching to 1080p would probably fix my problem. There problem is I’m unable to do it. Each time I use the raspi-config to switch to any other resolution than the „monitor preferred”, the EmulationStation never comes back. I’m stuck at back screen on boot indefinitely and when I to raspi-config most of the resolution options are gone, including the working „monitor preferred”.
All I can do at this point is to wipe the SD and start over. Happened to me three times already, even on clean install.
-
Ha, I found this thread as I had the exact same problem – Amiberry running slow on my RPi 4, with the latest Retropie image. And... I went right ahead and changed my resolution to 1920x1080 without reading @gordonfreemanjr 's last post... and now emulationstation isn't booting!
I've not figured out a solution to this yet (suggestions very welcome!) but:
Possibly telling you something you already know, but just in case: you can press the F4 key to get to your terminal. From there, you can type
sudo raspi-config
to get back to try your luck mucking about with screen config some more.I found the StackExchange answer below, which suggests using the "G2 GL (Fake KMS)" GL driver before changing the resolution – though I've not had any luck with this. (Maybe it'd have worked if I hadn't already broken my config?!)
Not a full answer, but hopefully this gives some leads and we can figure out a solution from here... I'd rather not wipe my sdcard and start over!
-
@thorr69 @asinoladro I managed to switch to 1080p eventually after modifying config.txt. And... no change. Amiberry’s still slow and choppy.
-
In case anyone stumbles into this thread, here's how you can edit config.txt manually:
-
@gordonfreemanjr I've now got this working – got Cannon Fodder playing with totally smooth audio and a good framerate :)
My understanding of what's happened in my case is as follows – I think there's a good chance this'll work for you too:
- As discussed in this thread – Amiberry (and most other emulators) are extremely slow in 4k.
- There are many different "1080p" display modes, and they won't all work on your TV or monitor. You need to pick the right one for your monitor.
- If you don't pick the right one, then either you get a black screen, or... your system just ignores your requested mode and defaults right back to 4K (though in settings it'll show your chosen 1080p option, and you won't see any error anywhere!)
Here's what I did to pick the right 1080p display mode:
4. Following the instructions underWhich values are valid for my monitor?
in https://www.raspberrypi.org/documentation/configuration/config-txt/video.md, run/opt/vc/bin/tvservice -m CEA
and/opt/vc/bin/tvservice -m DMT
. (See https://raspberrypi.stackexchange.com/questions/7332/what-is-the-difference-between-cea-and-dmt for what CEA and DMT mean)
5. As I'm using a monitor, I thought I needed a DMT mode, so I updated my/boot/config.txt
withhdmi_group=2
(=DMT) andhdmi_group=82
. I then rebooted withsudo reboot now
...
6. ...and yet, checking/opt/vc/bin/tvservice -s
, I was still on a 4k display mode! Argh!
7. I went back to/opt/vc/bin/tvservice -m CEA
and/opt/vc/bin/tvservice -m DMT
and noticed there was a CEA display mode that hadnative
next to it, so I decided to go for that. For me, that meanthdmi_group=1
(which is CEA, confusingly) andhdmi_group=16
.
8. After a reboot, the difference was obvious even in emulationstation – suddenly navigating the menu was super smooth. And sure enough, booting up Amiga games, no slowdown at all.Let me know if this works for you! Good luck!
-
@asinoladro said in Amiberry 3.3 / RPi 4 slow:
I found the StackExchange answer below, which suggests using the "G2 GL (Fake KMS)" GL driver before changing the resolution – though I've not had any luck with this. (Maybe it'd have worked if I hadn't already broken my config?!)
note that retropie/raspbian already use fkms by default. you would have to actively turn on pure kms to need to disable it.
-
@asinoladro I’m glad you god this working - also, thanks for the detailed tip.
It’s not working so far on my end. I managed to change the resolution to 1x16 (CEA 1920x1080 60Hz), clock 148MHz), but the Amiberry is just as slow as ever.
I followed your path regarding the tvservice option. This is my list. None of the resolutions are desrcribed as ‘native’, and one is desribed as ‘preferred’ - but that’s 30Hz, so no.
My output:
https://ibb.co/jfrVtLdNot sure what to do now. Should I just check them all and see if any works?
-
@asinoladro Aargh. Even with the 1x16 setting forced in config.txt, apparently I’m still in the wrong mode:
Damn.
-
@gordonfreemanjr please post your config.txt. (via a pastebin site).
You sure you uncommented the mode options etc?
And make sure you're using the hdmi port closest to the USB power also.
-
@buzz Here's my config.txt:
Yes, I'm sure I'm using the correct HDMI port.
-
@gordonfreemanjr what happened since https://retropie.org.uk/forum/topic/29495/30-fps-cap-at-4k-workarounds/7?_=1612256647099 ? i thought you had this sorted using a different mode?
have you forced some other mode via the runcommand resolution select for amiberry?
-
@dankcushions What happened is it didn't work. Apparently I didn't switch to the other resolution at all. Running /opt/vc/bin/tvservice -s showed that I'm still in the 4K resolution despite raspi-config claiming otherwise. Same situation as @asinoladro's.
I was puzzled why Amiberry is still slow after switching to 1080p. Apparently I wasn't in 1080p at all, that's why.
-
@gordonfreemanjr so in a previous post you say that
hdmi_group=1 hdmi_mode=16
causes ES not to boot up at all, but now it's back in your config.txt? and
hdmi_group=2 hdmi_mode=82
which booted fine, is no-longer in contention?
i'm not really sure what your process is of checking this is. you edit the file, save, REBOOT, and then check via tv service? do you also check the config.txt at this point to make sure the setting has stuck?
-
@dankcushions Nope. Let me go through the events quickly:
- Amiberry is slow. I find the advice on the resolution and framerate. Apparently 4K is stuck at 30 FPS. I use raspi-config to switch to 1080p
- I reboot, the ES is gone and won't boot. I edit the config.txt, try to comment the HDMI values back. I save, I reboot. The ES is still gone. I check whether my changes were saved: yes, they were
- I give up and wipe the SD card to start over
- Once the new RetroPie is installed and working, I perform an experiment: I do the same thing, which is changing the resolution with raspi-config on a freshly installed RetroPie. Same situation: the ES is gone and won't boot. I wipe the SD card again
- With another clean install, I'm back to tackle the issue again. As for some reason this blows my ES sky high, this time I'm not touching raspi-config. I edit the config.txt with sudo nano, set the HDMI values to 1x16, I reboot.
- The ES works and boot correctly. I run raspi-config to check the resolution: apparently it's 1080p. At this point I write in the other topic that I made it.
- I try Amiberry: no changes, laggy and choppy
- I learn about the /opt/vc/bin/tvservice -s command. The output tells me that I'm NOT in 1080p at all, but still stuck in 4K.
- ...and here we are.
-
@gordonfreemanjr thanks for the summary. sticking to one thread would help! and have you tried
hdmi_group=2 hdmi_mode=82
in config.txt?
-
@dankcushions You're right. The reason is I was convinced we're talking two separate issues, that's why two topics. Sorry about that!
I haven't, let me try it real quick.
-
@dankcushions Ok, tried it. No changes. Also, according to /opt/vc/bin/tvservice -s I'm still in 4K even with 2x82 settings forced with config.txt
-
What resolutions does your TV support ? If you use the Runcommand launch menu to change the resolution, what are your choices ?
-
@mitu Tons... it’s over 50 of them.
Screenshots:
https://ibb.co/2McjX00
https://ibb.co/RBtpYg9
https://ibb.co/MpqWmx7
https://ibb.co/ZGx1V0BI tried setting 87-15 and 87-17 as global Amiberry modes, no change.
For the record, I’m back to the 1x16 setting in the config.txt. Not that it changes anything.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.