Last dedicated hardware encoder I used was bad old days of MPEG2 for DVDs, but that went the way of the dodo when MPEG2 went native to the CPU. Never used hardware for h.264/5. I guess there was a board for J2k doing realtime lossless, but that was 2010ish.
So I'm legit curious what hardware transcoding looks like today, and that Plex charges for the pleasure
Because I don't want multiple copies of the same thing wasting space on my drive? Cloud storage might be endlessly cheap, but local storage is still very finite.
Also, both my CPU and GPU have enough spare compute that they can do it without stressing out too much. I also might not watch something multiple times, and I might watch it across different devices and networks (not all of which support 4k), so paying the cost of compute + storage to generate the transcodes ahead of time doesn't make a lot of sense, especially if a movie gets watched once every 2 years or something.
1. My phone 2. My wife's phone 3. My Tablet 4. My TV
They each have different screen geometries and even my tablet has two profiles really, local streaming at home or playing downloaded media on trips.
So I could transcode everything to 5 different formats and store it, or just transcode on demand and not worry about it.
Hardware transcoding is available with modern GPU:s.
VAAPI is in Intel chips: https://www.intel.com/content/www/us/en/developer/articles/t...
It represents parts of the CPU optimized to transcode video. The newer CPUs support HEVC/h265 which would otherwise introduce a huge load on a machine when done in a normal CPU.
Having the "hardware transcoder" as part of the chip means you can transcode huge videos without consuming huge amounts of system resources.
Jellyfin includes this, or more accurately exposes the ffmpeg implementation of this, whereas Plex charges for it.