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

    Looking for testers for ES Video Preview on Raspberry Pi

    Scheduled Pinned Locked Moved Ideas and Development
    emulationstatiovideotheme
    171 Posts 17 Posters 90.3k 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.
    • fieldofcowsF
      fieldofcows @pjft
      last edited by

      @pjft It's something I've thought about in the past. There is no reason why we shouldn't be able to use the gpu for video rendering and vlc does support it. However I don't know if it's available for use outside X.

      When I tried it many months ago with vlc and sdl it didn't seem to make any difference to the performance so I was either setting it up incorrectly or it wasn't supported. I'll try it again.

      I guess for it to work we would have to let vlc render directly to the screen rather than through an ogl texture. This would mean we couldn't support alpha blending on top of videos when acceleration is used.

      Does kodi use the hardware codec when X is not installed? If so then there is no reason why we can't use it.

      pjftP BuZzB N 3 Replies Last reply Reply Quote 1
      • pjftP
        pjft @fieldofcows
        last edited by

        @fieldofcows Thanks for the reply.

        I know that what I'm about to say will be technically incorrect, but since I don't know how exactly you measured "performance" (CPU usage, memory, cycles...?), I'll venture a comment here about it. :)

        It's not that the videos don't render full speed and with good performance currently, it's just that it seems to be somewhat more taxing on the CPU and causes it to heat up quite quickly - in fact, after a couple full 30 secs videos, it'll usually be showing the temperature warning.

        On VLC and X, I don't have X installed to the best of my knowledge - at least not explicitly, only if it's a dependency on VLC/Kodi. It works perfectly fine there (unsure if it's GPU accelerated, though). But, as I said, I usually stream and view local 720p and 1080p videos there with no problem whatsoever, so I guess that's my benchmark.

        I personally don't have a problem losing transparencies/alpha blending on top of the video, if we get better performance and lower temperatures.

        Could it be the rendering via a texture that's taxing the CPU so much?

        1 Reply Last reply Reply Quote 0
        • BuZzB
          BuZz administrators @fieldofcows
          last edited by

          @fieldofcows yes. Don't need X. Jessie shipped libs probably don't have support. Newer ffmpeg needed etc.

          To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

          1 Reply Last reply Reply Quote 1
          • N
            Nismo @fieldofcows
            last edited by Nismo

            @fieldofcows You know I still don't have a rpi, but maybe, and I thinking... maybe you didn't notice performance difference, but maybe.. you didn't pay attention to temperatures...

            Maybe, (yes again maybe) rpi can handle videos very well, and you didn't see any difference, but with hardware support it's the same performance but better temps.

            It's just my humble opinion since I can't test it.

            If it's not way to solve this, maybe (yes again maybe) would be good to include on wiki that for make use of video preview you need a well cooler rpi....

            Sorry for my poor english, i hope everybody can understand me.

            Regards.

            M fieldofcowsF 2 Replies Last reply Reply Quote 1
            • M
              MWGemini @Nismo
              last edited by

              @Nismo @fieldofcows I've been stress-testing the WSOD fix recently, and have video previews for some of my games. I've never had the temperature warning, but I do also have a fairly well-cooled Pi (https://www.amazon.com/gp/product/B00M859PA6). I bought that case because I intend to eventually attempt overclocking the Pi, but have not done so yet.

              @pjft Are you seeing this with short videos, or only after playing videos for an extended period of time? I.e. should I be able to replicate it by letting a short video loop, or should I go find a longer video and let that loop? Also, what sort of case and cooling do you have on your Pi?

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

                @MWGemini I don't have any sort of cooling, I have a case just like @GtBFilms' one. That being said, I have no heatsink applied yet - I bought a separate case for overclocking (actually similar-ish to yours), with a fan and heatsinks to apply but since I hadn't really had the need to (everything I was doing was within reasonable temperatures), I never did it.

                I may eventually do it, though the question does stand: if we can get videos performing well and within a good temperature range (even higher quality ones) in RPi3 without any cooling, is there anything we can do in ES or the current implementation to ease the burden on the RPi?

                In my case, it really does it after 20-30 seconds into the video - a 30fps 480p mp4 - or, at most, when it loops and repeats (the videos are 30-40 secs long). The moment I stop playback (i.e. exit to the top systems menu) the temperature will start to go down. If you're not seeing it yet, you likely won't see it in your setup - which is probably for the best :)

                A question, while you're at it: does your fan make a lot of noise? I really appreciate the RPi at the moment as it's silent.

                Anyway, above all I'm extremely thankful that this is available to us even in this form. It's improved my RetroPie setup tremendously, so thank you all - in particular @fieldofcows - for the great work.

                EDIT: Apologies. Even though I do not use the OldRoom theme as it is missing a few critical systems for me, @Nismo 's Powershell script to add the video metadata was super. Thank you Nismo as well!

                M 1 Reply Last reply Reply Quote 0
                • M
                  MWGemini @pjft
                  last edited by

                  @pjft I haven't installed heatsinks on mine either, just that case with the fan. And no, it's not very loud (at least to me), but that's probably very subjective. I also have the whole thing inside a cardboard box at the moment along with all my wiring and accessories, since I haven't gotten around to designing and 3d-printing a case for it yet.

                  I'll try it without the fan plugged in later and see if I notice any temperature changes. Are you monitoring the temperature solely via the warning indicator, or via some other script/setting/interface/device/etc.?

                  I imagine it's highly unlikely, but it's possible that your Pi has a manufacturing defect of some sort. If you've got a second Pi, try swapping SD cards and testing on new hardware.

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

                    @MWGemini Thanks.

                    I check with scripts as well. It's not a big deal, as I don't spend that much time watching the full movies, but I thought it'd be best to look into it.

                    As I said, if this happened when watching movies elsewhere, I would certainly side on the possibility of being endemic to my RPi - whether defect, or just being the way it is. But given that it's only in ES, I suspect there may be something we can do here.

                    And if not, it's alright anyway :)

                    Have a great evening!

                    1 Reply Last reply Reply Quote 0
                    • fieldofcowsF
                      fieldofcows @Nismo
                      last edited by

                      @Nismo said in Looking for testers for ES Video Preview on Raspberry Pi:

                      maybe you didn't notice performance difference, but maybe.. you didn't pay attention to temperatures...

                      I must admit that I'm surprised that it's possible for software to cause hardware issues just by working the CPU hard. I would expect the CPU frequency to be throttled to the point where even if the cpu was in a tight loop it wouldn't cause the RPi to overheat.

                      Having said that, I have run my pi for many many hours testing the video preview and I've left it on all day with full-screen video screensaver running and never had an issue with temperature. I'm using a RPi3, not in a case with completely standard image and settings with no additional cooling. I've also never seen an over-temperature warning with my pi inside my mini arcade cabinet (with no fans). Maybe you need to ensure the videos are low resolution and easily decodable?

                      Maybe there is some optimisation that could be performed to reduce the CPU load - lowering the frame rate or resolution in software for example but I wouldn't have thought it necessary.

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

                        @fieldofcows I can certainly try to lower the resolution of the videos. Sounds fair, and doesn't shock me that it's suggested. What fps and resolution (and format, while you're at it) are your videos?

                        1 Reply Last reply Reply Quote 0
                        • fieldofcowsF
                          fieldofcows
                          last edited by

                          They seem to be 640x480, 30 FPS, H.264 with AC-3 Stereo 44100Hz 160 KBs audio.

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

                            @fieldofcows MP4, I assume?

                            Guess I'm stuck - same here. Happy to try the heatsink route then, or make it . I do live in a warm-ish apartment.

                            Just to clarify the CPU throttling on the Pi, it does happen after the thermal warning comes up. At that moment it does throttle it so it stops overheating, but at that stage the performance is slightly reduced (from reading, I think speed is throttled from 1200 to... 600?). So yes, it doesn't cause any hardware issues per se.

                            I'll try a bit more. I do have some videos at different resolutions, so maybe I'll just convert them all to a lower resolution, as soon as I find an optimal one. Have been watching a Dreamcast one for a while and no thermal warning. Temperature rose up to 74C or so, but seems to be stable.

                            Arcade ones at 320x240 also just take temp to 70C.

                            But yes, when I get to my HQ 640x480 videos, even at 30fps, it goes quickly to 75C, and after the 4th/5th loop as a texture (i.e. not full screen in the screensaver, but in the list view in Carbon or OldRoom themes), we're into 80C after 4-5 mins.

                            I'm using the following script to display temperature:

                            #!/bin/bash
                            cpuSpeed0=$(cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq)
                            cpuSpeed1=$(($cpuSpeed0/1000))

                            cpuTemp0=$(cat /sys/class/thermal/thermal_zone0/temp)
                            cpuTemp1=$(($cpuTemp0/1000))
                            cpuTemp2=$(($cpuTemp0/100))
                            cpuTempM=$(($cpuTemp2 % $cpuTemp1))

                            gpuTemp0=$(/opt/vc/bin/vcgencmd measure_temp)
                            gpuTemp0=${gpuTemp0//'/°}
                            gpuTemp0=${gpuTemp0//temp=/}

                            echo
                            echo CPU Speed: $cpuSpeed1" MHz" - CPU Temp: $cpuTemp1"."$cpuTempM"°C" - GPU Temp: $gpuTemp0

                            fieldofcowsF 1 Reply Last reply Reply Quote 0
                            • fieldofcowsF
                              fieldofcows @pjft
                              last edited by

                              @pjft said in Looking for testers for ES Video Preview on Raspberry Pi:

                              MP4, I assume?

                              No, actually MKV.

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

                                @fieldofcows mkv is a container, if I recall correctly. It's likely that you have a mp4 inside (I.e. the codec for the video track would be mpeg4).

                                I've been looking and most of these consoles will have a resolution of 240p for most games, so I'll resize the videos anyway.

                                Still, if any of you'd have the chance to check your temperature with 5 mins or so of rendering a 640x480 30fps video on your list view and seeing if it gets anywhere close to 80C, that would be interesting. I'd definitely take you up on the offer @MWGemini - just for benchmarking. :)

                                But I understand that it can be time consuming.

                                Cheers and thanks.

                                M BuZzB 2 Replies Last reply Reply Quote 0
                                • M
                                  MWGemini @pjft
                                  last edited by

                                  @pjft Can you link me to a video that is problematic for you? And are you running the script you pasted above via SSH? Also, can you link me to the case you have? How warm is the room the Pi is in? I'l try to replicate your conditions to the best of my ability and will report back.

                                  1 Reply Last reply Reply Quote 1
                                  • fieldofcowsF
                                    fieldofcows
                                    last edited by

                                    I ran mine for about 10 mins with the oldroom theme with one of the more busy videos and it reached about 75 degrees but went no higher. That's with no cooling and the RPi just sitting on my desk uncased. No temperature warning.

                                    @pjft It's not far off the temperature you are seeing but far enough away that I don't see the throttling.

                                    I'm just having a look at the code to see if there is any way I can cut down on CPU usage.

                                    1 Reply Last reply Reply Quote 0
                                    • BuZzB
                                      BuZz administrators @pjft
                                      last edited by BuZz

                                      @pjft said in Looking for testers for ES Video Preview on Raspberry Pi:

                                      @fieldofcows mkv is a container, if I recall correctly. It's likely that you have a mp4 inside (I.e. the codec for the video track would be mpeg4).

                                      mp4 (https://en.wikipedia.org/wiki/MPEG-4_Part_14) is also a container (unless you mean mpeg 4 part 10 for example). @fieldofcows said the codec was H.264 (https://en.wikipedia.org/wiki/H.264/MPEG-4_AVC)

                                      To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

                                      1 Reply Last reply Reply Quote 0
                                      • RionR
                                        Rion
                                        last edited by

                                        @pjft You could try to download some movies from emumovies and see if that helps.

                                        Been a member there for probably 7 years now and have never regretted signing up for a lifetime subscription.

                                        With there download tool that you link to your rom folders you can select the quality of the videos that you want to download.

                                        Or just try it out for free.

                                        FBNeo rom filtering
                                        Mame2003 Arcade Bezels
                                        Fba Arcade Bezels
                                        Fba NeoGeo Bezels

                                        N 1 Reply Last reply Reply Quote 1
                                        • N
                                          Nismo @Rion
                                          last edited by

                                          @Rion As far I know, if you are not member the maximum resolution for video you can download is 320x240.

                                          RionR 1 Reply Last reply Reply Quote 0
                                          • RionR
                                            Rion @Nismo
                                            last edited by

                                            @Nismo Oh thats a bummer. But then again 320×240 should put a lot less stress on the cpu.

                                            But then again it's definitely worth signing up for the great service they provide.

                                            FBNeo rom filtering
                                            Mame2003 Arcade Bezels
                                            Fba Arcade Bezels
                                            Fba NeoGeo Bezels

                                            N 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.