From baf58081f01736f46c39a5d36308fb63100e17e9 Mon Sep 17 00:00:00 2001 From: Michael Fabian 'Xaymar' Dirks Date: Tue, 21 Jun 2022 19:56:56 +0200 Subject: [PATCH] Update NVENC guide --- _guides/obs/high-quality-streaming/nvenc.html | 75 ++++++------------- 1 file changed, 22 insertions(+), 53 deletions(-) diff --git a/_guides/obs/high-quality-streaming/nvenc.html b/_guides/obs/high-quality-streaming/nvenc.html index cef7312..d5a8a26 100644 --- a/_guides/obs/high-quality-streaming/nvenc.html +++ b/_guides/obs/high-quality-streaming/nvenc.html @@ -169,74 +169,43 @@ StreamFX v0.11.1 and OBS Studio 27.2{% endcapture %}{% include blocks/paragraph. {% endcapture %}{% include blocks/list.liquid content=list %} {% capture content %}Matching your Resolution and FPS with your Bitrate{% endcapture %}{% include blocks/heading.liquid content=content level=1 %} -{% capture content %}It is no secret than H.264/AVC is an outdated codec and that platforms should have paved the way for better codecs a long time ago, but it is the solution that we are stuck with until AV1 is adopted by the masses. So in order to get the best quality out of our stream, we should aim to also set up our stream according to the bitrate and codec we use. Below is the average result of a few hundred thousand tests at various resolutions and bitrates, according to PSNR and VMAF (weighted PSNR 30:70 VMAF):{% endcapture %}{% include blocks/paragraph.liquid content=content %} +{% capture content %}It is no secret that H.264/AVC is now an outdated codec which should have been replaced long ago. Still we can do something to achieve more quality from NVENC, through the careful choice of resolution, framerate and bitrate. Below are quality metrics based on VMAF for a Canvas Resolution of 2560x1440 with 60 FPS scaled to different Output Resolutions:{% endcapture %}{% include blocks/paragraph.liquid content=content %} + {% capture content %} - Resolution - 3.5mbit
30 FPS - 3.5mbit
60 FPS - 6.0mbit
30 FPS - 6.0mbit
60 FPS - 8.5mbit
30 FPS - 8.5mbit
60 FPS + Output Resolution + 3.5mbit + 6.0mbit + 8.5mbit 640x360 - 5 - 5 - 6 - 6 - 7 - 6 + 77.9258 + 84.1078 + 87.0414 960x540 - 5 - 4 - 6 - 5 - 6 - 5 + 77.9592 + 84.1083 + 87.0381 1280x720 - 4 - 3 - 5 - 4 - 5 - 4 - - - 1536x864 - 2 - 2 - 3 - 3 - 4 - 3 - - - 1600x900 - 3 - 2 - 3 - 2 - 4 - 3 + 77.9541 + 84.1095 + 87.0325 1920x1080 - 1 - 1 - 2 - 2 - 3 - 3 + 77.9323 + 84.0764 + 87.0543 -{% endcapture %}{% include blocks/table.liquid content=content caption="Rating from 1 to 10 based on VMAF and PSNR, weighted towards producing useful ranges. Tests performed with x264 slow.
A 10 is perfect, 9 is near lossless, 8 is indistinguishable, 7 is high quality, 5 is acceptable quality and 3 is watchable." %} -{% capture content %}Please note that watchable in video encoding means that you can decode information within it with reasonable accuracy, instead of it having turned to full garbage. Higher resolutions than 1920×1080 were omitted from the table as the rows would be filled with values between 0 and 1, which just are not very useful to us.{% endcapture %}{% include blocks/paragraph.liquid content=content %} -{% capture content %}This means that at 3.5mbit, the highest resolution and framerate for a variety streamer is 1280×720 at 30 FPS, or 960×540 at 60 FPS. The equation shifts slightly for 6.0mbit, where you can either go for 1536×864 at 30 FPS or 1280×720 at 60 FPS. Finally at 8.5mbit you are looking at a maximum resolution and framerate of 1920×1080 at 30 FPS or 1536×864 at 60 FPS.{% endcapture %}{% include blocks/paragraph.liquid content=content %} +{% endcapture %}{% include blocks/table.liquid content=content caption="Average VMAF scores with no enhancement gain over many different files at NVENCs best configuration.
For desktop viewing, a score of 70+ is 'Acceptable Quality', 80+ is 'High Quality', 90+ is 'Indistinguishable', 95+ is 'Effectively Lossless'.
For mobile viewing a score of 60+ is 'Acceptable Quality', 75+ is 'High Quality', 85+ is 'Indistinguishable'." %} + +{% capture content %}We can made an okay educated guess at the maximum resolution for each bitrate with the above table. For 3.5mbit the maximum resolution is 960x540, for 6.0mbit the maximum resolution is 1280x720, and for 8.5mbit the maximum resolution is 1920x1080. For some more action packed content it is best to reduce the resolution slightly in order to maintain decent quality, while slower or rarely moving content can sometimes increase the resolution slightly. +{% endcapture %}{% include blocks/paragraph.liquid content=content %} {% capture content %}Final Words{% endcapture %}{% include blocks/heading.liquid content=content level=3 %} {% capture content %}In the past few years NVIDIA has made massive improvements to their encoder, which has evened the playing field far beyond what was expected. With no need to transfer frames from the GPU to the CPU, and quality comparable to x264 medium (or better), NVIDIAs Turing NVENC is pushing the boundaries of what is possible in a single consumer PC.{% endcapture %}{% include blocks/paragraph.liquid content=content %}