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.

Startup Splash Screen/Video Glitched and Corrupted

  • @acropolis40 long story, no need to brag about it

  • @substring Ok then thanks for the response guess i'l just have to try to find a work around.

  • I am having this same issue. As a temporary measure, I just removed the startup video while I wait for a fix.

  • @haphzrd Same but i'm still getting the same issue if its not a problem could you tell me exactly what files you deleted.

  • @acropolis40 @HapHzrd I setted system.splash.length=-1 in recalbox.conf
    That disabled video (against description) and no flicker at startup.

  • Any news from devs on this? I did try to make the duration that ES would play the video for longer but that didn't help. What you can do is replace the start up video with an mp4 that's just sound. Then you get a nice start up tune without fear of having a seizure and it's better than having nout at all.

  • Shouldn’t this be given some kind of priority so no one has an epileptic seizure? 😕

  • Staff

    @solo-ripper have you tried with the latest beta?

  • @paradadf There’s a beta for the XU4? I thought it was only for the pi b+. Thanks.

  • Tester

    I looked into that.

    At startup, on odroid, the S02splash script starts the splash mp4 video, in background process, using ffplay for x seconds (set to 20 by default. see recalbox.conf, system.splash.length parameter).
    Meantime the video is running, others startup scripts are running including the S31emulationstation script that display version logo (that is useless as the S02splash script do it after the splash video...) and start emulationstation without to wait the splash mp4 video finish. Making flickering effects.
    Said simpler, ffplay output is in conflict with fbv (via showlogo.sh) and emulationstation boot logo as it's displayed in the same time.

    Waiting a real fix you can do either of the following trick to display splash video properly:

    A simple trick is to not run the splash video in background so the other startup scripts will not run untill the video is finished. Boot process will be longer as nothing else will append the time the video is running.
    Open a ssh session on your recalbox then run :
    mount -o remount rw, /
    cd /etc/init.d
    nano S02splash

    Edit the file as shown bellow

    do_ffmpeg_start () {
        if ! `which ffplay >/dev/null` || [[ ! -f $video ]] ; then
        ffplay_opts="-hide_banner -autoexit"
        ffplay $ffplay_opts -vf "$ffplay_srt" "$video" >/dev/null 2>&1 &
        if [[ $videolength -gt -1 ]]; then
            while [[ ! -f "/tmp/emulationstation.ready" && ! -e "/var/run/kodi.msg" && $count -lt $(($videolength*10)) ]]; do
                sleep 0.1
        do_ffmpeg_stop $PID
        show_logo &  # <-- edit here by adding the "&"


    case "$1" in
            if [[ `cat /recalbox/recalbox.arch` == "rpi"* ]] ; then
                ( do_omx_start ; show_logo ) &
                ( wait_for_fb ; do_ffmpeg_start ) #&  # <-- edit here by removing or commenting the "&"

    Save and close it with STRG + X
    You can customize the length of the splash video by editing your /recalbox/share/system/recalbox.conf file, system.splash.length parameter. 12 seconds is a good choice.


    Another way is to modify S31emulationstation script to wait ffplay finished (or killed) before to start emulationstation. So the others sartup scripts will not wait video completion.
    Open an ssh session on your recalbox then run :
    mount -o remount rw, /
    cd /etc/init.d
    nano S31emulationstation

    Edit the file as shown bellow

    case "$1" in
    	enabled="`$systemsetting -command load -key system.es.atstartup`"
    	videoMode="`$systemsetting -command load -key system.es.videomode`"
    	if [ "$enabled" != "0" ];then
    		while [ "$(pidof ffplay)" ]; do	#<-- eddit here by adding this
    			sleep 0.1		#<-- eddit here by adding this
    		done				#<-- eddit here by adding this
    		/recalbox/scripts/showlogo.sh & # In case the logo has been removed, let's put it back again
    		echo $videoMode | grep -qE "(CEA|DMT) [0-9]{1,2} (HDMI|DVI)"
    		[ $? = "0" ] && tvservice -e "$videoMode"
    		settings_lang="`$systemsetting -command load -key system.language`"
    		recallog "starting emulationstation with lang = $settings_lang"
    		HOME=/recalbox/share/system LANG="${settings_lang}.UTF-8" SDL_VIDEO_GL_DRIVER=/usr/lib/libGLESv2.so SDL_VIDEO_EGL_DRIVER=/usr/lib/libGLESv2.so SDL_NOMOUSE=1 start-stop-daemon -S -q -m -p /var/run/emulationstation.pid  --exec /usr/bin/emulationstation &

    Save and close it with STRG + X


    In both case, you can still customize the length of the splash video by editing your /recalbox/share/system/recalbox.conf file, system.splash.length parameter.
    12 seconds is a good choice.

Want to support us ?





Looks like your connection to Recalbox Forum was lost, please wait while we try to reconnect.