Looking for testers for ES Video Preview on Raspberry Pi
-
@pjft @fieldofcows Having trouble getting the watch command to work (still figuring out why), so I'm manually running it every few seconds with bash, but here's some initial reports:
With my open case and fan on, my Pi was idling at the carousel view with:
CPU Speed: 600 MHz - CPU Temp: 43.4°C - GPU Temp: 42.9'CAs soon as I started playing a video, temps jumped approx 10°C. After about 3 minutes on a video, they were at:
CPU Speed: 1200 MHz - CPU Temp: 62.3°C - GPU Temp: 62.3'C
Max I saw, after about 7 minutes of letting a video loop, was:
CPU Speed: 1200 MHz - CPU Temp: 63.3°C - GPU Temp: 63.4'CIt seemed to stabilize at these numbers. Specs for this video ('88 games): 640x480, 59 frames per second, 942kbps data rate, 1036kbps total bit rate, 94kbps audio bit rate, 2 channels, 48kHz, 38seconds in length.
I switched to another video, one that has always appeared graphically glitchy (I assumed it was a bad video, but it looks to be decoding issue, since it plays fine on my PC), and let it run for another 5-7 minutes. Max temps I saw there:
CPU Speed: 1200 MHz - CPU Temp: 65.5°C - GPU Temp: 65.0'C
I also noticed additional graphical glitches that were inconsistent with each loop of the video, so there's definitely something going on.
Specs on that particular video (19xx): 640x480, 59 frames per second, 1646kbps data rate, 1802kbps total bitrate, 156kbps audio bit rate, 2 channels, 48kHz, 35seconds in length.I have not yet had a chance to put in the videos that @pjft linked me to earlier or reconfigure my gamelists to show them, but wanted to get some initial data out there. I'll pull my fan and close up the case and repeat these tests.
-
@MWGemini thanks. Yes, sorry - in my last tests I just put together a small self-invoking script of
<Call temperature script>
<sleep 5 seconds>
<Repeat>Thanks for testing. Yes, 60fps videos I found that they end up glitching at different stages in different loops. Sometimes they are not very noticeable but glad you confirmed that.
These are good results with the fan - it took me a bit to understand that you had the fan on - but great nonetheless. I'll be curious with the new build in regards to:
- potentially better temperatures;
- 60fps video performance becoming non-glitchy
Thanks!
-
My Pi idles in the low 50s with the screensaver off, but not doing anything. It's in the low to mid 40s with the screensaver on (this is with the fan on).
With the fan removed and the case closed up a bit, those numbers become low 60s (i.e. 61/62) and 49/50, respectively. These numbers are rough, since I was waiting a while for a steady state to be achieved (or fairly close to it- I only waited about 10-15 minutes max for each trial, often more like 5).
After another ~3 minutes on '88 games (the "good" video), max temps I saw were:
CPU Speed: 1200 MHz - CPU Temp: 75.7°C - GPU Temp: 75.8'C
I also noticed a few graphical glitches (black sections of the video on some frames, or the entire video darkened for a few frames). At 5 minutes in, I saw the temperatur warning, briefly, and had the following measurements:
CPU Speed: 1200 MHz - CPU Temp: 79.5°C - GPU Temp: 80.1'CI switched over the the "bad" video (19xx) for another minute, and temps rose up to:
CPU Speed: 1200 MHz - CPU Temp: 81.1°C - GPU Temp: 81.1'C
At this point, the temperature warning indicator was steadily on, so I opened up the case and reconnected the fan.Summary: Closed case and no active cooling increases temperatures by about 20 °C. Difference between idling with screensaver on and screensaver off is about 10°C. Difference between idling with screensaver off and playing a video is about 10-20°C.
Based on my quick tests, I don't recommend that people keep their Pi in a tightly confined case with no ventilation or cooling. Mine was in a cardboard box about half the size of a shoe box (Amazon size A1, actually).
-
@MWGemini Thank you - that's great (even if unfortunate) to hear. I appreciate you taking the time to perform these thorough tests.
I'm now super excited about the same tests with the new build!
-
@pjft No problem, happy to help! All the credit goes to @fieldofcows, though, as he did all the hard work to write the software to make it work. I'm just trying to make his job a little easier by helping to test and debug it. If/when he posts an update, I'll repeat these tests and post new numbers.
Side note: while playing a SNES game, my temps were the same as idling in a menu (maybe a degree or two higher- ~53-54). While playing an N64 game, my temps were about 58. Those numbers are with open case and fan on, by the way.
-
@MWGemini the only time I had temperature problems playing any games was with Hat Trick Hero 93/Euro Champ 92 on MAME. Other than that, no other game or system gives me trouble - psx, n64, arcade, dreamcast all run well.
Thanks for checking!
-
@pjft No problem.
I also forgot to mention, and this is mostly for @fieldofcows : I performed these tests using your latest release (v4 I believe) of the WSOD fix.
-
That took a bit longer than I hoped...
https://github.com/fieldofcows/EmulationStation/releases/tag/v0.3-RPi-5
Raspberry Pi 3 again (maybe 2 - I haven't tried it). This build launches an omxplayer process which then renders an overlay directly in the area of screen designated for video. So, we now get GPU acceleration.
It's not yet ready for general consumption. I haven't done much testing yet and there are at least these issues:
- The video is always on top. Nothing at present can be rendered over the video. This includes marquees in pixel video theme and the scanlines in oldroom
- The video is rendered on top of GUI menus
I'd appreciate some temperature numbers compared with the previous libvlc renderer from anyone that's willing to try, @MWGemini @pjft :D
-
@fieldofcows I'm on it. Will post numbers shortly.
-
@MWGemini Great, thanks. It makes a big difference to the temperature on mine.
-
@fieldofcows Thanks! As I mentioned earlier, much to my chagrin I'm traveling for work this week so I have no access to my RPi :(
I'll definitely be on it during the weekend. So you found omxplayer to perform better than libvlc so far? That's great to hear. Looking forward to hearing about @MWGemini 's tests, in particular not only about temperature (though that's something I'm definitely interested in!), but also whether it can render those 640x480 60fps movies with no glitches. :)
-
@fieldofcows First series of tests repeats my first series of tests earlier (see post 115). Open case, fan on.
Idle temperatures seem unaffected, as I would expect.
When trying to play videos, no video is displayed. I quit ES using F4, and I see some comments printed to the console- "have a nice day ;)". Number of messages is roughly on par with how many videos I tried to watch (but I didn't keep a close count, so I might be wrong).
Perhaps I don't have omxplayer installed? Did I miss a step?
-
@MWGemini omxplayer is installed because it's that that says 'have a nice day'. Maybe it doesn't support the format you are using? What theme are you using?
Try playing a video from the terminal and see if it works.
omxplayer ~/Videos/myvideo.mka
-
@fieldofcows My theme is a modified version of tronkyfran, which I haven't yet built video support into, but still plays the videos just fine.
I was able to successfully play videos (both the '88 games and 19xx I referenced earlier) from the command line with omxplayer.
-
As an added bit of info, I've been letting the 19xx video (the one that glitched previously) loop for the last 7 minutes and counting, and it's not showing any graphical glitches, and my temps are in the low to mid 40s (with fan on and case open). This is on par with my ES + screensaver temps, and lower than my ES idle (no screensaver) temps.
-
@MWGemini that's the one that plateaued around 63 in the previous tests, same conditions, correct? Those are promising results.
What do you mean by "haven't built video support in the theme yet it plays the videos" though?
-
@pjft That's the one that helped push it over 80 with a closed case and no fan, and was in the low to mid 60s with case open and fan on. So yes, early results look promising.
I'm not super familiar with how the themes load videos as far as the tags go, but the tronkyfran theme wasn't specifically built to support videos. When I scraped some videos for my arcade games (using the UXS tool), they just happened to be able to play, so I haven't spent much time delving into that. I know that the OldRoom theme that @Nismo created is looking for videos with a certain tag, and I didn't scrape my videos in a way that works with his theme. I figure the fix is to either edit my theme to explicitly support videos, or to re-scrape my videos (or edit the gamelists) so that the OldRoom theme can find them. So far, I haven't had to do that. If the console output is correct, then omxplayer is still being called, it just didn't display within the theme. Could be a theme issue, could be a bug in the code. I'll see what I can do to debug the issue...
-
@MWGemini Apologies, but I'm not fully following. I'm tired, though, so that may play a part in it.
To the best of my understanding, the videos themselves don't need to be in any way different.
The gamelist.xml file, though, needs to have a <video> tag with the path to the video. For example, for 19xx I have:
<game>
<path>./19xx.zip</path>
<name>19XX: The War Against Destiny (USA 951207)</name>
<desc>North American & European release. Game developed in Japan. For more information about the game itself, please see the original Japanese release entry; "19XX - The War Against Destiny [Green Board]".</desc>
<image>./images/19xx.png</image>
<thumbnail>
</thumbnail>
<rating>0.858</rating>
<releasedate>1996</releasedate>
<developer>Capcom</developer>
<publisher>
</publisher>
<genre>Shooter / Flying Vertical</genre>
<players>2</players>
<favorite>true</favorite>
<kidgame>false</kidgame>
<hidden>false</hidden>
<playcount>1</playcount>
<lastplayed>20161021T225800</lastplayed>
<video>/home/pi/RetroPie/videos/arcade/19xx.mp4</video>
<marquee>/home/pi/RetroPie/marquees/arcade/19xx.png</marquee>
</game>That path should be the path to your video. In my case, I have it in a separate folder instead of under RetroPie/roms, so you may need to change that as needed.
Second, the theme itself needs to have a Video View defined, and a video element there.
I'd recommend downloading Carbon here:
https://github.com/jrassa/es-theme-carbon/tree/video-view
and copying it to your /etc/emulationstation/themes folder (under a folder with the name you want, for instance carbon-video). OldRoom is also a good alternative, Nismo posted some links to it earlier.
If you just want to test something, create a single folder for a system you have no roms for, add there a dummy file with the proper extension (.zip, for instance), and then create a simple gamelist.xml file with
<?xml version="1.0" encoding="utf-8"?>
<gameList>
<game>
<path>./19xx.zip</path>
<name>19XX: The War Against Destiny (USA 951207)</name>
<desc>North American & European release. Game developed in Japan. For more information about the game itself, please see the original Japanese release entry; "19XX - The War Against Destiny [Green Board]".</desc>
<image>./images/19xx.png</image>
<thumbnail>
</thumbnail>
<rating>0.858</rating>
<releasedate>1996</releasedate>
<developer>Capcom</developer>
<publisher>
</publisher>
<genre>Shooter / Flying Vertical</genre>
<players>2</players>
<favorite>true</favorite>
<kidgame>false</kidgame>
<hidden>false</hidden>
<playcount>1</playcount>
<lastplayed>20161021T225800</lastplayed>
<video>/home/pi/RetroPie/videos/arcade/19xx.mp4</video>
<marquee>/home/pi/RetroPie/marquees/arcade/19xx.png</marquee>
</game>
</gameList>Changing the path of the video and the path of the rom to point to your dummy rom file.
That should cause it to load the video view in the theme.
As it's not clear to me what you had done on your end, I hope this helps. And if not, maybe it helps others. :)
The fact that you're getting the omxplayer messages leads me to believe that it's being called, so you may already be getting the video view for those games. Weird.
-
@fieldofcows What video formats have you tried on your end? Could you try with a mp4 file, like one of the ones I linked to earlier? Just to confirm that it's not a video format thing?
-
@pjft I've got the <video> tags in my gamelist file, but for some reason the OldRoom theme doesn't display them.
At any rate, with a little fiddling of switching themes around, I've got my videos playing again.@fieldofcows I repeated the tests I posted earlier, and with the case open and fan off, my temps are actually a bit lower than they were previously while idling on the carousel view, although the ambient temps are a little lower now.
I pulled the fan and closed up the case and let the videos continue to cycle. Currently, the highest temps I've seen are in the low 50s. In other words, the temperature change using the new code is barely noticeable from when the Pi is just idling and not playing a video. I have not seen any graphical glitches of any kind for the videos (videos are playing better now than they were before). Edit: max temps after 10+ minutes of video playing are with fan off and closed case are now hitting about 60.
I did notice some corrupted text characters in the menus while switching themes around (an issue I saw during v2 of the WSOD fix, I think). Also, the screensaver does not disable the video anymore. For stress-testing purposes, that's okay, as I can leave the video running indefinitely, but just wanted to mention it. So, a few bugs to work out perhaps, but the broad strokes of this fix definitely appear to be a solid fix.
If you have other tests you'd like me to run, just let me know.
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.