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.6k 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.
    • HexH
      Hex
      last edited by

      Yes that is the file. Try changing this line and check again with PS:Default

      <bool name="VideoOmxPlayer" value="false" />
      
      to 
      
      <bool name="VideoOmxPlayer" value="true" />
      

      I am online now for half an hour. please let me know if this solves it asap.

      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 SteffenBraunerS 2 Replies Last reply Reply Quote 0
      • pjftP
        pjft @Hex
        last edited by

        @hex He only set this up recently, so maybe that's why he's only running into this now.

        In regards to setting OMXPlayer as true, that will certainly solve that, but ideally it would still work on VLC as other platforms (Linux, etc) use that player instead.

        @SteffenBrauner you can change that option in the ES menu > Other Settings > USE OMX PLAYER (HW ACCELERATED).

        I'd check if your arcade videos will play then, though, as there's at least one video source that encodes them using a codec that OMX Player doesn't support (4:4:4 predictive). You can re-encode them, though.

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

          @hex I disabled the OMXPlayer on purpose, because when it's enabled there are no video previews in MAME at all.

          It was a solution I found (maybe in this forum, can't remember) when I Googled the problem.

          I have just tried to turn it on/enable again, and sure thing, there are no previews now.

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