Whats the best way to test and compare different encoders with the same video file?
Unsure how to go about testing x264 vs nvenc h264, for streaming purposes. I've seen lots of benchmarks etc.
I've tried shutter encoder but the nvenc clips come out looking worse than x264 medium/fast, would want the encoders im using to be same as obs ones.
I used Nvidia ICAT to compare split screen. Doing all this for fun, i understand no one except me will notice or care about the difference. Something is making me think apex foliage looks worse on nvenc even with p7
2 Replies
also want to test different scaling options with the same video if possible
What is the
shutter encoder
?
Also Nvidia ICAT is checking individual frames which means temporal information is lost there. h264 and other encoders compress data in a way that makes it so not all frames contain 100% of the data that is presented to a user through I, P, and B frames
tl;dr I frames contain 100% of the data they need to appear to a user
P (predictive) frames use data from a previous I frame and only display the changes between them
B (bi-directional) frames are like P frames but look at data both before and after
As for doing quality comparisons, FFmpeg is recommended because it's basically the same way OBS encodes videos. That unfortunately means having learn the command line options for the encoders you're testing, and then actually comparing all the results.
Doing tests where you just compare things by your vision isn't really going to indicate much outside of really obvious differences. That's why Addie used VMAF for his comparisons, which is a specific quality metric that compares how different an encoded video looks compared to the original version, and specifically compares them in human-perception ways rather than computer-vision.
With all that said, it'll come down to what platform(s) you stream to, what your hardware is capable of, and what you can end up sending to those platforms