Configuration - obsproject/obs-amd-encoder GitHub Wiki
View Mode: Basic
The initial View Mode, users are recommended to start with this one
Preset
Fully configures the Encoder for a specific use case, useful if you just want to start off somewhere. Available Presets change over time and their exact settings can always be found in code or by applying it. Will continuously replace other settings until disabled again.
Quality Preset
Favor Speed, stay Balanced or favor Quality. All three options provide different results, with Speed being closer to x264 ultrafast and Quality being closer to x264 fast.
Options: (best, slowest) Quality, Balanced, Speed (worst, fastest)
Profile
Defines the H.264 Profile, which define encoding limits that the Encoder will rather strictly follow. Using the wrong Profile and Profile Level can result in drastic quality and streaming issues.
Options: (best) High, Constrained High, Main, Baseline, Constrained Baseline (worst)
Rate Control Method
Controls which rate control method is to be used. There are four total available RCMs:
- Constant QP (CQP): Assigns a fixed QP value to the given frame type using 'I-Frame QP', 'P-Frame QP' and 'B-Frame QP'.
- Constant Bitrate (CBR): Attempts to reach the 'Target Bitrate' for every second and will fill the remaining space up with 'Filler Data' if enabled.
- Variable Bitrate Peak Constrained (VBR): Variable Bitrate which attempts to stay below the 'Peak Bitrate'. Behaves like Constant Bitrate without 'Filler Data' being enabled.
- Variable Bitrate Latency Constrained (VBR_LAT): Basically Constrained QP that tries to stay at the given 'Target Bitrate' on average. Uses 'Minimum QP', 'Maximum QP' and 'Target Bitrate'.
Target Bitrate, Peak Bitrate
Bitrate targets for Constant Bitrate (CBR) and Variable Bitrate (VBR, VBR_LAT).
Range: 10 - 100000 kbit.
I-/P-/B-Frame QP
QP Values to use for Constant QP (CQP) rate control method.
Range: (best) 0 - 51 (worst).
Filler Data
If enabled, tells Constant Bitrate (CBR) to fill up the remaining buffer with filler data so that it meets the 'Target Bitrate'. No effect on any other Rate Control Methods.
Keyframe Interval
The interval at which Keyframes appear, it is generally recommended to keep this at 2 for streaming and 1 for recording.
Debug
When enabled the encoder will log additional debug information. Keep this on disabled unless you're encountering issues and need support.
View Mode: Advanced
Minimum/Maximum QP
VBV Buffer
VBV Buffer Strictness
VBV Buffer Size
Frame Skipping
Deblocking Filter
If enabled, sets a flag in the output that the individual h.264 blocks may be smoothing together to reduce the blocking artifacts. Only affects the edges of the blocks, which can improve overall visual quality.
Device
Which Device to use for encoding in a multi-GPU system. Very experimental at the moment.
View Mode: Expert
Profile Level
Which H.264 Profile Level to use for encoding, always leave this on Automatic. See ITU-T H.264 for a list of supported Resolutions and Framerates.
VBV Buffer Fullness
VBV Buffer Fullness defines how full the VCE buffer is at the start of encoding.
Range: (empty) 0% - 100% (full).
Recommended: 100%
Enforce HRD Compatibility
If enabled, limits the QP variation within a frame so that weaker devices and devices that use a stricter decoder can decode properly.
Warning: This setting will affect the overall quality and compression of the output negatively since changes can't be represented as good as with it disabled. Only enable if absolutely necessary.
Motion Estimation
CABAC
Experimental parameter that allows enabling and disabling CABAC entropy coding. Not supported by many decoders, streaming servers, file formats (FLV, ...), protocols (RTMP, HTTP) and editing software. Only YouTube recommends using CABAC, but use with caution anyway.
Use OpenCL
If enabled, the encoder will use OpenCL for the transfer from and to GPU memory.
View Mode: Master
Using this View Mode will disqualify you from any support. You have been warned.
Usage
Maximum LTR Frames
Maximum Access Unit Size
IDR Period (Replaces Keyframe Interval)
Intra-Refresh Number of Macroblocks Per Slot
Scan Type
Unlock Properties
Unlocks Bitrate, Buffer Size and Keyframe Interval to their full range.
WIP: To be rewritten below this line.
Initial Buffer Fullness
Filler Data
B-Picture Pattern (Advanced, only available if supported)
Defines how many B-Pictures should be used to encode. Generally, more B-Pictures mean higher quality but slower encoding. For VCE 2 cards, it is recommended to set this to 0 as there is a Driver bug causing issues.
Range: (worst) 0 - 3 (best, only if supported)
Caution: Users with VCE 2.0 cards should set this to 0, there is a Driver bug which worsens Quality.
Warning: High Performance Impact!
B-Picture Reference (Advanced, only available if supported)
Allow the encoder to reference B-Pictures in the decoded stream, instead of limiting B-Pictures to only I- & P-Frames. Increases overall stream compression and quality at lower bitrates.
Warning: High Performance Impact!
B-Picture Delta QP, Reference B-Picture Delta QP (Advanced, only available if supported)
Delta QP from the P-Frame QP to use for B-Frames. Used to further control compression with B-Pictures.
Warning: Incorrect values can cause slower encoding and worse quality! Modify with caution.
Deblocking Filter (Advanced)
Enforce HRD Compatibility (Advanced)
Memory Type (Expert)
Which Backend to use for the plugin, defaults to Host for maximum speed until OBS support for shared DirectX and OpenGL devices and surfaces is implemented.
Warning: High Performance Impact!
Compute Type (Expert)
Which Compute Backend to use for the plugin, defaults to Disabled which makes everything run on the Software side instead.
Starting with Version 1.3.3.1 and Driver 16.10.1, OpenCL performance is now nearly identical to software. When using OpenCL Memory Type must not be Host.
Warning: High Performance Impact!
Surface Format (Expert)
Allows you to override the Surface Format that the Encoder will use, defaults to Automatic so it will use whatever format OBS gives it. Will only list supported options by the GPU and setting this to something else than what is set in OBS incurs an additional conversion cost. It is recommended to keep this on Automatic or NV12.
Warning: High Performance Impact!
Use Custom GOP Size, GOP Size (Expert)
Experimental parameter that allows you to override the automatically calculated GOP Size.
Warning: Extreme impact on Quality and Compression! No support if changed. Do not change this option unless you know what you are doing! Here there be dragons!
Context Adaptive Binary Arithmetic Coding (CABAC)
Warning: Unexpected behavior may happen if you use this! No support if changed. Do not change this option unless you know what you are doing! Here there be dragons!