Emulationstation video previews on Raspberry Pi 5
-
I've:
- Formated SD card and reinstalled latest RaspberryPi OS 64-bit
- Manually installed RetroPie using this guide: https://retropie.org.uk/docs/Manual-Installation/
- Set HDMI output to 1920x1860x60Hz
- Installed usbromservice to use external SSD.
- All preview videos are downloaded from Skraper (Screenscraper).
Each video is H.264,~30 seconds long, 640x480 and below 1MB in size.
Emulationstation still struggles and lags between video previews, dropping to 1-3 FPS for 1-2 seconds.
That means, when I try to scroll through games, after I press a button (down) it takes 1-2 seconds till emulationtation moves cursor and shows info about next game.
This is a serius problem that affects usability by a lot.As far as I've gathered, new Raspberry Pi5 and Emulationstation uses VLC for video playback.
Maybe something got broken in VLC with updates?
Any ideas? I really would love to save video previews and still be able to scroll through gamelists. Thank you. :)
-
Does anyone else with RaspberryPi 5 and Retropie use videos in emulationstation for games and can confirm that they have or don't have this problem?
-
@Peeteris said in Emulationstation video previews on Raspberry Pi 5:
Does anyone else with RaspberryPi 5 and Retropie use videos in emulationstation for games and can confirm that they have or don't have this problem?
I use videos scraped using Skyscraper, and can confirm that I’ve had no issues so far.
-
@StuMcBill I deleted all gamelists, media files and downloaded skyscraper. After that I tried to download all the media and make a gamelist in Skyscraper for only one console (Sega CD in this case, 12 games total in folder).
Also! Before I had my media files (video) and gamelists in my extrenal SSD.
This time I tried to save everything in SD card (standart options in skyscraper).And, it's still the same - video starts to play with a slight dealy, framerate drops and input from controller is registered with a delay when I scroll to next game in list.
So.
It's not a problem with my extrenal SSD
It's not a problem with settings because I made a clean install just to check if problem persists.
It's not a problem with videos as they are, because dofferent Scrapers give same result.The only logical thought is that something broke with some Emulationstation or VLC update?
Any input in this discussion is welcome.
Kind of going mad because everything was fine month or two ago, now retropie with enabled videos is not quite useable. -
@Peeteris bump
-
So, what I've tried:
- Converted all game videos from h.264 to h.265 - No effect
- Disabled audio output (I have HDMI cable 1080p@60 connected) - No effect
- Changed Emulationstation VRAM limit from 100 MB to 900 MB - No effect
- Changed between X11, Wayland, Labwc - No effect
- Disabled Raspberry Pi Connect - No effect.
I am going crazy, I don't know what to do!
This is the most silent forum thread I've ever encountered.
For real, any input and ideas are worth trying. Would love to get through this with some help...
If I've not been clear about what's the problem, please let me know. Maybe filming it would help?Thank you.
-
@Peeteris what theme are you using? It sounds a bit like the issue reported in this thread.
https://retropie.org.uk/forum/topic/35802/solved-pi5-gamelist-with-videos-slowdown-loading/
There, they solved the issue by editing the theme and, since it was their own creation, publishing the fix. If you use that same exact theme Cygnus Blue Flames, just download the updated theme on your system. Otherwise, maybe try playing with the
video<delay>
value in whatever theme you are using.- It is recommended that you copy your current theme from
/etc/emulationstation/themes
to the/opt/retropie/configs/all/emulationstation/themes
folder for the similar reasons why the es_systems.cfg file was copied. (Re: https://retropie.org.uk/docs/Add-a-New-System-in-EmulationStation/#step-1-edit-es_systemscfg: "It is recommended that you make a copy of this file into the/opt/retropie/configs/all/emulationstation
folder. The default version will be overwritten whenever you make updates to your RetroPie system so any manual changes such as a new system will be lost." -- additionally, theconfigs
location has the benefits in that it is accessible by the network Samba share, and that you don't need admin privileges to make edits there.)
- It is recommended that you copy your current theme from
-
@sleve_mcdichael Thank you for reply.
Different themes give the same result.
If I change <delay> for any theme, it does just like that - delays the playback of the video, but when the playback starts, system FPS drops to 1-5.
Thanks to <delay> function, it's apparent now that even when video plays, if I press a button (back/up/down) for any action which will cancel the playack of the video, system still will freeze for ~ one second before it registers input and does the next thing I've chosen it to do.So, system plays back videos smoothly, and menus/theme is working smoothly, but when video starts/stops, it halts system (more like just drops FPS to 1-5) for a second. This also means that transitions are choppy as well if I scroll from video to video.
-
@Peeteris
By the way, I had the same problem. Playing with the delay is a temporary solution, but the problem is still there. It's just hidden by this solution but not fixed. -
@DTEAM Yes, it appeared out of the blue. I'm sure the problem is not on my end, and delaying video doesn't fix it, as if i want to watch a video preview of a game selecting next game ES still lags and drops framerate to zero.
Hopefully someone on Retropie team will catch this bug and be able to address it.
As of 19.08.2024., problem still exists. -
I have the same issue, this is solved by setting the videoplayer to OSMX but i a missing that option because emulationstation is stuck on 2.11 and i can't seem to update it on the PI5
-
@Peeteris I have this problem too.
I have my theme set to 2.75 sec delay, and it feels more like the issue is at stop rather than at start.
I changed it to 0 sec delay, and it starts quick when first entering a system I feel, then frame drop at stopping...
But I can confirm the issue as well.I think the issue stems from using VLC to play the snaps on rPi, and there's no OMX player since Buster.
-
The delay at stop/change of a video with libvlc3 can be explained here. libvlc4 (no ETA) will provide an asynchronous stop method which should mitigate this issue.
I detected another issue, when PowerSaving is set to INSTANT (or the theme does not use "delay" or has a "delay" of 0): When changing the selected game in a list the newly selected game does not show the video at all (black frame). Only if the selection is changed again one can see a few frames of the video which should be shown just before the selection changes.
However, when the main menu (or options) is opened and closed again the video plays as expected. Does anybody else has this issue too?
This is the test setup:
- Rpi5, 4GB, Sandisk SD
- RaspiOS 64Bit lite (Bookworm), with current RetroPie-Setup "Basic Install"
- Both issues can be reproduced with EmulationStation 2.11.2RP as well as the dev version.
- Videos scraped with Skyscraper from screenscraper, not post processed
- Monitor 1280x1024 connected via HDMI->VGA
-
@RapidEdwin08 RPi5 uses VLC, no OMX.
Pretty much nothing we can do at the moment?
Strange, because few months ago it worked flawlessly. -
@Peeteris said in Emulationstation video previews on Raspberry Pi 5:
Pretty much nothing we can do at the moment?
Strange, because few months ago it worked flawlessly.At least there is a workaround. It turns out that with version 3.0.21 of libvlc the behaviour reported here was introduced. I am not a big fan of downgrading but here is my workaround.
Put this script somewhere at your Pi 5 (with 64Bit RaspiOS), make is executable (
chmod a+x <thisscript>.sh
) and let it run. You will get a warning message that you are downgrading from 3.0.21 to 3.0.20 but let's accept the risk for now.#!/usr/bin/env bash pkgs=(libvlc5 libvlc-bin libvlccore9 vlc-bin vlc-data vlc-plugin-base) ver="3.0.20-0+rpt6+deb12u1" pushd /tmp for p in "${pkgs[@]}"; do arch="arm64" if [[ "$p" == "vlc-data" ]] ; then arch="all" fi wget "http://archive.raspberrypi.org/debian/pool/main/v/vlc/${p}_${ver}_${arch}.deb" done dpkg -i *.deb apt-mark hold "${pkgs[@]}" popd
Then restart ES, it should work without lag/freeze between the gamelist movements. :)
To backout/revert: Remove the hold on the six named packages (
apt-mark unhold ...
) and install the six packages from the maintained bookworm as usual.The other issue with "Powermode Instant" still persists, but that's only an ES issue.
-
@Lolonois Thanks for this, I tested and it Works as expected.
I took the liberty of adding some fluff to your workaround script, included a simple prompt + upgrade:
#!/usr/bin/env bash # Workaround for libvlc issue with video previews in ES by Lolonois # https://retropie.org.uk/forum/topic/35717/emulationstation-video-previews-on-raspberry-pi-5/17 pkgs=(libvlc5 libvlc-bin libvlccore9 vlc-bin vlc-data vlc-plugin-base) ver="3.0.20-0+rpt6+deb12u1" tput reset echo echo DOWNGRADE [libvlc] to [v$ver] echo _OR _ echo Remove the HOLD of [v$ver] + UPGRADE [libvlc] echo echo "SELECT: [downgrade] or [upgrade]" echo " 1) DOWNGRADE libvlc to [v$ver]" echo " 2) UPGRADE libvlc" echo " 3) QUIT" read n case $n in 1) vlcCHOICE=downgrade;; 2) vlcCHOICE=upgrade;; 3) exit 0;; *) echo "You must SELECT: [downgrade] or [upgrade]"; exit 0;; esac pushd /tmp > /dev/null 2>&1 for p in "${pkgs[@]}"; do arch="arm64" if [[ "$p" == "vlc-data" ]] ; then arch="all" fi if [[ "$vlcCHOICE" == "upgrade" ]]; then sudo apt-mark unhold "${pkgs[@]}"; echo HOLD has been REMOVED for [v$ver]; echo Attempting to UPGRADE "${pkgs[@]}"; sudo apt-get install "${pkgs[@]}"; popd; exit 0; fi wget "http://archive.raspberrypi.org/debian/pool/main/v/vlc/${p}_${ver}_${arch}.deb" done sudo dpkg -i *.deb sudo apt-mark hold "${pkgs[@]}" rm /tmp/*.deb popd
-
-
Amazing! Thank you very much!
Glad to hear that I'm not crazy, because for 2 months no one really agreed that this problem is real. ❤️ -
@Peeteris said in Emulationstation video previews on Raspberry Pi 5:
because for 2 months no one really agreed that this problem is real
No, it's a major problem for video previews. I hope they will fix the problem for the future.
-
I did this but it won't run. My .sh file is in /home/pi/
pi@retropie:~ $ chmod a+x /home/pi/esdowngrade.sh pi@retropie:~ $ /home/pi/esdowngrade.sh /usr/bin/env: ‘bash\r’: No such file or directory /usr/bin/env: use -[v]S to pass options in shebang lines
or
pi@retropie:~ $ sh /home/pi/esdowngrade.sh : not founddowngrade.sh: 2: : not founddowngrade.sh: 5: /home/pi/esdowngrade.sh: 6: Syntax error: "(" unexpected
any idea why
-
@DTEAM said in Emulationstation video previews on Raspberry Pi 5:
I did this but it won't run. My .sh file is in /home/pi/
pi@retropie:~ $ chmod a+x /home/pi/esdowngrade.sh pi@retropie:~ $ /home/pi/esdowngrade.sh /usr/bin/env: ‘bash\r’: No such file or directory /usr/bin/env: use -[v]S to pass options in shebang lines
any idea why
Not sure, something wrong with the 1st line, maybe strange character in the copy/paste?...
I added vlc-downgrade script to GIT for the time being, so you can try this:
wget https://raw.githubusercontent.com/RapidEdwin08/RetroPie-Setup/master/vlc-downgrade.sh -P ~/ chmod 755 ~/vlc-downgrade.sh ~/vlc-downgrade.sh
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.