pub struct Header {Show 34 fields
pub profile: Profile,
pub bit_depth: BitDepth,
pub subsampling_x: bool,
pub subsampling_y: bool,
pub color_space: ColorSpace,
pub color_range: ColorRange,
pub show_existing_frame: bool,
pub frame_to_show_map_idx: u8,
pub frame_type: FrameType,
pub show_frame: bool,
pub error_resilient_mode: bool,
pub width: u32,
pub height: u32,
pub render_and_frame_size_different: bool,
pub render_width: u32,
pub render_height: u32,
pub intra_only: bool,
pub reset_frame_context: u8,
pub refresh_frame_flags: u8,
pub ref_frame_idx: [u8; 3],
pub ref_frame_sign_bias: [u8; 4],
pub allow_high_precision_mv: bool,
pub interpolation_filter: InterpolationFilter,
pub refresh_frame_context: bool,
pub frame_parallel_decoding_mode: bool,
pub frame_context_idx: u8,
pub lf: LoopFilterParams,
pub quant: QuantizationParams,
pub seg: SegmentationParams,
pub tile_cols_log2: u8,
pub tile_rows_log2: u8,
pub lossless: bool,
pub header_size_in_bytes: u16,
pub uncompressed_header_size_in_bytes: u16,
}Expand description
A VP9 frame header.
Fields§
§profile: ProfileA subset of syntax, semantics and algorithms defined in a part.
bit_depth: BitDepthThe bit depth of the frame.
subsampling_x: boolSpecifies the chroma subsampling format.
subsampling_y: boolSpecifies the chroma subsampling format.
color_space: ColorSpaceSpecifies the color space of the stream.
color_range: ColorRangeSpecifies the black level and range of the luma and chroma signals as specified in Rec. ITU-R BT.709-6 and Rec. ITU-R BT.2020-2
show_existing_frame: boolIndicates the frame indexed by frame_to_show_map_idx is to be displayed. If unset, indicates that further processing is required.
frame_to_show_map_idx: u8Specifies the frame to be displayed. It is only available if show_existing_frame is set.
frame_type: FrameTypeIndicates whether a frame is a key frame.
show_frame: boolWhether this frame should be displayed.
error_resilient_mode: boolWhether error resilient mode is enabled.
width: u32The width of the frame in pixels.
height: u32The height of the frame in pixels.
render_and_frame_size_different: boolIf unset, means that the render width and height are inferred from the frame width and height. If set, means that the render width and height are explicitly coded in the bitstream.
render_width: u32The render width of the frame in pixels.
render_height: u32The render height of the frame in pixels.
intra_only: boolIf set, indicates that this frame is an intra-only frame. If unset, indicates that this frame is a inter frame.
reset_frame_context: u8Specifies whether the frame context should be reset to default values.
refresh_frame_flags: u8Contains a bitmask that specifies which reference frame slots will be updated with the current frame after it is decoded.
ref_frame_idx: [u8; 3]Specifies which reference frames are used by inter frames. It is a requirement of bitstream conformance that the selected reference frames match the current frame in bit depth, profile, chroma subsampling, and color space.
ref_frame_sign_bias: [u8; 4]Specifies the intended direction of the motion vector in time for each reference frame. A sign bias equal to 0 indicates that the reference frame is a backwards reference; a sign bias equal to 1 indicates that the reference frame is a forwards reference
allow_high_precision_mv: boolIf unset, specifies that motion vectors are specified to quarter pel precision. If set, specifies that motion vectors are specified to eighth pel precision.
interpolation_filter: InterpolationFilterThe interpolation filter parameters.
refresh_frame_context: boolIf set, indicates that the probabilities computed for this frame (after adapting to the observed frequencies if adaption is enabled) should be stored for reference by future frames. If unset, indicates that the probabilities should be discarded at the end of the frame.
frame_parallel_decoding_mode: boolWhether parallel decoding mode is enabled.
frame_context_idx: u8Indicates the frame context to use.
lf: LoopFilterParamsThe loop filter parameters
quant: QuantizationParamsThe quantization parameters.
seg: SegmentationParamsThe segmentation parameters
tile_cols_log2: u8Specifies the base 2 logarithm of the width of each tile (where the width is measured in units of 8x8 blocks). It is a requirement of bitstream conformance that tile_cols_log2 is less than or equal to 6.
tile_rows_log2: u8Specifies the base 2 logarithm of the height of each tile (where the height is measured in units of 8x8 blocks).
lossless: boolComputed from the syntax elements. If set, indicates that the frame is coded using a special 4x4 transform designed for encoding frames that are bit-identical with the original frames.
header_size_in_bytes: u16Indicates the size of the compressed header in bytes.
uncompressed_header_size_in_bytes: u16Indicates the size of the uncompressed header in bytes.