RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    Looking for log/clue why ES video screensaver may get stuck w/black screen

    Scheduled Pinned Locked Moved Help and Support
    black screenemulationstatones bugsscreensavervideos
    20 Posts 2 Posters 1.4k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • roslofR
      roslof @mitu
      last edited by roslof

      @mitu here you go:

      https://drive.google.com/drive/folders/1vsUqwdCPDRwgF-t-5gO6OY4Kfmh0EYXo

      You'll find two videos: A YUV 4:4:4 and a converted YUV 4:2:0.

      Video is from a C64 game named "Booty". Figured we could use an immature giggle right around now. EDIT: These two files were both 4:2:0... Added Dig Dug video files instead.

      1 Reply Last reply Reply Quote 0
      • mituM
        mitu Global Moderator
        last edited by

        Hm, they both look as YUV 4:2:0 here:

        ...
        Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Booty (Europe) (GOOD for ES - CES YUV 4-2-0).mp4':
          Metadata:
            major_brand     : mp42
            minor_version   : 512
            compatible_brands: isomiso2avc1mp41
            creation_time   : 2020-09-25T12:57:11.000000Z
            encoder         : HandBrake 1.3.3 2020061300
          Duration: 00:00:37.06, start: 0.000000, bitrate: 210 kb/s
            Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p (tv, smpte170m/smpte170m/bt709), 320x240 [SAR 1:1 DAR 4:3], 44 kb/s, 24.96 fps, 24.92 tbr, 90k tbn, 180k tbc (default)
        ...
        Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Booty (Europe) (BAD for ES - CES YUV 4-4-4.mp4':
          Metadata:
            major_brand     : isom
            minor_version   : 1
            compatible_brands: isom
            creation_time   : 2019-08-21T18:44:41.000000Z
          Duration: 00:00:37.04, start: 0.001000, bitrate: 347 kb/s
            Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 320x240, 218 kb/s, 24.27 fps, 25 tbr, 90k tbn, 50 tbc (default)
        

        They both also work fine with omxplayer, so I think the issue is not the codec. VLC stutters at the beginning of the 'bad' video, so I wonder if it discards some video frames at the beginning of the video and that gets the video player stuck. I'll have to test in EmulationStation to see how it behaves.

        roslofR 1 Reply Last reply Reply Quote 0
        • roslofR
          roslof @mitu
          last edited by roslof

          @mitu said in Looking for log/clue why ES video screensaver may get stuck w/black screen:

          I'll have to test in EmulationStation to see how it behaves.

          Ugh. I hate to be the spreader of bad information, but looks like I did.

          First off, I uploaded two (2) new videos: Dug Dug (Europe) and confirmed one is definitely 444 and the other was fixed.

          The 444 video renders as I described in ES (libvlc)...
          ...but I'm more than embarrassed to see that the 444 video plays in ES with omxplayer... Major egg-on-face here. I've been going with what I learned about this format in the past, and clearly it is working now. Please don't tell me it was fixed or a work-around was found more than a year ago...

          On the bright side, after converting the 444 videos to 420, my black-screen issues (libvlc/screensaver) have gone away after several hours of run.

          mituM 1 Reply Last reply Reply Quote 1
          • mituM
            mitu Global Moderator @roslof
            last edited by

            @roslof said in Looking for log/clue why ES video screensaver may get stuck w/black screen:

            First off, I uploaded two (2) new videos: Dug Dug (Europe) and confirmed one is definitely 444 and the other was fixed.

            Yes, the Dig Dug bad sample fits the bill. I'll try to see it how it behaves in ES.
            One more question - what's the version of the vlc package you have installed ?

            roslofR 1 Reply Last reply Reply Quote 0
            • roslofR
              roslof @mitu
              last edited by

              @mitu said in Looking for log/clue why ES video screensaver may get stuck w/black screen:

              One more question - what's the version of the vlc package you have installed ?

              revision 3.0.10-0-g7f145afa84

              mituM 1 Reply Last reply Reply Quote 0
              • mituM
                mitu Global Moderator @roslof
                last edited by

                @roslof said in Looking for log/clue why ES video screensaver may get stuck w/black screen:

                revision 3.0.10-0-g7f145afa84

                I'm testing with the lastest version available (3.0.11-0+deb10u1+rpt3 at this time). Adding the video to one of the games doesn't have any issues (just a blank video), I'll have to try the screensaver behavior.

                I know the latest version fixes an issue with certain videos locking VLC and EmulationStation (reported a while back after RetroPie 4.6 was released).

                1 Reply Last reply Reply Quote 1
                • mituM
                  mitu Global Moderator
                  last edited by

                  I gave the screensaver a test and included the bad Dig Dug video (yuv444p), but it didn't do anything special in EmulationStation and it didn't lock it. It showed a black screen and then just went over to the next video. During a 10 hour run, it was randomly picked about 40 times.
                  You can try updating the vlc package and re-try testing with this particular problematic video. I've left a command running in the background to check which video is played by checking every 30s (the screensaver duration) and log it to a videos.txt file

                  while true; do lsof -p `pidof emulationstation`  | grep 'mp4$' | tee -a videos.txt ; sleep 30; done
                  
                  roslofR 1 Reply Last reply Reply Quote 0
                  • roslofR
                    roslof @mitu
                    last edited by

                    @mitu Nice! I went ahead and upgraded yesterday, but also replaced the 444s and I've been stable. I still have a microSD with the 444 videos and vlc 10. I'll give it a run and confirm whether or not it was an issue with 10, fixed in 11.

                    roslofR 1 Reply Last reply Reply Quote 0
                    • roslofR
                      roslof @roslof
                      last edited by roslof

                      @mitu using 3.0.10 and ~1,000 c64 videos, I've had five (5) black screen freezes so far. My old friend Booty (Europe).mp4 came up three times (not 4:4:4). Two other videos also failed. I am going to update vlc and run it again.

                      I confirmed in the log that the three (3) videos never rendered, but broke on the first run.

                      The video.txt dumps and videos are here.

                      I ZIPped the videos, in case Google manipulates .mp4s upon upload.

                      I'm updating vlc to 3.0.11 now and will run again. Hopefully the three offending videos will pass this time.

                      Another interesting thing: Note in the details of each test the number of times "Little Computer People" shows up. Statistically not close to random, since it shows up overwhelmingly more often than the other videos. This did not surprise me, because after watching my screensaver for a couple of years, I've long suspected I was seeing a particular video more often than any other. An Amiga video with terrible music. ;-) Not the end of the world, but noteworthy.

                      roslofR 1 Reply Last reply Reply Quote 0
                      • roslofR
                        roslof @roslof
                        last edited by roslof

                        I'm now testing 3.0.11, using the same videos and ES already played the "Booty" video successfully. This was never successful in today's tests with 3.0.10. It's still early in the run, but I'm feeling confident that latest VLC handles the black screen issue. Will let it soak...

                        EDIT:
                        Test is complete. All three videos properly rendered with a normal run of the video screensaver. Some videos were randomly picked more than once.. 4:4:4: files appeared to render black as expected and need to be converted, but they do not freeze the vlc player.

                        vlc 3.0.11 specifically seems to solve all my video/freeze problems.

                        The only anomaly now is ES's random video selection. The "Little Computer People" video was chosen WAY more often than anything else in every test. Nothing noteworthy about the video. Suspect ES's random number generator or its implementation is a little funky.

                        But I'm 100% stable now.
                        Thank you @mitu

                        mituM 1 Reply Last reply Reply Quote 1
                        • mituM
                          mitu Global Moderator @roslof
                          last edited by

                          @roslof Thanks for the tests. The random selection might have an issue, I remember looking at it some time ago and nothing wrong popped up.

                          roslofR 1 Reply Last reply Reply Quote 1
                          • roslofR
                            roslof @mitu
                            last edited by roslof

                            Re: Looking for log/clue why ES video screensaver may get stuck w/black screen

                            Closing the thread on this. There is nothing wrong with the randomizer. While there was exactly one (1) "Little Computer People" video, there were ~100 variations of the game in the XML referencing the same video. So it's probably by design. It would seem that each game listed in XML with a valid video has the potential to play. Like throwing 100 tickets into a casino raffle drum... You're more likely to win.

                            Ideally each video found should act as 1 potential. Not a big problem, but since games with multiple variants that reference the same video are more likely to play, making things seem less random than they truly are.

                            Mystery solved after spending way too much time staring at random videos.

                            1 Reply Last reply Reply Quote 1
                            • First post
                              Last post

                            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.