Looking for testers for ES Video Preview on Raspberry Pi
-
@fieldofcows Wow, congratulations on making this happen - I don't know how I hadn't heard of this before.
Just took the bait and updated my (stable) RetroPie build with Kids-mode to the main EmulationStation branch, and this works perfect - thanks for making this all happen! Thanks @Nismo as well for the oldroom theme!
Some thoughts and questions:
@fieldofcows- Will you be merging some of your changes (screensaver, for instance) back to the main RetroPie/EmulationStation repository? Or what is the plan in general?
- The main things I miss from @zigurana's Kids Mode mode were the Favorites and the option to jump to a Random game in my library, given that I had too many this was always an interesting way to surprise me. I've seen people mentioning Favorites in this thread in the past, but I don't recall seeing a mention to jumping to a Random game, so here's a (humble) suggestion for you to consider, should you find it interesting.
- I tried the oldroom theme you ported and it looks great overall. A few drawbacks I found, given that I have a 1080p screen but used the latest version you shared, which is a 720p version (unsure if related), is that just like @fieldofcows I cannot see the scanlines. It just looks awfully fuzzy. Not a big deal, especially if that's the goal, but I thought you were going for actual scanlines. Will try a 1080p version in the future and see if it makes a difference.
- Other than that, it's a really cool theme. There are a few systems I have that are missing, but I'll wait patiently for them. :)
Thanks all, really. This is exactly what I was looking for, having attempted to dabble in the past with animated gifs with no success.
Have a great day!
-
@pjft You can change the scanlines effect or even disable it, the files are inside oldroom/art/ folder, simply rename the scanlines effect that you prefer to scanlines.png, or if you don't want scanlines rename it to no-scanlines.
I think i explained this before in other post, but I don't remember.
And yes, my last upload was 720p because it's the best can handle Rpi at this moment.
Regards.
-
@pjft said in Looking for testers for ES Video Preview on Raspberry Pi:
a (humble) suggestion for you to consider, should you find it interesting.
That is a good idea, and I've added it to the metadata design proposal doc that I have on the go. You can see (and comment on) the doc here.
-
@mattrixk @pjft , I have already splitted the go-to-random feature out into a separate PR for @fieldofcows' Screensaver branch.
So if he has time to look at it, it might hitch a ride with that feature. -
@Zigurana Great to hear!
I'll hope to get back to the Kids features in the future, but right now my kids are yet too young to play, so it's not as short term a priority as the other ones. :)
Cheers!
EDIT:
By the way, 60fps videos struggle to render properly on my RPi3 - maybe there's a lot going on, or it's VLC, or the USB drive doesn't have enough speed to cope with the throughput (weird), but I find that 60fps videos will have a lot of artifacts and fail to render correctly, whereas 30fps work like a charm.
Just a note. Anyone else has the same experience?
I've converted mine to 30fps via Handbrake.
-
@pjft AttractMode with MMAL can just about run 480p videos on the Pi. Someone will correct me if I'm wrong but the ES video integration doesn't use hardware acceleration and therefore high quality videos will be slow (if they work at all).
-
@robertybob thanks for the note.
Indeed, after a while of fiddling, I notice that my RPi3 starts to overheat quite quickly when watching these videos. It's weird though, as I can stream stuff from Kodi without it overheating, as well as playing files from the drive with higher resolution.
I wonder what makes it so that in emulationstation it's much more taxing on the CPU/GPU. Any ideas? Is it VLC?
I guess I'll have to install a heat sink.
-
@pjft it doesn't use the RPI GPU for hardware video decoding like Kodi, so will use a lot more CPU.
-
@BuZz Got it. Thanks for the explanation.
Edit: though a follow up question (which maybe @fieldofcows will be better equipped to answer given it's his implementation): is that an issue with the VLC/Video plugin we're using in ES (meaning that it could eventually be improved) or is it endemic to ES, meaning we're out of luck for the foreseeable future?
Cheers, thank you.
-
@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.
-
@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?
-
@fieldofcows yes. Don't need X. Jessie shipped libs probably don't have support. Newer ffmpeg needed etc.
-
@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.
-
@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?
-
@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!
-
@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.
-
@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!
-
@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.
-
@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?
-
They seem to be 640x480, 30 FPS, H.264 with AC-3 Stereo 44100Hz 160 KBs audio.
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.