Just upgraded my W11 server hardware to get a CPU that hardware transcodes HEVC. It works great when watching shows and movies directly, the CPU isn’t used at all as expected.
If I try to download the same movie/show at the same quality to my Android phone, the CPU goes to a steady 60 percent for the entire download. Why is that? Does the download feature not use HW encoding?
Chances are, it has to perform HDR/SDR tone mapping and/or audio conversion as well.
And keeping up with the speed of the hardware transcoder can still create significant load.
The file I’m downloading is the same one I play on Android. No HDR involved. It does have to transcode DTS 5.1 to OPUS but it does that when I’m playing it also. I figured behavior would be same streaming vs downloading.
I guess it just has to do with buffering while streaming that works differently when downloading? When streaming I get CPU spike for the 60 second buffer then it goes to nothing. For the download the spike just stays where it is the entire time.
Further diagnosis can only be done with server debug logs.
Enable debug logging in the server settings,
stop and restart the server
recreate the situation with a transcoding download, let it run for a few minutes.
Then fetch the logs.