In the past, I've booted LibreELEC on the Raspberry Pi Compute Module 4 in my "This is not a TV" Sharp NEC display.
According to LibreELEC's Pi 5 blog post, the new BCM2712 SoC decodes 4K and 1080p content just fine in H.264, and supports HEVC 4K60 hardware decoding.
And they've tested AV1, VC1, and VP9 at 1080p with no issue, though 4K in non-native formats does encounter frame dropping.
I wanted to put the Pi through some testing of my own, now that the Pi 5's been out for months, and LibreELEC version 12 is stable.
Note: If you're interested in whether the Pi 5 can handle a 4K desktop monitor for Pi OS or Ubuntu, the answer to that is definitely yes. It is a much smoother experience than Pi 4, but if you want to do any media playback or gaming within a desktop environment... it's not buttery smooth.
This blog post covers 4K video playback, not 4K desktop environment rendering.
Installing LibreELEC
This blog post won't go through the hardware and software setup for LibreELEC on the Pi 5, but the basic process is:
- Download the LibreELEC Raspberry Pi image
- Flash the image to a microSD card with Balena Etcher
- Insert the microSD card into the Pi 5 and boot it connected to a TV.
For a full guide (and more visuals to accompany this blog post), watch my latest video on YouTube:
Remote Control
Before I get to the 4K results, I wanted to mention one important aspect of using a Pi 5 in a home theater environment, and that's how you control it.
A full keyboard and mouse would be cumbersome in a living room, though that doesn't stop some people from using a Logitech K400 or something similar. But the three primary options are:
- HDMI-CEC allows you to use your existing TV or universal remote to send remote control commands directly to the Pi through HDMI. This is supported out of the box with LibreELEC and works with most modern TVs
- A wireless mini remote like the Rii i4 is handy since you might want to type in text using the built-in keyboard. It also has a trackpad, and LibreELEC supports mouse-based control.
- A Flirc USB IR receiver lets you directly control the Pi with any IR remote (or an IR blaster and any universal remote), and worked out of the box with all the IR remotes I've tested.
Flirc even makes their own universal IR remote, the Skip 1S, and it's a decent option in lieu of the Logitech Harmony line I used to recommend. The Pi Hut has a nice article explaining how to use the Flirc IR Receiver for media control.
The 4K Experience
The main reason I set off on this journey with LibreELEC in the first place was to see how the Pi 5 handled 4K content. After all, there's only a hardware decoder for HEVC (H.265), the H.264 decoder was dropped in the latest BCM2712 SoC.
Pi engineers in the forums state the 2.5x faster Arm A76 CPU can handle H.264 decoding with more aplomb than the hardware decoder present on the Pi 4, but can it really?
For my testing, I converted Big Buck Bunny from 4K 60 fps to various resolutions, using the 'HQ' defaults in Handbrake to convert to HEVC, H.264, AV1, and VP9. Here are the results:
Resolution | Format | Notes |
---|---|---|
4K60 | H264 | watchable but with small stutters every now and then |
4K60 | HEVC | butter smooth |
4K60 | AV1 | jittery, not watchable |
4K60 | VP9 | better than AV1, but stutters enough to be noticeable |
4K30 | H264 | butter smooth |
4K30 | HEVC | butter smooth |
4K30 | AV1 | mostly smooth but with stutters, watchable |
4K30 | VP9 | mostly smooth with a few stutters but infrequent and easily watchable |
1080p60 | AV1 | almost perfect, only a frame skip every now and then |
1080p60 | H264 | almost perfect, only a frame skip every now and then |
1080p60 | HEVC | butter smooth |
1080p60 | VP9 | almost perfect, only a frame skip every now and then |
1080p30 | all formats | butter smooth |
I also tested many of my 'real world' video examples, as well as YouTube streaming through Kodi's default YouTube Add-On:
Video type | Resolution | Format | Notes |
---|---|---|---|
YouTube | 4K30 | VP9 | butter smooth |
NASA TV | 720p30 | VP9 | butter smooth |
Dune (HDR10) | 4K24 | H.265 (HEVC) | butter smooth |
Chernobyl | 1080p24 | H.264 | butter smooth |
Bluey | 720p24 | H.264 | butter smooth |
My conclusion: real-world content, outside of 60fps 4K footage which is surprisingly rare still outside of consumer home videos, works fine on the Pi 5. Certainly as smooth as my 3rd-gen Apple TV 4K. And HDR10, Dolby Atmos, etc. are supported—though you may have trouble getting content from streaming platforms. But that's a whole other ball of wax.
Power and Noise
Before we go, I should mention the elephant in the room when it comes to the Pi and media center use: power control.
Unlike most set top boxes, the Pi 5 still doesn't have an easy way to 'wake' or power up after it's been powered off. What's worse, by default it'll burn 1.8W in the poweroff state, all day long. Not very energy-efficient!
For the leech current, you can fix that using this guide I wrote last year, to set POWER_OFF_ON_HALT
to a better default.
For powering on the Pi after it's been shut down... that's a little more complicated, but here are three options:
- You could integrate fakewake to virtually press the Pi 5's power button.
- You could add a 5V IR relay inline with the Pi 5's power supply to supply power or cut it off. (Or put the Pi 5 on a smart outlet with remote control).
- It could be possible—though it doesn't seem the Pi engineers are pursuing the feature at this time—to send a magic Wake-on-LAN packet to boot the Pi 5, since the RP1 could listen for it while the Pi's powered off.
All those solutions are a little bit of a kludge, but could be made to work. Some other SBCs, like those from Orange Pi, may have the ability to wake with an IR remote, but how well that works depends on the specific model and software you're running on it.
You could just leave the Pi 5 running 24x7, though, if you're okay with it burning 3.7W at idle. My Pi 5 consumed 7-8W while playing back AV1 4K 60fps video, and 5-6W while playing back 4K 24fps HEVC content.
Fan noise with the official case is slightly noticeable during silent portions of a movie (from about 5' away), but I'd recommend using a fanless case if you want a truly silent setup.
I'll close this post out noting the one (and only) issue I ran into while testing LibreELEC 12: if I used my 5 GHz WiFi network, it would drop out after a while and refuse to re-connect. I did not have any issue on my 2.4 GHz WiFi or wired Ethernet.
Comments
WRT the 5v relay idea, a way you could potentially take that a step further without needing another remote would be to build a circuit that watches for 5v from one of the TV's USB ports, assuming it has one. The TV's not likely to supply the 5A the Pi needs to operate, but getting a high from the USB line, even if the circuit is only designed to put a 200mA load on the USB to not add more parasitic draw would be a solid indicator. No idea how to start on that path myself though.
How about a 5 buck smart plug to plug the pi into....if you can buy into any matching ecosystem of course....
You're going to laugh at this comment, but ...
In the Youtube video you mentioned having 720p Bluey Episodes. I've only been able to acquire 480p (DVDs) to add to my library. I am curious where you were able to get "HD" episdoes outside of Amazon?
Also, when you posted this Youtube video I immediately told my wife, "I have another project to spend money on". I'm looking forward to having a self-contained media library/server that plugs into a hotel and gives me access to my own library on the go without streaming. This is getting me one step closer!
So that's the fun thing... life finds a way sometimes ;)
But I bought the episodes on DVD (and actually re-bought some on Apple, a few episodes were briefly available there), and then because of the annoying quality, I also found a way to get the higher resolution episodes.
Life finds a way! 😁
I am looking forward to trying this out. I enjoy focusing on media projects with the pi. I love watching your YouTube Chanel to learn! Keep up the good work!
Can the Pi 5 also passthrough lossless audio like Dolby True-HD or DTS-HD like the NVIDIA Shield?
Yes; AFAICT, though I couldn't test on the Pi 5 since I don't have a surround-capable system at work. Check the LibreELEC forums for more info on formats supported (I know all the older Dolby formats work without a hitch).
Interesting to try 8k from YouTube streams or locally.
Have you tried Konstakang's ports of Android TV on the pi 5? With a more modern interface than Kodi and support for Android apps, it could finally be the replacement to the ancient Nvidea Shield that many people still swear by. I've been trying it out on the pi 4 and it works amazingly until I try to play anything in 4k. I'm wondering if I should take the plunge and get a pi 5 and try to daily drive it as a replacement for my ad-riddled Fire Stick 4k.
I've heard a lot of recommendations for it—I may have to test Android TV on the Pi 5 since it seems like not as many people have tried it out!
I'd be interested in a post or video about you exploring android on a pi 4/5. I experimented with konstas android tv builds on both my pi 4 and 5 and could not get smooth video playback on either. I tried kodi and smart tube and both apps would start dropping frames like crazy on anything 1080p or higher resolution. My "ultimate" streaming device would be something like a pi 5 running android capable of 1080p/4k playback in kodi and smart tube with the occasional web browser streaming.
There is one other way to make an infrared remote work. You can buy a MCE (Media Center Edition) remote control packaged with a USB connected IR receiver module. I BELIEVE that LibreELEC still supports these out of the box; you just plug it in and it works. However if you want to also use your Pi for other purposes besides a home theater PC you can install Raspberry Pi OS and then Kodi separately, but in that case you have to add a software package called LIRC. But the catch on that is that up until a few years installing LIRC was drop dead simple, then they "updated" it and now it is terrible (I have other words for the new version but this seems like a family-friendly site so I won't say them). BUT you can still install the old version that just works, and I know it works under Debian 12 and with Kodi Omega on an Intel-based system (there is an article at a blog called Two "Sort Of" Tech Guys that explains how to install the old version) but I do not know if or where you can still get the old version of LIRC for an ARM-based system. Anyway, doing it that way gets you the remote control and the IR receiver in one package, and there are several sellers on eBay and Amazon that offer them, just make sure it says MCE in the description because that is they type that has worked for many years.
In the video you say that you're using the 4GB model, and that the additional RAM of the 8GB would make no difference for video playback. What about the 2GB model then? Would that also be enough?
Enough for most video playback tasks, yes. If you want to open up 20 Firefox tabs with 20 different videos loaded up, it would fall over at that point. But for simpler playback or a few browser tabs, a fine option still.
I see, thanks!
Hi, great write up and video!
I was curious about the capabilities of the Pi 5 :)
One question: Did you test with subtitles? We watch 4k movies /w ATMOS and would need to add subtitles.
Mostly it's SRT subtitles.
Do you have any experience if the Pi works well with subtitles, especially when skipping forward or backwards?
The built-in TV Plex App doesn't do a great job unfortunately.
Please try to play 8k videos from YouTube
Or local. Thanks.
I'm testing a RPi5 running a standard Ubuntu installation, and am having... A less than optimal experience with video.
1080/60 YouTube video lags full-screen (Tested on Chromium and Firefox), and a 1080/60 AV1 clip doesn't even render on VLC (Maybe a single frame every 20 seconds, else audio only)
Not sure if your setup has some drivers that mine doesn't, but we're having vastly different experiences.
I haven't tested on Ubuntu, but I know most optimizations hit Pi OS first, and am not sure if any of the optimizations will hit Chromium or FireFox on Ubuntu...
Though even without any optimization, AV1 at 1080p should not be that slow... do you have a particular test clip you're trying to play? I was running Big Buck Bunny after re-encoding with defaults at each resolution in Handbrake (e.g. HEVC, AV1, VP9...).