RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Video preview bug in several themes - freezes after 10 seconds

    Scheduled Pinned Locked Moved Projects and Themes
    videopreviewbugthemes
    33 Posts 4 Posters 7.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.
    • SteffenBraunerS
      SteffenBrauner
      last edited by SteffenBrauner

      I now see something similar in this thread:
      Topic link

      Looks like it might be tied to the same problem... but strange if it is also connected to power saving?

      pjftP 1 Reply Last reply Reply Quote 0
      • pjftP
        pjft @SteffenBrauner
        last edited by

        @steffenbrauner two separate things.

        VLC halting is likely related to power savings.

        Lack of Mame previews is related to what I mentioned. Re-encoding those videos will help.

        SteffenBraunerS 1 Reply Last reply Reply Quote 0
        • SteffenBraunerS
          SteffenBrauner @pjft
          last edited by

          @pjft Okay, thanks.

          Seems like the easy thing to do, is to just keep the OMX Player off (so I can see video previews in MAME) and disable Power Saver (so the video previews in MAME doesn't freeze). Then everything works in all themes.

          Is there a problem of some sort in having the OMX Player off?

          pjftP 1 Reply Last reply Reply Quote 0
          • pjftP
            pjft @SteffenBrauner
            last edited by

            @steffenbrauner Not at all. You can disable Power Savings and keep OMX off - if videos work well for you as they are now, it's fine. VLC (which is what you're using with OMX off) is a bit more CPU-heavy as it's not hardware accelerated, which may lead to overheating after extended video playback. It will also stutter on higher resolution videos.

            But if it works for you, definitely no concerns with it :)

            SteffenBraunerS 1 Reply Last reply Reply Quote 1
            • SteffenBraunerS
              SteffenBrauner @pjft
              last edited by

              @pjft Thanks! You not only helped, but made me understand a bit more about how it all works :-)

              pjftP 1 Reply Last reply Reply Quote 1
              • pjftP
                pjft @SteffenBrauner
                last edited by

                @steffenbrauner glad to help. If you choose to stay with VLC,I recommend encoding the videos to a resolution not higher than 480x360@30fps. Those were the settings that worked best for me prior to the introduction of OMX Player.

                Still, if you're using the video screensaver, you'll then either want to force it to use VLC (there's an option) or re-encode the arcade videos as it defaults to OMX player because of performance at full screen.

                1 Reply Last reply Reply Quote 0
                • HexH
                  Hex
                  last edited by

                  @pjft @SteffenBrauner On Linux with VLC, ES runs normally on Default and enhanced.

                  @pjft I recently installed drivers for my graphics card. What the hell is this ?? Doesn't ES restrict frame rate to 60fps? The CPU usage is also through the roof.

                  0_1509071700097_Screenshot from 2017-10-26 19-34-38.png t

                  Sent from 20,000 leagues under the sea.

                  Powersaver Emulation station : https://github.com/hex007/EmulationStation
                  ES dev script : https://github.com/hex007/es-dev/blob/master/es-tests.sh

                  pjftP 1 Reply Last reply Reply Quote 0
                  • pjftP
                    pjft @Hex
                    last edited by

                    @hex I think it was related to this:

                    https://github.com/RetroPie/EmulationStation/pull/267

                    But it seems it's just been fixed by

                    https://github.com/RetroPie/EmulationStation/pull/270

                    :)

                    1 Reply Last reply Reply Quote 1
                    • HexH
                      Hex
                      last edited by Hex

                      @pjft Not possible as the source has not been updated after merge of Kiosk mode PR.

                      Just to make sure I updated to master as of today (PR#270 merged) and the FPS increased :| I am sure that 60fps hard limit is not implemented.

                      0_1509126626900_Screenshot from 2017-10-27 10-48-58.png

                      Sent from 20,000 leagues under the sea.

                      Powersaver Emulation station : https://github.com/hex007/EmulationStation
                      ES dev script : https://github.com/hex007/es-dev/blob/master/es-tests.sh

                      1 Reply Last reply Reply Quote 0
                      • pjftP
                        pjft
                        last edited by

                        It might be the case, I certainly don't have a lot of experience with that aspect. Maybe @jdrassa or @Zigurana would have some perspective on that?

                        I only run this on the pi, and on the pi it usually stays around 45fps or so, so I suppose I never really noticed that. :l

                        1 Reply Last reply Reply Quote 0
                        • pjftP
                          pjft
                          last edited by

                          @Hex coming back to this, I can indeed replicate this with Power Saver Enhanced and VLC Player on the Pi. The video stops, and the moment I press any button it continues. The audio keeps going, the the video does indeed stop.

                          I'm not sure I can replicate it 100%, all the time, but it is there. Might be worth adding some logs to when the Power Savings are kicking in and confirming that they are kicking in even though VLC is playing.

                          1 Reply Last reply Reply Quote 0
                          • HexH
                            Hex
                            last edited by

                            @pjft I specifically added a PR to address this. It disables PS if vlc is playing a video. Can you check this file and let me know if my logic is not correct?

                            https://github.com/RetroPie/EmulationStation/blob/master/es-core/src/components/VideoVlcComponent.cpp#L335

                            Sent from 20,000 leagues under the sea.

                            Powersaver Emulation station : https://github.com/hex007/EmulationStation
                            ES dev script : https://github.com/hex007/es-dev/blob/master/es-tests.sh

                            pjftP 1 Reply Last reply Reply Quote 1
                            • pjftP
                              pjft @Hex
                              last edited by

                              @hex No, you're right. I remember that, and indeed we had tested it out and it worked well.

                              This may be related to descriptions animating, and that may be what leads @SteffenBrauner to connect it to themes (!) out of all things.

                              I added some logs to powerSaver::setState() and this is what I get, on VLC:

                              • If I enter a gamelist, and a video shows up, I get:

                              lvl0: Set State: 1
                              lvl0: Set State: 0

                              which is what we expect.

                              But, then, if I scroll to a different game (up, or down), I get:

                              lvl0: Set State: 0
                              lvl0: Set State: 1
                              lvl0: Set State: 0
                              lvl0: Set State: 1

                              which suggests that there are other UI components also setting the PS state, and then affecting the outcome here.

                              I'm using the ComicBook theme, which has descriptions in it.

                              I'm not sure if it's related or not, because - as I said - I cannot replicate it consistently, but I'm happy to try out more and get a video of it if it helps. Hopefully the logs I just sent will also help?

                              Thanks!

                              1 Reply Last reply Reply Quote 0
                              • HexH
                                Hex
                                last edited by

                                Scrolling should have no bearing on PS.

                                If each of your game has a video and VLC has to shutown and restart, there is a possibility of that happening. Can you log PS changes in VideoComponent only rather than globally? Let me know the o/p

                                Sent from 20,000 leagues under the sea.

                                Powersaver Emulation station : https://github.com/hex007/EmulationStation
                                ES dev script : https://github.com/hex007/es-dev/blob/master/es-tests.sh

                                1 Reply Last reply Reply Quote 0
                                • pjftP
                                  pjft
                                  last edited by

                                  I just re-read the code.

                                  I'm pretty sure it's caused by this command in IList.h, which runs when we stop scrolling, and will override VLC.

                                  PowerSaver::setState(velocity == 0);
                                  

                                  It's not a big deal - probably we could do "velocity == 0 && <is using VLC> && <is in gamelistView>" and it could fix it.

                                  Or we could centralize the status in PowerSaver so that different components don't need to know what else is happening.

                                  Either way, I think that is it. :)

                                  pjftP 1 Reply Last reply Reply Quote 2
                                  • pjftP
                                    pjft @pjft
                                    last edited by

                                    @hex sorry - as you probably already figured out I messed up the fake code conditions. I think it should likely be

                                    Velocity == 0 and (NOT using VLC OR NOT in gamelist view)

                                    But you know how PS works better than I do, so definitely don't trust me on this and check if it makes sense. :)

                                    1 Reply Last reply Reply Quote 0
                                    • 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.