pub struct H264Sps {Show 27 fields
pub profile_idc: u32,
pub constraint_set0_flags: bool,
pub constraint_set1_flags: bool,
pub constraint_set2_flags: bool,
pub constraint_set3_flags: bool,
pub constraint_set4_flags: bool,
pub level_idc: u32,
pub seq_parameter_set_id: u32,
pub chroma_format_idc: u32,
pub separate_color_plane_flag: bool,
pub bit_depth_luma_minus8: u32,
pub bit_depth_chroma_minus8: u32,
pub qpprime_y_zero_transform_bypass_flag: bool,
pub seq_scaling_list_present_flag: Option<u32>,
pub log2_max_frame_num_minus4: u32,
pub pict_order_cnt_type: u32,
pub max_num_ref_frames: u32,
pub gaps_in_frame_num_value_allowed_flag: bool,
pub pic_width_in_mbs_minus1: u32,
pub pic_height_in_map_units_minus1: u32,
pub frame_mbs_only_flag: bool,
pub mb_adaptive_frame_field_flag: bool,
pub direct_8x8_inference_flag: bool,
pub frame_crop_left_offset: Option<u32>,
pub frame_crop_right_offset: Option<u32>,
pub frame_crop_top_offset: Option<u32>,
pub frame_crop_bottom_offset: Option<u32>,
}
Expand description
Sequence Parameter Set for h264 video
Semantics are defined in ITU-T H.264 (04/2017)
Fields§
§profile_idc: u32
§constraint_set0_flags: bool
§constraint_set1_flags: bool
§constraint_set2_flags: bool
§constraint_set3_flags: bool
§constraint_set4_flags: bool
§level_idc: u32
§seq_parameter_set_id: u32
§chroma_format_idc: u32
§separate_color_plane_flag: bool
§bit_depth_luma_minus8: u32
§bit_depth_chroma_minus8: u32
§qpprime_y_zero_transform_bypass_flag: bool
§seq_scaling_list_present_flag: Option<u32>
§log2_max_frame_num_minus4: u32
§pict_order_cnt_type: u32
§max_num_ref_frames: u32
§gaps_in_frame_num_value_allowed_flag: bool
§pic_width_in_mbs_minus1: u32
§pic_height_in_map_units_minus1: u32
§frame_mbs_only_flag: bool
§mb_adaptive_frame_field_flag: bool
§direct_8x8_inference_flag: bool
§frame_crop_left_offset: Option<u32>
§frame_crop_right_offset: Option<u32>
§frame_crop_top_offset: Option<u32>
§frame_crop_bottom_offset: Option<u32>
Implementations§
source§impl H264Sps
impl H264Sps
sourcepub fn try_parse(buffer: &[u8]) -> Result<Self, SpsParsingError>
pub fn try_parse(buffer: &[u8]) -> Result<Self, SpsParsingError>
Parses a sequence parameter set from a buffer.
sourcepub fn parse_from_avcc(avcc: &Avc1Box) -> Result<Self, SpsParsingError>
pub fn parse_from_avcc(avcc: &Avc1Box) -> Result<Self, SpsParsingError>
Parses a sequence parameter set from an AVC configuration box.
sourcepub fn pixel_layout(&self) -> Result<YuvPixelLayout, SpsParsingError>
pub fn pixel_layout(&self) -> Result<YuvPixelLayout, SpsParsingError>
Return the pixel layout specified in the SPS.
None means that the value in the SPS was invalid.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for H264Sps
impl RefUnwindSafe for H264Sps
impl Send for H264Sps
impl Sync for H264Sps
impl Unpin for H264Sps
impl UnwindSafe for H264Sps
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more