oa::video::VideoEncodeSettings

Checked settings for the donor’s H.264 High or H.265 Main encode path. Construct this value independently of hardware, then call validate_for_device with the exact profile’s capability query. A successful preflight is not proof of session support.

StRust public API

Declaration

pub struct VideoEncodeSettings { pub profile: VideoEncodeProfile, pub width: u32, pub height: u32, pub frame_rate: u32, pub gop_size: u32, pub rate_control: VideoRateControl, pub bitrate: u32, pub max_bitrate: u32, pub constant_qp: u32, pub quality_level: u32, pub async_depth: u32, pub max_b_frames: u32, }
Public Rust declaration.

Public Methods

pub fn validate_for_device( self, caps: VideoEncodeCapabilities, ) -> Result<VideoEncodePlan>
fn clone(&self) -> VideoEncodeSettings
fn fmt(&self, f: &mut Formatter<'_>) -> Result
fn eq(&self, other: &VideoEncodeSettings) -> bool

Associated Functions

pub const fn new(profile: VideoEncodeProfile, width: u32, height: u32) -> Self

Public Data Members

profileVideoEncodeProfilefield
widthu32field
heightu32field
frame_rateu32field
gop_sizeu32field
rate_controlVideoRateControlfield
bitrateu32field
max_bitrateu32field
constant_qpu32field
quality_levelu32field
async_depthu32field
max_b_framesu32field

Public Method Documentation

pub fn validate_for_device( self, caps: VideoEncodeCapabilities ) -> Result<VideoEncodePlan>
No public source comment is attached to this declaration.
fn clone( &self ) -> VideoEncodeSettings
No public source comment is attached to this declaration.
fn fmt( &self, f: &mut Formatter<'_> ) -> Result
No public source comment is attached to this declaration.
fn eq( &self, other: &VideoEncodeSettings ) -> bool
No public source comment is attached to this declaration.
pub const fn new( profile: VideoEncodeProfile, width: u32, height: u32 ) -> Self
No public source comment is attached to this declaration.