Our great sponsors
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
enable-chromium-hevc-hardware-decoding
A guide that teach you enable hardware HEVC decoding & encoding for Chrome / Edge, or build a custom version of Chromium / Electron that supports hardware & software HEVC decoding and hardware HEVC encoding.
Maybe my expectations for RPi 5 are too high, but it’s hard to imagine that an SBC manufacturer known as the industry standard removed the H.264 decoder & encoder from their latest product instead of adding VP9 and AV1, causing users to go crazy when YouTube playback dropped frames. Not to mention serving up transcoded content as a media server.
Good news is that I've been playing around with its competing products. For those users who want a normal media server experience in 2023, Jellyfin will support RK3588 full hardware accelerated transcoding, includes AV1 decode, subtitle burn-in and HDR tone-mapping. (WIP https://github.com/jellyfin/jellyfin-ffmpeg/issues/34#issuec...)
On the other hand you could get cool stuff from the video encoding hardware, such as access to motion vectors on the cheap: https://github.com/osmaa/pinymotion
https://pipci.jeffgeerling.com honestly I'd get a home server and run HA through docker, it's gotten me into home servers.
Most devices can indeed most likely handle software decode of more common resolutions, codecs and bitrates. But I'd really hope they'd pick the one that won't suck up all the battery, so H264. This line of thought is supported by the fact that YouTube still provides an H264 option with most if not all videos.
With higher bitrate things, HEVC seems to grow in popularity but even software decode support is not everywhere. Netflix for example requires the installation of HEVC support on Windows to play 4K content.
Actually hardware-accelerated video decode is even spottier and more unreliable across most platforms. The JS API for codec support (canPlayType) literally returns "maybe" and "probably". It's quite bad.
So far the best compatibility I've seen has been Edge with flags on Windows (MPEG-2, H264, HEVC, AV1, VP8, VP9 with most also supporting accelerated encode). It still fails with some content (Dolby Vision P5 colors are incorrect, HEVC Rext doesn't play - more info about HEVC is available here https://github.com/StaZhu/enable-chromium-hevc-hardware-deco...). Chrome on macOS is a close second in terms of codec support.
The worst in terms of HW acceleration being all the browsers on desktop Linux-s, few and fragile combinations that offer limited and janky support. But it's slowly improving. This combined with the not-the-latest hardware many use, means things like VP9 or AV1 tend to stutter.
I'd love to see some more generic stats, but considering the APIs aren't sufficient to determine actual support, these might be difficult to gather.
Most devices can indeed most likely handle software decode of more common resolutions, codecs and bitrates. But I'd really hope they'd pick the one that won't suck up all the battery, so H264. This line of thought is supported by the fact that YouTube still provides an H264 option with most if not all videos.
With higher bitrate things, HEVC seems to grow in popularity but even software decode support is not everywhere. Netflix for example requires the installation of HEVC support on Windows to play 4K content.
Actually hardware-accelerated video decode is even spottier and more unreliable across most platforms. The JS API for codec support (canPlayType) literally returns "maybe" and "probably". It's quite bad.
So far the best compatibility I've seen has been Edge with flags on Windows (MPEG-2, H264, HEVC, AV1, VP8, VP9 with most also supporting accelerated encode). It still fails with some content (Dolby Vision P5 colors are incorrect, HEVC Rext doesn't play - more info about HEVC is available here https://github.com/StaZhu/enable-chromium-hevc-hardware-deco...). Chrome on macOS is a close second in terms of codec support.
The worst in terms of HW acceleration being all the browsers on desktop Linux-s, few and fragile combinations that offer limited and janky support. But it's slowly improving. This combined with the not-the-latest hardware many use, means things like VP9 or AV1 tend to stutter.
I'd love to see some more generic stats, but considering the APIs aren't sufficient to determine actual support, these might be difficult to gather.
The thing you are looking for can be achieved by buying something on the DietPi hardware compatibility list. https://dietpi.com/ I personally have had good luck with NanoPi boards from that list.