> Most of the video you encode on a computer is actually all in software/CPU because the quality and efficiency is better.
It depends on what you care about more, you don't always need the best possible encoding, even when you're not trying to record/stream something real time.
For comparison's sake, I played around with some software/hardware encoding options through Handbrake with a Ryzen 5 4500 and Intel Arc A580. I took a 2 GB MKV file of about 30 minutes of footage I have laying around and re-encoded it with a bunch of different codecs:
codec method time speed file size of original
H264 GPU 04:47 200 fps 1583 MB 77 %
H264 CPU 13:43 80 fps 1237 MB 60 %
H265 GPU 05:20 206 fps 1280 MB 62 %
H265 CPU ~30:00 ~35 fps would take too long
AV1 GPU 05:35 198 fps 1541 MB 75 %
AV1 CPU ~45:00 ~24 fps would take too long
So for the average person who wants a reasonably fast encode and has an inexpensive build, many codecs will be too slow on the CPU. In some cases, close to an order of magnitude, whereas if you do encode on the GPU, you'll get much better speeds, while the file sizes are still decent and the quality of something like H265 or AV1 will in most cases seem perceivably better than H264 with similar bitrates, regardless of whether the encode is done on the CPU or GPU.
So, if I had a few hundred of GB of movies/anime locally that I wanted to re-encode to make it take up less space for long term storage, I'd probably go with hardware H265 or AV1 and that'd be perfectly good for my needs (I actually did, it went well).
Of course, that's a dedicated GPU and Intel Arc is pretty niche in of itself, but I have to say that their AV1 encoder for recording/streaming is also really pleasant and therefore I definitely think that benchmarking this stuff is pretty interesting and useful!
For professional work, the concerns are probably quite different.
It depends on what you care about more, you don't always need the best possible encoding, even when you're not trying to record/stream something real time.
For comparison's sake, I played around with some software/hardware encoding options through Handbrake with a Ryzen 5 4500 and Intel Arc A580. I took a 2 GB MKV file of about 30 minutes of footage I have laying around and re-encoded it with a bunch of different codecs:
So for the average person who wants a reasonably fast encode and has an inexpensive build, many codecs will be too slow on the CPU. In some cases, close to an order of magnitude, whereas if you do encode on the GPU, you'll get much better speeds, while the file sizes are still decent and the quality of something like H265 or AV1 will in most cases seem perceivably better than H264 with similar bitrates, regardless of whether the encode is done on the CPU or GPU.So, if I had a few hundred of GB of movies/anime locally that I wanted to re-encode to make it take up less space for long term storage, I'd probably go with hardware H265 or AV1 and that'd be perfectly good for my needs (I actually did, it went well).
Of course, that's a dedicated GPU and Intel Arc is pretty niche in of itself, but I have to say that their AV1 encoder for recording/streaming is also really pleasant and therefore I definitely think that benchmarking this stuff is pretty interesting and useful!
For professional work, the concerns are probably quite different.