# Shared Utility.Default="Default" Utility.Automatic="Automatic" Utility.Manual="Manual" Utility.Switch.Disabled="Disabled" Utility.Switch.Enabled="Enabled" Preset="Preset" Preset.ResetToDefaults="Restore Default Settings" Preset.Recording="Recording" Preset.HighQuality="High Quality Recording" Preset.Indistinguishable="Indistinguishable Recording" Preset.Lossless="Near Lossless Recording" Preset.Twitch="Twitch Streaming" Preset.YouTube="YouTube Streaming" # Static QualityPreset="Quality Preset" QualityPreset.Description="The Quality Preset that is used for encoding, affects speed and quality.\n- '\@QualityPreset.Speed\@' has the highest speed and worst quality.\n- '\@QualityPreset.Quality\@' has the highest quality and worst speed.\n- '\@QualityPreset.Balanced\@' is a balanced mixture of the two.\n\nThis option is static and can not be changed during encoding." QualityPreset.Speed="Speed" QualityPreset.Balanced="Balanced" QualityPreset.Quality="Quality" Profile="Profile" Profile.Description="The profile that is used for encoding, with better supported profiles at the top and higher quality profiles at the bottom.\nFor the majority of cases, it is best to not change this option and leave it on the default value.\n\nThis option is static and can not be changed during encoding." ProfileLevel="Profile Level" ProfileLevel.Description="The level to use for the profile which is used to determine the maximum resolution and framerate for an encoded stream.\nHigher values mean less supported devices but potentially better quality, while lower values mean more supported devices but potentially worse quality.\nIt is best to leave this at the default value of '\@Utility.Automatic\@' which will pick the lowest level that can support the resolution and framerate for maximum compatibility.\n\nThis option is static and can not be changed during encoding." Tier="Tier" Tier.Description="The tier to encode with.\n- 'High' is used for high bitrate content like near lossless recording.\n- 'Main' is used for streaming media or normal recording.\n\nThis option is static and can not be changed during encoding." AspectRatio="Aspect Ratio" AspectRatio.Description="Which Aspect Ratio should be written into the output file." CodingType="Coding Type" CodingType.Description="The type of coding to use when encoding the final packet.\n- '\@Utility.Automatic\@' automatically chooses the best coding type (recommended).\n- 'CALVC' (Context-Adaptive Variable-Length Coding) is slightly faster, but results in larger encoded content size.\n- 'CABAC' (Context-Adaptive Binary Arithmetic Coding) is slightly slower, but results in smaller encoded content size.\n\nThis option is static and can not be changed during encoding." MaximumReferenceFrames="Maximum Reference Frames" MaximumReferenceFrames.Description="The maximum amount of reference frames to use in the encoded content. Directly affects quality for encoders that support this.\n\nThis option is static and can not be changed during encoding." # Rate Control RateControlMethod="Rate Control Method" RateControlMethod.Description="What method should be used to control the (bit)rate?\n- '\@RateControlMethod.CQP\@' assigns fixed quantization parameters to each frame and is recommended for high quality to near lossless recording.\n- '\@RateControlMethod.CBR\@' attempts to get as close as possible to the \@Bitrate.Target\@, optionally filling it with \@FillerData\@, and is recommended for streaming.\n- '\@RateControlMethod.VBR\@' attempts to get as close as possible to the \@Bitrate.Peak\@ and if possible goes as low as the \@Bitrate.Target\@, and is recommended for small size recording.\n- '\@RateControlMethod.VBRLAT\@' is similar to '\@RateControlMethod.VBR\@' but instead takes into account encoding latency." RateControlMethod.CQP="Constant QP (CQP)" RateControlMethod.CBR="Constant Bitrate (CBR)" RateControlMethod.VBR="Variable Bitrate (Peak Constrained) (VBR)" RateControlMethod.VBRLAT="Variable Bitrate (Latency Constrained) (VBRLAT)" PrePassMode="Pre-Pass Mode" PrePassMode.Description="Pre-Pass improves the bitrate distribution within a sequence (GOP), however the effects of this may vary from card to card.\nEnabling this reduces encoding performance by roughly 10%, which may result in encoding being overloaded." PrePassMode.Quarter="\@Utility.Switch.Enabled\@ (Quarter Size)" PrePassMode.Half="\@Utility.Switch.Enabled\@ (Half Size)" PrePassMode.Full="\@Utility.Switch.Enabled\@ (Full Size)" Bitrate.Target="Target Bitrate" Bitrate.Target.Description="Bitrate to attempt to achieve in the overall sequence." Bitrate.Peak="Peak Bitrate" Bitrate.Peak.Description="Bitrate to attempt to maximally peak to in the overall sequence." QP.IFrame="I-Frame QP" QP.IFrame.Description="Fixed QP value to use for I-Frames." QP.PFrame="P-Frame QP" QP.PFrame.Description="Fixed QP value to use for P-Frames." QP.BFrame="B-Frame QP" QP.BFrame.Description="Fixed QP value to use for B-Frames." QP.Minimum="Minimum QP" QP.Minimum.Description="Lowest QP value to use in a Frame." QP.IFrame.Minimum="Minimum I-Frame QP" QP.IFrame.Minimum.Description="Lowest QP value to use in an I-Frame." QP.PFrame.Minimum="Minimum P-Frame QP" QP.PFrame.Minimum.Description="Lowest QP value to use in a P-Frame." QP.Maximum="Maximum QP" QP.Maximum.Description="Highest QP value to use in a Frame." QP.IFrame.Maximum="Maximum I-Frame QP" QP.IFrame.Maximum.Description="Highest QP value to use in an I-Frame." QP.PFrame.Maximum="Maximum P-Frame QP" QP.PFrame.Maximum.Description="Highest QP value to use in a P-Frame." FillerData="Filler Data" FillerData.Description="Enabling Filler Data allows the encoder to keep at least the \@Bitrate.Target\@ by filling up the remaining space in a sequence with empty information." FrameSkipping="Frame Skipping" FrameSkipping.Description="Frame Skipping allows the encoder to skip frames in order to meet the \@Bitrate.Target\@ requirements.\nWhen the encoder skips a frame it instead insert a repeat-last-frame NAL into the stream.\nCan help with very low \@Bitrate.Target\@ requirements." FrameSkipping.Period="Skip-Frame Period" FrameSkipping.Period.Description="Interval (in Frames) between skipped frames. This can be used to simulate a lower framerate than OBS is set to while still having a valid stream." FrameSkipping.Behaviour="Skip-Frame Behaviour" FrameSkipping.Behaviour.Description="Define how Frame Skipping behaves." FrameSkipping.SkipNth="Skip only every Nth frame" FrameSkipping.KeepNth="Keep only every Nth frame" VBAQ="VBAQ" VBAQ.Description="Enable the use of 'Variance Based Adaptive Quantization' (VBAQ) which is based on pixel variance to distribute bitrate better.\nIt works on the idea that the human visual system is less sensitive to artifacts in highly textured areas and thus will push the bitrate towards smoother surfaces.\nEnabling this may lead to improvements in subjective quality with certain content." EnforceHRD="Enforce HRD" EnforceHRD.Description="Enforce the use of a Hypothetical Reference Decoder which is used to verify that the output bitstream is correct." HighMotionQualityBoost="High Motion Quality Boost" HighMotionQualityBoost.Description="Enables High Motion Quality Boost." # VBV Buffer VBVBuffer="VBV Buffer" VBVBuffer.Description="What method should be used to determine the VBV Buffer Size:\n- '\@Utility.Automatic\@' calculates the size using a strictness constraint.\n- '\@Utility.Manual\@' allows the user to control the size.\nVBV (Video Buffering Verifier) Buffer is used by certain Rate Control Methods to keep the overall bitrate within the given constraints." VBVBuffer.Strictness="VBV Buffer Strictness" VBVBuffer.Strictness.Description="Determines the strictness of the VBV Buffer, with 100% being as strict as possible and 0% being unrestricted." VBVBuffer.Size="VBV Buffer Size" VBVBuffer.Size.Description="The size of the VBV Buffer which is used for Bitrate control in a sequence." VBVBuffer.InitialFullness="VBV Buffer Initial Fullness" VBVBuffer.InitialFullness.Description="How full the VBV Buffer initially is (in %), will only affect the initial sequence of encoding." # Picture Control Interval.Keyframe="Keyframe Interval" Interval.Keyframe.Description="Interval (in Seconds) between Keyframes." Period.IDR.H264="IDR Period (in Frames)" Period.IDR.H264.Description="Defines the distance between Instantaneous Decoding Refreshes (IDR) in frames." Period.IDR.H265="IDR Period (in GOPs)" Period.IDR.H265.Description="Defines the distance between Instantaneous Decoding Refreshes (IDR) in GOPs." Interval.IFrame="I-Frame Interval" Interval.IFrame.Description="Interval (in Seconds) between I-Frames. I-Frames override P-Frames and B-Frames." Period.IFrame="I-Frame Period (in Frames)" Period.IFrame.Description="Distance (in Frames) between I-Frames. I-Frames override P-Frames and B-Frames." Interval.PFrame="P-Frame Interval" Interval.PFrame.Description="Interval (in Seconds) between P-Frames. P-Frames override B-Frames." Period.PFrame="P-Frame Period (in Frames)" Period.PFrame.Description="Distance (in Frames) between P-Frames. P-Frames override B-Frames." Interval.BFrame="B-Frame Interval" Interval.BFrame.Description="Interval (in Seconds) between B-Frames." Period.BFrame="B-Frame Period (in Frames)" Period.BFrame.Description="Distance (in Frames) between B-Frames." GOP.Type="GOP Type" GOP.Type.Description="Which Type of GOP should be used:\n- '\@GOP.Type.Fixed\@' will always use fixed distances between each GOP.\n- '\@GOP.Type.Variable\@' allows for GOPs of varying sizes, depending on what is needed.\n'\@GOP.Type.Fixed\@' is how the H264 implementation works and best for local network streaming, while '\@GOP.Type.Variable\@' is best for low size high quality recordings." GOP.Type.Fixed="Fixed" GOP.Type.Variable="Variable" GOP.Size="GOP Size" GOP.Size.Description="Size of a GOP (Group Of Pictures) in Frames." GOP.Size.Minimum="GOP Size Minimum" GOP.Size.Minimum.Description="Minimum Size of a GOP (Group Of Pictures) in Frames." GOP.Size.Maximum="GOP Size Maximum" GOP.Size.Maximum.Description="Maximum Size of a GOP (Group Of Pictures) in Frames." GOP.Alignment="GOP Alignment" GOP.Alignment.Description="Experimental, Effects are Unknown. Use at your own Risk." BFrame.Pattern="B-Frame Pattern" BFrame.Pattern.Description="The amount of B-Frames to use while encoding.\nSupported by 2nd and 3rd Generation VCE cards. Negative impact on encoding performance." BFrame.DeltaQP="B-Frame Delta QP" BFrame.DeltaQP.Description="Delta QP value to the last I- or P-Frame for non-referenceable B-Frames." BFrame.Reference="B-Frame Reference" BFrame.Reference.Description="Allow a B-Frame to also use B-Frames as reference, instead of just P- and I-Frames." BFrame.ReferenceDeltaQP="B-Frame Reference Delta QP" BFrame.ReferenceDeltaQP.Description="Delta QP value to the last I- or P-Frame for referenceable B-Frames." DeblockingFilter="Deblocking Filter" DeblockingFilter.Description="Allow the decoder to apply a Deblocking Filter." MotionEstimation="Motion Estimation" MotionEstimation.Description="Motion Estimation allows the encoder to reduce needed bitrate by estimating where a pixel went." MotionEstimation.Quarter="Quarter-Pixel" MotionEstimation.Half="Half-Pixel" MotionEstimation.Full="Quarter- & Half-Pixel" # System Video.API="Video API" Video.API.Description="What API should the backend use?" Video.Adapter="Video Adapter" Video.Adapter.Description="On what Adapter should we attempt to encode on?" OpenCL.Transfer="OpenCL Transfer" OpenCL.Transfer.Description="Transfer the frame to the GPU using OpenCL instead of mapped memory. Transfer via OpenCL is less sporadic than transfer via mapped memory when the GPU is being used." OpenCL.Conversion="OpenCL Conversion" OpenCL.Conversion.Description="Convert the frame on the GPU using OpenCL instead of DirectCompute." MultiThreading="Multi-Threading" MultiThreading.Description="Use more than one thread to handle submitting frames and retrieving packets. This can help on slower CPUs but will use more system resources overall. It will negatively impact performance on faster CPUs." QueueSize="Queue Size" QueueSize.Description="Queue this many frames for the encoder before attempting to retrieve packets. A higher value introduces more latency while a lower value may cause overloaded encoding. It is not recommended to change this from the default." View="View Mode" View.Description="Which properties should be visible?\n- '\@View.Basic\@' is the most basic view and recommended for everyone.\n- '\@View.Advanced\@' shows more options like multi-GPU support and is recommended for advanced users.\n- '\@View.Expert\@' shows dangerous options that have the potential to cause serious problems and is only recommended if you truly know what you are doing.\n- '\@View.Master\@' removes all viewing restrictions and shows all options including ones that can cause hardware defects.\n\nOBS and the plugin maintainers are not responsible for any damages resulting from your actions, as per license agreement. Using '\@View.Master\@' disqualifies you from any kind of support for any issues that may arise." View.Basic="Basic" View.Advanced="Advanced" View.Expert="Expert" View.Master="Master" Debug="Debug" Debug.Description="Enable additional debug messages to be logged into the OBS log file.\nThis requires that you start OBS Studio with '--verbose --unfiltered_log' (remove the ') on the command line.\nWarning: This will cause lower overall OBS performance due to the number of debug messages this creates, use only when instructed to do so or when trying to figure out a problem with encoding."