Proryanator / encoder-benchmark

A tool to benchmark your hardware's real-time video encoding capabilities.
GNU General Public License v3.0
63 stars 5 forks source link

Sample video naming confusion: "2K" and some sample file questions #57

Open vaisest opened 7 months ago

vaisest commented 7 months ago

Hey, I'm a new user trying out this tool and I noticed the QHD 2560x1440 sample file is called 2K. This doesn't really make sense to me and for example Wikipedia does say 2K resolution is usually equivalent to either 2048x1080 or 1920x1080. Perhaps it would be better to use the name "1440" to match the other files?

I'm also confused on why the video is so lightly compressed. The two file download providers were very slow on my connection.

I presume the video is in this format to avoid decompression overhead, but I'm still fairly sure it'd be a decent faster to download a H264 losslessly compressed file and then uncompress that. For example with the command ffmpeg -i .\2k-60.y4m -c:v libx264 -crf 0 test.mp4 the resulting video decompresses back to raw video in about 20 seconds on my system. The video seems to be an exact copy:

> ffmpeg -i .\2k-60.y4m -i .\test.mp4 -filter_complex "psnr" -f null -
[ -- ]
frame= 1800 fps=106 q=-0.0 Lsize=N/A time=00:00:29.98 bitrate=N/A speed=1.77x    0x
video:844kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
[Parsed_psnr_0 @ 000001d5fa4bea40] PSNR y:inf u:inf v:inf average:inf min:inf max:inf

The video is however only a third of the original's size:

> ls

    Directory: C:\Users\User\Downloads\encoder

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----        07/12/2023     20:43     9953290880 2k-60.y4m
-a----        07/12/2023     20:31        2493952 benchmark.exe
-a----        07/12/2023     20:49     3152967963 test.mp4
Proryanator commented 6 months ago

Thanks for using the tool and taking time to leave feedback! I do think changing the 2K files to be 1440 and also 4K to be 2160p, will make it much clearer great idea. I can go ahead and make that update.

Great question! The videos are uncompressed to as closely simulate the amount of raw/uncompressed data that your GPU will get from live game footage. Discussion with @Xaymar, the author of StreamFX said that this gets you as close as you can get (not entirely a 1 to 1 but I noticed it was close enough to see similar max performance capabilities). Does that help? :) the files are huge though :/

I think we could look into having the hosted files be compressed, and having the host system de-compress them back to close to raw as you showed, since yeah it would produce the same end-result during the benchmark. Would need to do some work around decompressing the file when needed, then removing the raw file after having run the tests but sounds do-able.