Files
com.xaymar.www/_guides/obs/high-quality-recording/nvenc.html
T
Michael Fabian 'Xaymar' Dirks 8d794b57f4 Upgrade guides and StreamFX page
2023-04-23 17:06:58 +02:00

431 lines
9.6 KiB
HTML

---
layout: default
category: "OBS"
title: "High Quality Recordings with NVIDIA NVENC (in OBS® Studio)"
comments: true
date: "2022-02-18"
---
<p class="block">The "Green" team has hardware capable of significantly more than the competition, and offers more flexibility in terms of configuration and quality. While not always the best in quality, and often optimizing for a different type of quality than would be expected, they are decent options with a variety of choices. NVIDIA has a good foundation in both live and offline content creation, and constantly aims to improve on this.</p>
<details class="block" open><summary><h2>AV1</h2></summary>
<table class="block">
<thead><tr>
<th>Option</th>
<th width="16%">Lossless</th>
<th width="16%">Near Lossless</th>
<th width="16%">Indistinguishable</th>
<th width="16%">High Quality</th>
<th width="16%">Acceptable Quality</th>
</tr></thead>
<tr>
<td>Rate Control</td>
<td colspan="255">CQP</td>
</tr>
<tr>
<td>CQ Level</td>
<td>0</td>
<td>1 - 4</td>
<td>5 - 10</td>
<td>11 - 16</td>
<td>17 - 22+</td>
</tr>
<tr>
<td>Preset</td>
<td colspan="255">P1: Fastest (Lowest Quality)</td>
</tr>
<tr>
<td>Tuning</td>
<td colspan="255">High Quality</td>
</tr>
<tr>
<td>Multipass Mode</td>
<td colspan="255">Single Pass</td>
</tr>
<tr>
<td>Profile</td>
<td colspan="255">main</td>
</tr>
<tr>
<td>Look-ahead</td>
<td colspan="255">Disabled</td>
</tr>
<tr>
<td>Psycho Visual Tuning</td>
<td colspan="255">Disabled</td>
</tr>
<tr>
<td>Max B-frames</td>
<td colspan="255">0</td>
</tr>
</table></details>
<details class="block" open><summary><h2>H265/HEVC (with StreamFX)</h2></summary>
<table class="block">
<thead><tr>
<th>Option</th>
<th width="16%">Lossless</th>
<th width="16%">Near Lossless</th>
<th width="16%">Indistinguishable</th>
<th width="16%">High Quality</th>
<th width="16%">Acceptable Quality</th>
</tr>
</thead>
<tr>
<td>Preset</td>
<td colspan=255>Fastest (P1)</td>
</tr>
<tr>
<td>Tune</td>
<td>Lossless</td>
<td colspan=255>High Quality</td>
</tr>
<tr>
<th colspan=255>H265</th>
</tr>
<tr>
<td>Profile</td>
<td colspan=255>Main</td>
</tr>
<tr>
<td>Tier</td>
<td colspan=255>High</td>
</tr>
<tr>
<td>Level</td>
<td colspan=255>Automatic</td>
</tr>
<tr>
<th colspan=255>Rate Control Options</th>
</tr>
<tr>
<td>Mode</td>
<td colspan=255>Constant Quantization Parameter</td>
</tr>
<tr>
<td>Multi-Pass</td>
<td colspan=255>Single Pass</td>
</tr>
<tr>
<td>Look Ahead</td>
<td colspan=255>0 frames</td>
</tr>
<tr>
<td>Adaptive I-Frames</td>
<td colspan=255>Disabled</td>
</tr>
<tr>
<td>Adaptive B-Frames</td>
<td colspan=255>Disabled</td>
</tr>
<tr>
<th colspan=255>Quantization Parameters</th>
</tr>
<tr>
<td>I-Frame QP<br>P-Frame QP<br>B-Frame QP</td>
<td>0</td>
<td>0 to 4</td>
<td>5 to 10</td>
<td>11 to 16</td>
<td>17 to 22</td>
</tr>
<tr>
<th colspan=255>Adaptive Quantization</th>
</tr>
<tr>
<td>Spatial Adaptive Quantization</td>
<td colspan=255>Disabled</td>
</tr>
<tr>
<td>Temporal Adaptive Quantization</td>
<td colspan=255>Disabled</td>
</tr>
<tr>
<th colspan=255>Other Options</th>
</tr>
<tr>
<td>Maximum B-Frames</td>
<td colspan=255><i>Any</i></td>
</tr>
<tr>
<td>B-Frame Reference Mode</td>
<td colspan=255><i>Any</i></td>
</tr>
<tr>
<td>Zero Latency</td>
<td colspan=255>Default</td>
</tr>
<tr>
<td>Weighted Prediction</td>
<td colspan=255>Default</td>
</tr>
<tr>
<td>Non-reference P-Frames</td>
<td colspan=255>Default</td>
</tr>
<tr>
<td>Reference Frames</td>
<td colspan=255>-1 frames</td>
</tr>
<tr>
<td>Low Delay Key-Frame Scale</td>
<td colspan=255>-1</td>
</tr>
<tr>
<th colspan=255>Key Frames</th>
</tr>
<tr>
<td>Interval Type</td>
<td>Frames</td>
<td colspan=255>Any</td>
</tr>
<tr>
<td>Interval</td>
<td>1 frame</td>
<td colspan=255>Any</td>
</tr>
</table></details>
<details class="block" open><summary><h2>H265/HEVC</h2></summary>
<table class="block">
<thead><tr>
<th>Option</th>
<th width="16%">Lossless</th>
<th width="16%">Near Lossless</th>
<th width="16%">Indistinguishable</th>
<th width="16%">High Quality</th>
<th width="16%">Acceptable Quality</th>
</tr></thead>
<tr>
<td>Rate Control</td>
<td colspan="255">CQP</td>
</tr>
<tr>
<td>CQ Level</td>
<td>0</td>
<td>1 - 4</td>
<td>5 - 10</td>
<td>11 - 16</td>
<td>17 - 22+</td>
</tr>
<tr>
<td>Preset</td>
<td colspan="255">P1: Fastest (Lowest Quality)</td>
</tr>
<tr>
<td>Tuning</td>
<td colspan="255">High Quality</td>
</tr>
<tr>
<td>Multipass Mode</td>
<td colspan="255">Single Pass</td>
</tr>
<tr>
<td>Profile</td>
<td colspan="255">main (for 8bit)<br>main10 (for 10bit)</td>
</tr>
<tr>
<td>Look-ahead</td>
<td colspan="255">Disabled</td>
</tr>
<tr>
<td>Psycho Visual Tuning</td>
<td colspan="255">Disabled</td>
</tr>
<tr>
<td>Max B-frames</td>
<td colspan="255">0</td>
</tr>
</table></details>
<details class="block" open><summary><h2>H264/AVC (with StreamFX)</h2></summary>
<table class="block">
<thead><tr>
<th>Option</th>
<th width="16%">Lossless</th>
<th width="16%">Near Lossless</th>
<th width="16%">Indistinguishable</th>
<th width="16%">High Quality</th>
<th width="16%">Acceptable Quality</th>
</tr>
</thead>
<tr>
<td>Preset</td>
<td colspan=255>Fastest (P1)</td>
</tr>
<tr>
<td>Tune</td>
<td>Lossless</td>
<td colspan=255>High Quality</td>
</tr>
<tr>
<th colspan=255>H264</th>
</tr>
<tr>
<td>Profile</td>
<td>High 4:4:4 Predictive</td>
<td colspan=255>High 4:4:4 Predictive (when using I444)<br> High (when using NV12)</td>
</tr>
<tr>
<td>Level</td>
<td colspan=255>Automatic</td>
</tr>
<tr>
<td>Level</td>
<td colspan=255>Automatic</td>
</tr>
<tr>
<th colspan=255>Rate Control Options</th>
</tr>
<tr>
<td>Mode</td>
<td colspan=255>Constant Quantization Parameter</td>
</tr>
<tr>
<td>Multi-Pass</td>
<td colspan=255>Single Pass</td>
</tr>
<tr>
<td>Look Ahead</td>
<td colspan=255>0 frames</td>
</tr>
<tr>
<td>Adaptive I-Frames</td>
<td colspan=255>Disabled</td>
</tr>
<tr>
<td>Adaptive B-Frames</td>
<td colspan=255>Disabled</td>
</tr>
<tr>
<th colspan=255>Quantization Parameters</th>
</tr>
<tr>
<td>I-Frame QP<br>P-Frame QP<br>B-Frame QP</td>
<td>0</td>
<td>0 to 4</td>
<td>5 to 10</td>
<td>11 to 16</td>
<td>17 to 22</td>
</tr>
<tr>
<th colspan=255>Adaptive Quantization</th>
</tr>
<tr>
<td>Spatial Adaptive Quantization</td>
<td colspan=255>Disabled</td>
</tr>
<tr>
<td>Temporal Adaptive Quantization</td>
<td colspan=255>Disabled</td>
</tr>
<tr>
<th colspan=255>Other Options</th>
</tr>
<tr>
<td>Maximum B-Frames</td>
<td colspan=255><i>Any</i></td>
</tr>
<tr>
<td>B-Frame Reference Mode</td>
<td colspan=255><i>Any</i></td>
</tr>
<tr>
<td>Zero Latency</td>
<td colspan=255>Default</td>
</tr>
<tr>
<td>Weighted Prediction</td>
<td colspan=255>Default</td>
</tr>
<tr>
<td>Non-reference P-Frames</td>
<td colspan=255>Default</td>
</tr>
<tr>
<td>Reference Frames</td>
<td colspan=255>-1 frames</td>
</tr>
<tr>
<td>Low Delay Key-Frame Scale</td>
<td colspan=255>-1</td>
</tr>
<tr>
<th colspan=255>Key Frames</th>
</tr>
<tr>
<td>Interval Type</td>
<td>Frames</td>
<td colspan=255>Any</td>
</tr>
<tr>
<td>Interval</td>
<td>1 frame</td>
<td colspan=255>Any</td>
</tr>
</table></details>
<details class="block" open><summary><h2>H264/AVC</h2></summary>
<table class="block">
<thead><tr>
<th>Option</th>
<th width="16%">Lossless</th>
<th width="16%">Near Lossless</th>
<th width="16%">Indistinguishable</th>
<th width="16%">High Quality</th>
<th width="16%">Acceptable Quality</th>
</tr></thead>
<tr>
<td>Rate Control</td>
<td colspan="255">CQP</td>
</tr>
<tr>
<td>CQ Level</td>
<td>0</td>
<td>1 - 4</td>
<td>5 - 10</td>
<td>11 - 16</td>
<td>17 - 22+</td>
</tr>
<tr>
<td>Preset</td>
<td colspan="255">P1: Fastest (Lowest Quality)</td>
</tr>
<tr>
<td>Tuning</td>
<td colspan="255">High Quality</td>
</tr>
<tr>
<td>Multipass Mode</td>
<td colspan="255">Single Pass</td>
</tr>
<tr>
<td>Profile</td>
<td colspan="255">high</td>
</tr>
<tr>
<td>Look-ahead</td>
<td colspan="255">Disabled</td>
</tr>
<tr>
<td>Psycho Visual Tuning</td>
<td colspan="255">Disabled</td>
</tr>
<tr>
<td>Max B-frames</td>
<td colspan="255">0</td>
</tr>
</table></details>
<h2 class="block">Additional Information</h2>
<ul class="block">
<li><i>Multi-Pass</i> at Full Resolution is a new option, and has measurably increased quality in VBR-CQ. However, it is very expensive and should be the first option changed if performance is a problem.</li>
<li><i>Look Ahead</i> in VBR-CQ can be freely adjusted as needed, as long as it is not lower than the number of B-Frames and Reference Frames.</li>
<li><i>Adaptive B-Frames</i> is required for VBR-CQ, as B-Frames can both increase and decrease quality if used in the wrong place. </li>
<li>Stronger <i>Spatial Adaptive Quantization</i> will focus more bitrate towards visually complex areas, but may starve smoother areas of the bitrate it needs.</li>
<li>The Key Frames <i>Interval</i> can be freely adjusted for anything but Lossless, as I-only encoding is required to guarantee the least data loss.</li>
<li>The old presets were deprecated by NVIDIA and now map to the new P1-P7 presets, which come with massive performance or quality boosts. <i>High Quality</i> is now <i>Medium (P4)</i>, while <i>High Performance</i> is closer to <i>Faster (P2)</i>.</li>
</ul>
<p class="block align-center"><a href="../">Back to the Guide</a></p>