pub struct Sps {Show 48 fields
seq_parameter_set_id: u8,
profile_idc: u8,
constraint_set0_flag: bool,
constraint_set1_flag: bool,
constraint_set2_flag: bool,
constraint_set3_flag: bool,
constraint_set4_flag: bool,
constraint_set5_flag: bool,
level_idc: Level,
chroma_format_idc: u8,
separate_colour_plane_flag: bool,
bit_depth_luma_minus8: u8,
bit_depth_chroma_minus8: u8,
qpprime_y_zero_transform_bypass_flag: bool,
seq_scaling_matrix_present_flag: bool,
scaling_lists_4x4: [[u8; 16]; 6],
scaling_lists_8x8: [[u8; 64]; 6],
log2_max_frame_num_minus4: u8,
pic_order_cnt_type: u8,
log2_max_pic_order_cnt_lsb_minus4: u8,
delta_pic_order_always_zero_flag: bool,
offset_for_non_ref_pic: i32,
offset_for_top_to_bottom_field: i32,
num_ref_frames_in_pic_order_cnt_cycle: u8,
offset_for_ref_frame: [i32; 255],
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_cropping_flag: bool,
frame_crop_left_offset: u32,
frame_crop_right_offset: u32,
frame_crop_top_offset: u32,
frame_crop_bottom_offset: u32,
chroma_array_type: u8,
max_frame_num: u32,
width: u32,
height: u32,
crop_rect_width: u32,
crop_rect_height: u32,
crop_rect_x: u32,
crop_rect_y: u32,
expected_delta_per_pic_order_cnt_cycle: i32,
vui_parameters_present_flag: bool,
vui_parameters: VuiParams,
}
Expand description
A H264 Sequence Parameter Set. A syntax structure containing syntax elements that apply to zero or more entire coded video sequences as determined by the content of a seq_parameter_set_id syntax element found in the picture parameter set referred to by the pic_parameter_set_id syntax element found in each slice header.
Fields
seq_parameter_set_id: u8
Identifies the sequence parameter set that is referred to by the picture parameter set
profile_idc: u8
Profile to which the coded video sequence conforms
constraint_set0_flag: bool
Retains the same meaning as in the specification. See 7.4.2.1.1
constraint_set1_flag: bool
Retains the same meaning as in the specification. See 7.4.2.1.1
constraint_set2_flag: bool
Retains the same meaning as in the specification. See 7.4.2.1.1
constraint_set3_flag: bool
Retains the same meaning as in the specification. See 7.4.2.1.1
constraint_set4_flag: bool
Retains the same meaning as in the specification. See 7.4.2.1.1
constraint_set5_flag: bool
Retains the same meaning as in the specification. See 7.4.2.1.1
level_idc: Level
Level to which the coded video sequence conforms
chroma_format_idc: u8
Specifies the chroma sampling relative to the luma sampling as specified in clause 6.2.
separate_colour_plane_flag: bool
Specifies whether the three colour components of the 4:4:4 chroma format are coded separately.
bit_depth_luma_minus8: u8
Specifies the bit depth of the samples of the luma array and the value of the luma quantization parameter range offset QpBdOffsetY. See 7-3 and 7-4.
bit_depth_chroma_minus8: u8
Specifies the bit depth of the samples of the chroma arrays and the value of the chroma quantization parameter range offset QpBdOffsetC. See 7-5 and 7-6.
qpprime_y_zero_transform_bypass_flag: bool
qpprime_y_zero_transform_bypass_flag equal to 1 specifies that, when QP′Y is equal to 0, a transform bypass operation for the transform coefficient decoding process and picture construction process prior to deblocking filter process as specified in clause 8.5 shall be applied. qpprime_y_zero_transform_bypass_flag equal to 0 specifies that the transform coefficient decoding process and picture construction process prior to deblocking filter process shall not use the transform bypass operation QP′Y is defined in 7-38 as QP′Y = QPY + QpBdOffsetY
seq_scaling_matrix_present_flag: bool
Whether seq_scaling_list_present_flag[i]
for i = 0..7 or i = 0..11 is
present or whether the sequence level scaling list shall be specified by
Flat_4x4_16 for i = 0..5 and flat_8x8_16 for i = 6..11
scaling_lists_4x4: [[u8; 16]; 6]
4x4 Scaling list as read with 7.3.2.1.1.1
scaling_lists_8x8: [[u8; 64]; 6]
8x8 Scaling list as read with 7.3.2.1.1.1
log2_max_frame_num_minus4: u8
Specifies the value of the variable MaxFrameNum that is used in frame_num related derivations as follows: MaxFrameNum = 2 ^ (log2_max_frame_num_minus4 + 4 )
pic_order_cnt_type: u8
Specifies the method to decode picture order count (as specified in clause 8.2.1)
log2_max_pic_order_cnt_lsb_minus4: u8
Specifies the value of the variable MaxPicOrderCntLsb that is used in the decoding process for picture order count as specified in clause 8.2.1 as follows: MaxPicOrderCntLsb = 2 ^ ( log2_max_pic_order_cnt_lsb_minus4 + 4 ).
delta_pic_order_always_zero_flag: bool
If true, specifies that delta_pic_order_cnt[0]
and
delta_pic_order_cnt[1]
are not present in the slice headers of the
sequence and shall be inferred to be equal to 0.
If false, specifies that delta_pic_order_cnt[0]
is present in the
slice headers of the sequence and delta_pic_order_cnt[1]
may be
present in the slice headers of the sequence.
offset_for_non_ref_pic: i32
Used to calculate the picture order count of a non-reference picture as specified in clause 8.2.1.
offset_for_top_to_bottom_field: i32
Used to calculate the picture order count of a bottom field as specified in clause 8.2.1.
num_ref_frames_in_pic_order_cnt_cycle: u8
Used in the decoding process for picture order count as specified in clause 8.2.1
offset_for_ref_frame: [i32; 255]
An element of a list of num_ref_frames_in_pic_order_cnt_cycle values used in the decoding process for picture order count as specified in clause 8.2.
max_num_ref_frames: u32
Specifies the maximum number of short-term and long-term reference frames, complementary reference field pairs, and non-paired reference fields that may be used by the decoding process for inter prediction of any picture in the coded video sequence. Also determines the size of the sliding window operation as specified in clause 8.2.5.3.
gaps_in_frame_num_value_allowed_flag: bool
Specifies the allowed values of frame_num as specified in clause 7.4.3 and the decoding process in case of an inferred gap between values of frame_num as specified in clause 8.2.5.2
pic_width_in_mbs_minus1: u32
Plus 1 specifies the width of each decoded picture in units of macroblocks.
pic_height_in_map_units_minus1: u32
Plus 1 specifies the height in slice group map units of a decoded frame or field.
frame_mbs_only_flag: bool
If true, specifies that every coded picture of the coded video sequence is a coded frame containing only frame macroblocks, else specifies that coded pictures of the coded video sequence may either be coded fields or coded frames.
mb_adaptive_frame_field_flag: bool
If true, specifies the possible use of switching between frame and field macroblocks within frames, else, specifies no switching between frame and field macroblocks within a picture.
direct_8x8_inference_flag: bool
Specifies the method used in the derivation process for luma motion vectors for B_Skip, B_Direct_16x16 and B_Direct_8x8 as specified in clause 8.4.1.2.
frame_cropping_flag: bool
If true, specifies that the frame cropping offset parameters follow next in the sequence parameter, else specifies that the frame cropping offset parameters are not present
frame_crop_left_offset: u32
Specify the samples of the pictures in the coded video sequence that are output from the decoding process, in terms of a rectangular region specified in frame coordinates for output.
frame_crop_right_offset: u32
Specify the samples of the pictures in the coded video sequence that are output from the decoding process, in terms of a rectangular region specified in frame coordinates for output.
frame_crop_top_offset: u32
Specify the samples of the pictures in the coded video sequence that are output from the decoding process, in terms of a rectangular region specified in frame coordinates for output.
frame_crop_bottom_offset: u32
Specify the samples of the pictures in the coded video sequence that are output from the decoding process, in terms of a rectangular region specified in frame coordinates for output.
chroma_array_type: u8
Same as ChromaArrayType. See the definition in the specification.
max_frame_num: u32
Same as MaxFrameNum. See 7-10 in the specification.
width: u32
See 7-13 through 7-17 in the specification.
height: u32
See 7-13 through 7-17 in the specification.
crop_rect_width: u32
See the documentation for frame_crop_{left|right|top|bottom}_offset in the specification
crop_rect_height: u32
See the documentation for frame_crop_{left|right|top|bottom}_offset in the specification
crop_rect_x: u32
See the documentation for frame_crop_{left|right|top|bottom}_offset in the specification
crop_rect_y: u32
See the documentation for frame_crop_{left|right|top|bottom}_offset in the specification
expected_delta_per_pic_order_cnt_cycle: i32
Same as ExpectedDeltaPerPicOrderCntCycle, see 7-12 in the specification.
vui_parameters_present_flag: bool
vui_parameters: VuiParams