Emulationstation video previews on Raspberry Pi 5
-
@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
-
@RapidEdwin08 said in Emulationstation video previews on Raspberry Pi 5:
~/vlc-downgrade.sh
It works !!! thanks !!!
-
@DTEAM said in Emulationstation video previews on Raspberry Pi 5:
/usr/bin/env: ‘bash\r’: No such file or directory
A file newline issue sneaked in (Windows
\r\n
, Linux\n
). Most likely happened by transferring the script to the Pi.To be on the safe side next time:
dos2unix <scriptfile>
(sudo apt install dos2unix
) is your friend. -
@Lolonois said in Emulationstation video previews on Raspberry Pi 5:
I detected another issue, when PowerSaving is set to INSTANT ...
Simply: Don't! Do not set Power Saver Mode to INSTANT in Main Menu -> Other Settings to instant when you have VideoGamelists or use the Random VIdeo Screensaver. It will make your videos hang as I outlined in my cited post.
-
-
-
@RapidEdwin08 said in Emulationstation video previews on Raspberry Pi 5:
wget https://raw.githubusercontent.com/RapidEdwin08/RetroPie-Setup/master/vlc-downgrade.sh -P ~/
chmod 755 ~/vlc-downgrade.sh
~/vlc-downgrade.shHi @RapidEdwin08 ,
I'm trying to go back to the old VLC version but it doesn't' work. It works in the past, but now it stop working. you can see my log hereIt stop to work when I tried to install the older version of Dolphin.
Any Idea to fix that?
NEW EDIT: Solve with this - https://forums.linuxmint.com/viewtopic.php?t=373298
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.