VA-API 2.22.0
Loading...
Searching...
No Matches
va_dec_vp9.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2014 Intel Corporation. All Rights Reserved.
3 *
4 * Permission is hereby granted, free of charge, to any person obtaining a
5 * copy of this software and associated documentation files (the
6 * "Software"), to deal in the Software without restriction, including
7 * without limitation the rights to use, copy, modify, merge, publish,
8 * distribute, sub license, and/or sell copies of the Software, and to
9 * permit persons to whom the Software is furnished to do so, subject to
10 * the following conditions:
11 *
12 * The above copyright notice and this permission notice (including the
13 * next paragraph) shall be included in all copies or substantial portions
14 * of the Software.
15 *
16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
17 * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
19 * IN NO EVENT SHALL INTEL AND/OR ITS SUPPLIERS BE LIABLE FOR
20 * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
21 * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
22 * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23 */
24
31
32#ifndef VA_DEC_VP9_H
33#define VA_DEC_VP9_H
34
35#ifdef __cplusplus
36extern "C" {
37#endif
38
46
47
48
49
58typedef struct _VADecPictureParameterBufferVP9 {
62 uint16_t frame_width;
66 uint16_t frame_height;
67
76 VASurfaceID reference_frames[8];
77
78 union {
79 struct {
83 uint32_t subsampling_x : 1;
84 uint32_t subsampling_y : 1;
85 uint32_t frame_type : 1;
86 uint32_t show_frame : 1;
87 uint32_t error_resilient_mode : 1;
88 uint32_t intra_only : 1;
89 uint32_t allow_high_precision_mv : 1;
90 uint32_t mcomp_filter_type : 3;
91 uint32_t frame_parallel_decoding_mode : 1;
92 uint32_t reset_frame_context : 2;
93 uint32_t refresh_frame_context : 1;
94 uint32_t frame_context_idx : 2;
95 uint32_t segmentation_enabled : 1;
96
104
109 uint32_t last_ref_frame : 3;
118 uint32_t golden_ref_frame : 3;
127 uint32_t alt_ref_frame : 3;
140 uint32_t lossless_flag : 1;
141 } bits;
142 uint32_t value;
143 } pic_fields;
144
145 /* following parameters have same syntax with those in VP9 code */
146 uint8_t filter_level;
147 uint8_t sharpness_level;
148
166
171
177 uint8_t segment_pred_probs[3];
178
182 uint8_t profile;
183
187 uint8_t bit_depth;
188
190 uint32_t va_reserved[VA_PADDING_MEDIUM];
191
193
194
195
204typedef struct _VASegmentParameterVP9 {
205 union {
206 struct {
221 uint16_t segment_reference : 2;
227 } fields;
228 uint16_t value;
229 } segment_flags;
230
235 uint8_t filter_level[4][2];
256
259
261
262
263
279typedef struct _VASliceParameterBufferVP9 {
294
299
302
304
305
307
308#ifdef __cplusplus
309}
310#endif
311
312#endif /* VA_DEC_VP9_H */
#define VA_PADDING_LOW
Definition va.h:360
VP9 Decoding Picture Parameter Buffer Structure.
Definition va_dec_vp9.h:58
uint32_t golden_ref_frame_sign_bias
Sign Bias of the GOLDERN reference frame. Corresponds to ref_frame_sign_bias[GOLDERN_FRAME] in VP9 co...
Definition va_dec_vp9.h:122
uint16_t first_partition_size
The byte count of compressed header the bitstream buffer, which corresponds to syntax first_partition...
Definition va_dec_vp9.h:170
VASurfaceID reference_frames[8]
Surface indices of reference frames in DPB.
Definition va_dec_vp9.h:76
uint32_t last_ref_frame
Index of reference_frames[] and points to the LAST reference frame. It corresponds to active_ref_idx[...
Definition va_dec_vp9.h:109
uint32_t alt_ref_frame
Index of reference_frames[] and points to the ALTERNATE reference frame. Corresponds to active_ref_id...
Definition va_dec_vp9.h:127
uint32_t golden_ref_frame
Index of reference_frames[] and points to the GOLDERN reference frame. It corresponds to active_ref_i...
Definition va_dec_vp9.h:118
uint16_t frame_height
picture height Picture original resolution. The value may not be multiple of 8.
Definition va_dec_vp9.h:66
uint32_t segmentation_update_map
corresponds to variable update_mb_segmentation_map in VP9 code.
Definition va_dec_vp9.h:103
uint32_t lossless_flag
Lossless Mode LosslessFlag = base_qindex == 0 && y_dc_delta_q == 0 && uv_dc_delta_q == 0 && uv_ac_del...
Definition va_dec_vp9.h:140
uint8_t bit_depth
VP9 bit depth per sample same for both luma and chroma samples.
Definition va_dec_vp9.h:187
uint32_t va_reserved[VA_PADDING_MEDIUM]
Reserved bytes for future use, must be zero.
Definition va_dec_vp9.h:190
uint32_t segmentation_temporal_update
corresponds to variable temporal_update in VP9 code.
Definition va_dec_vp9.h:99
uint8_t log2_tile_columns
number of tile columns specified by (1 << log2_tile_columns). It corresponds the variable with same n...
Definition va_dec_vp9.h:156
uint8_t log2_tile_rows
number of tile rows specified by (1 << log2_tile_rows). It corresponds the variable with same name in...
Definition va_dec_vp9.h:152
uint32_t alt_ref_frame_sign_bias
Sign Bias of the ALTERNATE reference frame. Corresponds to ref_frame_sign_bias[ALTREF_FRAME] in VP9 c...
Definition va_dec_vp9.h:131
uint8_t mb_segment_tree_probs[7]
Definition va_dec_vp9.h:176
uint16_t frame_width
picture width Picture original resolution. The value may not be multiple of 8.
Definition va_dec_vp9.h:62
uint8_t frame_header_length_in_bytes
Number of bytes taken up by the uncompressed frame header, which corresponds to byte length of functi...
Definition va_dec_vp9.h:165
uint32_t last_ref_frame_sign_bias
Sign Bias of the LAST reference frame. It corresponds to ref_frame_sign_bias[LAST_FRAME] in VP9 code.
Definition va_dec_vp9.h:113
uint8_t profile
VP9 Profile definition value range [0..3].
Definition va_dec_vp9.h:182
uint32_t subsampling_x
flags for current picture same syntax and semantic as those in VP9 code
Definition va_dec_vp9.h:83
VP9 Segmentation Parameter Data Structure.
Definition va_dec_vp9.h:204
uint16_t segment_reference_skipped
Indicates if per segment skip feature is enabled. Corresponding to variable feature_enabled when j ==...
Definition va_dec_vp9.h:226
int16_t chroma_dc_quant_scale
Specifies per segment Chroma DC quantization scale. Corresponding to uv_dequant[qindex][0] in vp9_mb_...
Definition va_dec_vp9.h:255
uint8_t filter_level[4][2]
Specifies the filter level information per segment. The value corresponds to variable lfi->lvl[seg][r...
Definition va_dec_vp9.h:235
uint16_t segment_reference
Specifies per segment reference indication. 0: reserved 1: Last ref 2: golden 3: altref Value can be ...
Definition va_dec_vp9.h:221
int16_t luma_dc_quant_scale
Specifies per segment Luma DC quantization scale. Corresponding to y_dequant[qindex][0] in vp9_mb_ini...
Definition va_dec_vp9.h:245
uint32_t va_reserved[VA_PADDING_LOW]
Reserved bytes for future use, must be zero.
Definition va_dec_vp9.h:258
int16_t chroma_ac_quant_scale
Specifies per segment Chroma AC quantization scale. Corresponding to uv_dequant[qindex][1] in vp9_mb_...
Definition va_dec_vp9.h:250
uint16_t segment_reference_enabled
Indicates if per segment reference frame indicator is enabled. Corresponding to variable feature_enab...
Definition va_dec_vp9.h:212
int16_t luma_ac_quant_scale
Specifies per segment Luma AC quantization scale. Corresponding to y_dequant[qindex][1] in vp9_mb_ini...
Definition va_dec_vp9.h:240
VP9 Slice Parameter Buffer Structure.
Definition va_dec_vp9.h:279
uint32_t slice_data_offset
Definition va_dec_vp9.h:289
uint32_t slice_data_size
The byte count of current frame in the bitstream buffer, starting from first byte of the buffer....
Definition va_dec_vp9.h:285
VASegmentParameterVP9 seg_param[8]
per segment information
Definition va_dec_vp9.h:298
uint32_t slice_data_flag
Definition va_dec_vp9.h:293
uint32_t va_reserved[VA_PADDING_LOW]
Reserved bytes for future use, must be zero.
Definition va_dec_vp9.h:301