pub struct HevcSpsInfo {Show 38 fields
pub sps_video_parameter_set_id: u8,
pub sps_seq_parameter_set_id: u8,
pub sps_max_sub_layers_minus1: u8,
pub sps_temporal_id_nesting_flag: bool,
pub chroma_format_idc: u8,
pub separate_colour_plane_flag: bool,
pub bit_depth_luma: u8,
pub bit_depth_chroma: u8,
pub width: Option<u32>,
pub height: Option<u32>,
pub conf_win_left_offset: u32,
pub conf_win_right_offset: u32,
pub conf_win_top_offset: u32,
pub conf_win_bottom_offset: u32,
pub log2_max_pic_order_cnt_lsb_minus4: u8,
pub log2_min_luma_coding_block_size_minus3: u8,
pub log2_diff_max_min_luma_coding_block_size: u8,
pub log2_min_luma_transform_block_size_minus2: u8,
pub log2_diff_max_min_luma_transform_block_size: u8,
pub max_transform_hierarchy_depth_inter: u8,
pub max_transform_hierarchy_depth_intra: u8,
pub scaling_list_enabled_flag: bool,
pub sps_sub_layer_ordering_info_present_flag: bool,
pub amp_enabled_flag: bool,
pub sample_adaptive_offset_enabled_flag: bool,
pub pcm_enabled_flag: bool,
pub pcm_loop_filter_disabled_flag: bool,
pub num_short_term_ref_pic_sets: u8,
pub long_term_ref_pics_present_flag: bool,
pub sps_temporal_mvp_enabled_flag: bool,
pub strong_intra_smoothing_enabled_flag: bool,
pub profile_idc: u8,
pub level_idc: u8,
pub tier_flag: bool,
pub max_dec_pic_buffering_minus1: [u8; 7],
pub max_num_reorder_pics: [u8; 7],
pub max_latency_increase_plus1: [u32; 7],
pub profile_compatibility_flags: u32,
}Expand description
Parsed HEVC SPS fields relevant to the pipeline.
Width/height are post-conformance-window (§7.4.3.2.1): per the spec,
output luma dimensions = pic_width_in_luma_samples - SubWidthC * (conf_win_left + conf_win_right) (and analogously for height).
Fields§
§sps_video_parameter_set_id: u8§sps_seq_parameter_set_id: u8§sps_max_sub_layers_minus1: u8§sps_temporal_id_nesting_flag: bool§chroma_format_idc: u8§separate_colour_plane_flag: bool§bit_depth_luma: u8§bit_depth_chroma: u8§width: Option<u32>§height: Option<u32>§conf_win_left_offset: u32Post-conformance-window crop offsets in chroma samples.
conf_win_right_offset: u32§conf_win_top_offset: u32§conf_win_bottom_offset: u32§log2_max_pic_order_cnt_lsb_minus4: u8§log2_min_luma_coding_block_size_minus3: u8§log2_diff_max_min_luma_coding_block_size: u8§log2_min_luma_transform_block_size_minus2: u8§log2_diff_max_min_luma_transform_block_size: u8§max_transform_hierarchy_depth_inter: u8§max_transform_hierarchy_depth_intra: u8§scaling_list_enabled_flag: bool§sps_sub_layer_ordering_info_present_flag: bool§amp_enabled_flag: bool§sample_adaptive_offset_enabled_flag: bool§pcm_enabled_flag: bool§pcm_loop_filter_disabled_flag: boolOnly meaningful when pcm_enabled_flag is set; defaults to false.
num_short_term_ref_pic_sets: u8§long_term_ref_pics_present_flag: bool§sps_temporal_mvp_enabled_flag: bool§strong_intra_smoothing_enabled_flag: bool§profile_idc: u8§level_idc: u8§tier_flag: bool§max_dec_pic_buffering_minus1: [u8; 7]Sub-layer DPB management triple, one per sub-layer. Index 0..=sps_max_sub_layers_minus1
are populated; indices above are left at defaults. Vulkan Video
requires these to be conveyed via StdVideoH265DecPicBufMgr.
max_num_reorder_pics: [u8; 7]§max_latency_increase_plus1: [u32; 7]§profile_compatibility_flags: u32profile_compatibility_flag[32] — high bit at index 0. Needed
for the Std PTL struct.
Trait Implementations§
Source§impl Clone for HevcSpsInfo
impl Clone for HevcSpsInfo
Source§fn clone(&self) -> HevcSpsInfo
fn clone(&self) -> HevcSpsInfo
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for HevcSpsInfo
impl Debug for HevcSpsInfo
impl Eq for HevcSpsInfo
Source§impl PartialEq for HevcSpsInfo
impl PartialEq for HevcSpsInfo
Source§fn eq(&self, other: &HevcSpsInfo) -> bool
fn eq(&self, other: &HevcSpsInfo) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for HevcSpsInfo
Auto Trait Implementations§
impl Freeze for HevcSpsInfo
impl RefUnwindSafe for HevcSpsInfo
impl Send for HevcSpsInfo
impl Sync for HevcSpsInfo
impl Unpin for HevcSpsInfo
impl UnsafeUnpin for HevcSpsInfo
impl UnwindSafe for HevcSpsInfo
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