VA-API  2.22.0
va_enc_av1.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2021 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 
33 #ifndef VA_ENC_AV1_H
34 #define VA_ENC_AV1_H
35 
36 #ifdef __cplusplus
37 extern "C" {
38 #endif
39 
40 #include <stdint.h>
41 
59 typedef union _VAConfigAttribValEncAV1 {
60  struct {
71  uint32_t support_filter_intra : 2;
91  uint32_t support_warped_motion : 2;
96  uint32_t support_palette_mode : 2;
101  uint32_t support_dual_filter : 2;
106  uint32_t support_jnt_comp : 2;
111  uint32_t support_ref_frame_mvs : 2;
116  uint32_t support_superres : 2;
121  uint32_t support_restoration : 2;
126  uint32_t support_allow_intrabc : 2;
133  uint32_t reserved : 4;
134  } bits;
135  uint32_t value;
137 
139 typedef union _VAConfigAttribValEncAV1Ext1 {
140  struct {
149  uint32_t interpolation_filter : 5;
168  uint32_t reserved : 11;
169  } bits;
170  uint32_t value;
172 
174 typedef union _VAConfigAttribValEncAV1Ext2 {
175  struct {
186  uint32_t obu_size_bytes_minus1 : 2;
193  uint32_t tx_mode_support : 3;
198  uint32_t max_tile_num_minus1 : 13;
200  uint32_t reserved : 12;
201  } bits;
202  uint32_t value;
204 
211 typedef enum {
229 
236 typedef struct _VAEncSequenceParameterBufferAV1 {
240  uint8_t seq_profile;
241 
245  uint8_t seq_level_idx;
246 
250  uint8_t seq_tier;
251 
256 
258  uint32_t intra_period;
259 
263  uint32_t ip_period;
264 
265  /* \brief RC related fields. RC modes are set with VAConfigAttribRateControl. */
266  /* For AV1, CBR implies HRD conformance and VBR implies no HRD conformance. */
267 
279  uint32_t bits_per_second;
280 
281  union {
282  struct {
284  uint32_t still_picture : 1;
288  uint32_t enable_filter_intra : 1;
296  uint32_t enable_warped_motion : 1;
298  uint32_t enable_dual_filter : 1;
300  uint32_t enable_order_hint : 1;
302  uint32_t enable_jnt_comp : 1;
304  uint32_t enable_ref_frame_mvs : 1;
306  uint32_t enable_superres : 1;
308  uint32_t enable_cdef : 1;
310  uint32_t enable_restoration : 1;
312  uint32_t bit_depth_minus8 : 3;
314  uint32_t subsampling_x : 1;
316  uint32_t subsampling_y : 1;
318  uint32_t mono_chrome : 1;
320  uint32_t reserved_bits : 12;
321  } bits;
322  uint32_t value;
323  } seq_fields;
324 
329 
331  uint32_t va_reserved[VA_PADDING_HIGH];
333 
334 #define VA_AV1_MAX_SEGMENTS 8
335 #define VA_AV1_SEG_LVL_MAX 8
336 
340 typedef struct _VAEncSegParamAV1 {
341  union {
342  struct {
347  uint8_t segmentation_enabled : 1;
348 
369  uint8_t reserved : 5;
370 
371  } bits;
372  uint8_t value;
373  } seg_flags;
374 
394  uint8_t segment_number;
395 
404  int16_t feature_data[VA_AV1_MAX_SEGMENTS][VA_AV1_SEG_LVL_MAX];
405 
409  uint8_t feature_mask[VA_AV1_MAX_SEGMENTS];
410 
412  uint32_t va_reserved[VA_PADDING_LOW];
414 
429 typedef struct _VAEncSegMapBufferAV1 {
432 
440  uint8_t *pSegmentMap;
442 
443 typedef enum {
455 
456 typedef struct _VAEncWarpedMotionParamsAV1 {
457 
460 
466  int32_t wmmat[8];
467 
469  uint8_t invalid;
470 
472  uint32_t va_reserved[VA_PADDING_LOW];
473 
474 } VAEncWarpedMotionParamsAV1;
475 
486 typedef union {
487  struct {
493  uint32_t search_idx0 : 3;
499  uint32_t search_idx1 : 3;
505  uint32_t search_idx2 : 3;
511  uint32_t search_idx3 : 3;
517  uint32_t search_idx4 : 3;
523  uint32_t search_idx5 : 3;
529  uint32_t search_idx6 : 3;
530 
532  uint32_t Reserved : 11;
533  } fields;
534  uint32_t value;
536 
543 typedef struct _VAEncPictureParameterBufferAV1 {
552 
554  VASurfaceID reconstructed_frame;
555 
558 
570  VASurfaceID reference_frames[8];
571 
585  uint8_t ref_frame_idx[7];
586 
592 
600 
602  uint8_t order_hint;
603 
606 
608  uint8_t reserved8bits1;
609 
614  VARefFrameCtrlAV1 ref_frame_ctrl_l1;
615 
616  union {
617  struct {
625  uint32_t frame_type : 2;
627  uint32_t error_resilient_mode : 1;
629  uint32_t disable_cdf_update : 1;
631  uint32_t use_superres : 1;
635  uint32_t use_ref_frame_mvs : 1;
639  uint32_t reduced_tx_set : 1;
640 
645  uint32_t enable_frame_obu : 1;
646 
648  uint32_t long_term_reference : 1;
652  uint32_t disable_frame_recon : 1;
654  uint32_t allow_intrabc : 1;
658  uint32_t palette_mode_enable : 1;
662  uint32_t force_integer_mv : 1;
664  uint32_t reserved : 16;
665  } bits;
666  uint32_t value;
667  } picture_flags;
668 
676 
681 
683  uint8_t temporal_id;
684 
688  uint8_t filter_level[2];
689  uint8_t filter_level_u;
690  uint8_t filter_level_v;
691 
692  union {
693  struct {
697  uint8_t sharpness_level : 3;
698  uint8_t mode_ref_delta_enabled : 1;
699  uint8_t mode_ref_delta_update : 1;
701  uint8_t reserved : 3;
702  } bits;
703  uint8_t value;
704  } loop_filter_flags;
705 
712 
716  int8_t ref_deltas[8];
717 
721  int8_t mode_deltas[2];
722 
724  uint8_t base_qindex;
725  int8_t y_dc_delta_q;
726  int8_t u_dc_delta_q;
727  int8_t u_ac_delta_q;
728  int8_t v_dc_delta_q;
729  int8_t v_ac_delta_q;
730 
735 
740 
742  union {
743  struct {
745  uint16_t using_qmatrix : 1;
747  uint16_t qm_y : 4;
749  uint16_t qm_u : 4;
751  uint16_t qm_v : 4;
753  uint16_t reserved : 3;
754  } bits;
755  uint16_t value;
756  } qmatrix_flags;
757 
759  uint16_t reserved16bits1;
760 
761  union {
762  struct {
765  uint32_t delta_q_present : 1;
768  uint32_t delta_q_res : 2;
769 
772  uint32_t delta_lf_present : 1;
775  uint32_t delta_lf_res : 2;
778  uint32_t delta_lf_multi : 1;
779 
786  uint32_t tx_mode : 2;
787 
796  uint32_t reference_mode : 2;
800  uint32_t skip_mode_present : 1;
802  uint32_t reserved : 20;
803  } bits;
804  uint32_t value;
805  } mode_control_flags;
806 
809 
811  uint8_t tile_cols;
813  uint8_t tile_rows;
814 
816  uint16_t reserved16bits2;
817 
819  uint16_t width_in_sbs_minus_1[63];
820  uint16_t height_in_sbs_minus_1[63];
821 
825 
833  uint8_t cdef_bits;
836  uint8_t cdef_y_strengths[8];
839  uint8_t cdef_uv_strengths[8];
840 
841  union {
842  struct {
858  uint16_t lr_unit_shift : 2;
862  uint16_t lr_uv_shift : 1;
864  uint16_t reserved : 7;
865  } bits;
866  uint16_t value;
867  } loop_restoration_flags;
868 
870  VAEncWarpedMotionParamsAV1 wm[7];
871 
910 
923 
936 
938  union {
939  struct {
943  uint8_t obu_extension_flag : 1;
947  uint8_t obu_has_size_field : 1;
951  uint8_t temporal_id : 3;
955  uint8_t spatial_id : 2;
957  uint8_t reserved : 1;
958  } bits;
959  uint8_t value;
960  } tile_group_obu_hdr_info;
961 
968 
970  uint16_t reserved16bits3;
971 
979 
981  uint32_t va_reserved[VA_PADDING_HIGH];
983 
987 typedef struct _VAEncTileGroupBufferAV1 {
993  uint8_t tg_start;
999  uint8_t tg_end;
1000 
1002  uint32_t va_reserved[VA_PADDING_LOW];
1004 
1007 #ifdef __cplusplus
1008 }
1009 #endif
1010 
1011 #endif /* VA_ENC_AV1_H */
Segment map data buffer.
Definition: va_enc_av1.h:429
uint32_t bit_depth_minus8
Sepcify number of bits for every channel(Y, U or V).
Definition: va_enc_av1.h:312
uint16_t qm_u
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:749
uint32_t support_dual_filter
Dual filter. Allows setting enable_dual_filter in the SPS.
Definition: va_enc_av1.h:101
uint8_t order_hint_bits_minus_1
Corresponds to AV1 syntax element of the same name. value range [0..7].
Definition: va_enc_av1.h:328
uint32_t reserved
Reserved bits for future, must be zero.
Definition: va_enc_av1.h:168
uint32_t support_ref_frame_mvs
Refrence frame mvs. Allows setting enable_ref_frame_mvs in the SPS.
Definition: va_enc_av1.h:111
AV1 Encoding Sequence Parameter Buffer Structure.
Definition: va_enc_av1.h:236
uint32_t support_allow_intrabc
Allow intraBC. Allows setting allow_intrabc in the PPS.
Definition: va_enc_av1.h:126
uint8_t num_tile_groups_minus1
Number of tile groups minus 1. value range [0..255].
Definition: va_enc_av1.h:680
uint32_t interpolation_filter
Fields indicate which types of interpolation filter are supported. (interpolation_filter & 0x01) == 1...
Definition: va_enc_av1.h:149
uint32_t support_jnt_comp
Jnt compound. Allows setting enable_jnt_comp in the SPS.
Definition: va_enc_av1.h:106
int32_t skip_frames_reduced_size
Indicates the application forced frame size change in bytes. When the value is positive, the frame size is reduced. Otherwise, the frame size increases. The parameter can be used when application skips frames with setting of NumSkipFrames. And application can also use it for other scenarios such as inserting "show_existing_frame" at very end of the sequence.
Definition: va_enc_av1.h:978
uint8_t temporal_id
Temporal id of the frame.
Definition: va_enc_av1.h:683
uint32_t size_in_bits_frame_hdr_obu
Definition: va_enc_av1.h:935
uint8_t tile_cols
Number of tile columns.
Definition: va_enc_av1.h:811
uint32_t search_idx3
Value used as index into ref_frame_idx[] to indicate that frame will be included in the reference lis...
Definition: va_enc_av1.h:511
uint32_t delta_lf_present
Specify whether loop filter delta values are present. value range [0..1].
Definition: va_enc_av1.h:772
uint32_t support_128x128_superblock
Use 128x128 superblock.
Definition: va_enc_av1.h:66
uint32_t support_masked_compound
Masked compound. Allows setting enable_masked_compound in the SPS.
Definition: va_enc_av1.h:86
uint16_t cbframe_restoration_type
Restoration type for Cb frame. value range [0..3].
Definition: va_enc_av1.h:850
uint32_t reserved
Reserved bits for future, must be zero.
Definition: va_enc_av1.h:133
uint32_t intra_period
Period between intra_only frames.
Definition: va_enc_av1.h:258
Affine, 6-parameter.
Definition: va_enc_av1.h:451
uint8_t seq_tier
Tier Setting of current operation point. value range [0..1].
Definition: va_enc_av1.h:250
uint32_t enable_ref_frame_mvs
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:304
Segment parameters.
Definition: va_enc_av1.h:340
uint16_t qm_v
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:751
uint32_t search_idx2
Value used as index into ref_frame_idx[] to indicate that frame will be included in the reference lis...
Definition: va_enc_av1.h:505
uint32_t support_interintra_compound
Interintra compound. Allows setting enable_interintra_compound in the SPS.
Definition: va_enc_av1.h:81
uint32_t allow_screen_content_tools
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:660
uint16_t lr_unit_shift
Corresponds to AV1 syntax element of the same name. value range [0..2].
Definition: va_enc_av1.h:858
uint32_t reserved
Reserved bytes for future use, must be zero.
Definition: va_enc_av1.h:664
uint32_t disable_cdf_update
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:629
uint32_t use_ref_frame_mvs
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:635
uint32_t size_in_bits_cdef_params
Definition: va_enc_av1.h:909
uint16_t reserved16bits3
Reserved bytes for future use, must be zero.
Definition: va_enc_av1.h:970
uint32_t long_term_reference
Indicate the current frame will be used as a long term reference.
Definition: va_enc_av1.h:648
Attribute value for VAConfigAttribEncAV1Ext2.
Definition: va_enc_av1.h:174
uint32_t bits_per_second
Initial bitrate set for this sequence in CBR or VBR modes.
Definition: va_enc_av1.h:279
uint32_t reserved
Reserved bits for future, must be zero.
Definition: va_enc_av1.h:200
uint8_t spatial_id
Corresponds to AV1 syntax element of the same name. value range [0..2].
Definition: va_enc_av1.h:955
uint16_t context_update_tile_id
specify which tile to use for the CDF update. value range [0..127]
Definition: va_enc_av1.h:824
uint16_t crframe_restoration_type
Restoration type for Cr frame. value range [0..3].
Definition: va_enc_av1.h:854
uint8_t hierarchical_level_plus1
When hierarchical_level_plus1 > 0, hierarchical_level_plus1-1 indicates the current frame&#39;s level...
Definition: va_enc_av1.h:591
uint32_t enable_order_hint
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:300
Packed Sequence Parameter Set (SPS).
Definition: va_enc_av1.h:219
uint32_t support_palette_mode
Palette mode. Allows setting palette_mode in the PPS.
Definition: va_enc_av1.h:96
uint32_t segmentMapDataSize
Segment map data size.
Definition: va_enc_av1.h:431
uint32_t subsampling_y
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:316
uint32_t enable_jnt_comp
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:302
uint8_t cdef_bits
Corresponds to AV1 syntax element of the same name. value range [0..3].
Definition: va_enc_av1.h:833
uint32_t bit_offset_loopfilter_params
Definition: va_enc_av1.h:894
uint32_t mono_chrome
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:318
uint32_t ip_period
Period between I/P frames. For hierarchical structure, this is the anchor frame distance.
Definition: va_enc_av1.h:263
VAEncPackedHeaderTypeAV1
Packed header types specific to AV1 encoding.
Definition: va_enc_av1.h:211
uint32_t allow_high_precision_mv
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:633
uint32_t enable_intra_edge_filter
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:290
uint8_t min_base_qindex
Min value for base q index for BRC. value range [1..255].
Definition: va_enc_av1.h:734
uint8_t hierarchical_flag
Indicates whether or not the encoding is in dyadic hierarchical GOP structure. value range [0...
Definition: va_enc_av1.h:255
uint8_t tg_end
Tile group end location. The position of the last tile in current tile group in raster scan order acr...
Definition: va_enc_av1.h:999
uint8_t obu_has_size_field
Corresponds to AV1 syntax element of the same name. value range [0..1].
Definition: va_enc_av1.h:947
uint32_t disable_frame_recon
If the encoded frame will not be referred by other frames, its recon may not be generated in order to...
Definition: va_enc_av1.h:652
uint32_t delta_q_present
Specify whether quantizer index delta values are present. value range [0..1].
Definition: va_enc_av1.h:765
uint8_t interpolation_filter
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:711
Simplified affine with rotation + zoom only, 4-parameter.
Definition: va_enc_av1.h:449
Reference frame control.
Definition: va_enc_av1.h:486
VAEncSegParamAV1 segments
Segmentation parameters.
Definition: va_enc_av1.h:808
uint8_t max_base_qindex
Max value for base q index for BRC. value range [1..255].
Definition: va_enc_av1.h:739
uint32_t segment_feature_support
Type of segment feature supported. (segment_feature_support & 0x01) == 1: SEG_LVL_ALT_Q is supported...
Definition: va_enc_av1.h:166
uint32_t enable_cdef
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:308
Packed picture header.
Definition: va.h:2400
VAGenericID VABufferID
Definition: va.h:2019
uint32_t support_cdef_channel_strength
Cdef channel strength. Allows setting cdef_y_strengths and cdef_uv_strengths in PPS.
Definition: va_enc_av1.h:131
uint8_t segmentation_enabled
Indicates if segmentation is enabled in the current frame. If disabled, all the below parameters in t...
Definition: va_enc_av1.h:347
uint8_t number_skip_frames
The number of frames skipped prior to the current frame. It includes only the skipped frames that wer...
Definition: va_enc_av1.h:967
uint32_t support_filter_intra
Intra filter. Allows setting enable_filter_intra in the SPS.
Definition: va_enc_av1.h:71
uint32_t use_superres
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:631
uint32_t bit_offset_qindex
Definition: va_enc_av1.h:879
uint32_t enable_frame_obu
For single tile group, app may choose to use one frame obu to replace one frame header obu + one tile...
Definition: va_enc_av1.h:645
uint32_t use_128x128_superblock
Force using 128x128 or 64x64 Supper block.
Definition: va_enc_av1.h:286
uint32_t search_idx0
Value used as index into ref_frame_idx[] to indicate that frame will be included in the reference lis...
Definition: va_enc_av1.h:493
uint32_t tx_mode_support
tx_mode supported. (tx_mode_support & 0x01) == 1: ONLY_4X4 is supported, 0: not. (tx_mode_support & 0...
Definition: va_enc_av1.h:193
uint32_t max_tile_num_minus1
Max tile num minus1. Specify the max number of tile supported by driver.
Definition: va_enc_av1.h:198
uint32_t search_idx1
Value used as index into ref_frame_idx[] to indicate that frame will be included in the reference lis...
Definition: va_enc_av1.h:499
uint32_t search_idx4
Value used as index into ref_frame_idx[] to indicate that frame will be included in the reference lis...
Definition: va_enc_av1.h:517
Packed Picture Parameter Set (PPS).
Definition: va_enc_av1.h:227
uint8_t superres_scale_denominator
Super resolution scale denominator. value range [9..16].
Definition: va_enc_av1.h:709
uint8_t segmentation_temporal_update
Definition: va_enc_av1.h:367
VABufferID coded_buf
Buffer to store coded data.
Definition: va_enc_av1.h:557
uint32_t enable_masked_compound
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:294
uint16_t reserved
Reserved bytes for future use, must be zero.
Definition: va_enc_av1.h:753
uint8_t segment_number
Definition: va_enc_av1.h:394
uint32_t palette_mode_enable
Equal to 1 indicates that intra blocks may use palette encoding. Otherwise disable palette encoding...
Definition: va_enc_av1.h:658
uint32_t min_segid_block_size_accepted
Min segmentId block size accepted. Application need to send seg_id_block_size in PPS equal or larger ...
Definition: va_enc_av1.h:154
Transformation count.
Definition: va_enc_av1.h:453
uint32_t enable_dual_filter
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:298
uint32_t reduced_tx_set
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:639
uint8_t seq_profile
AV1 profile setting. value range [0..2].
Definition: va_enc_av1.h:240
uint32_t skip_mode_present
Corresponds to AV1 syntax element of the same name. value range [0..1].
Definition: va_enc_av1.h:800
uint32_t allow_intrabc
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:654
uint8_t segmentation_update_map
Definition: va_enc_av1.h:359
uint32_t reference_mode
Indicates whether to use single or compound reference prediction. 0: SINGLE_REFERENCE; 1: COMPOUND_RE...
Definition: va_enc_av1.h:796
uint32_t delta_lf_multi
Corresponds to AV1 syntax element of the same name. value range [0..1].
Definition: va_enc_av1.h:778
uint8_t reserved8bits1
Reserved bytes for future use, must be zero.
Definition: va_enc_av1.h:608
uint32_t enable_superres
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:306
VASurfaceID reconstructed_frame
Surface to store reconstructed frame, not used for enc only case.
Definition: va_enc_av1.h:554
VARefFrameCtrlAV1 ref_frame_ctrl_l0
Suggest which frames to be used as references. see struct #VARefFrameCtrl for details.
Definition: va_enc_av1.h:613
uint8_t order_hint
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:602
uint32_t obu_size_bytes_minus1
Tile size bytes minus1. Specify the fixed number of bytes needed to code syntax obu_size.
Definition: va_enc_av1.h:186
Packed sequence header.
Definition: va.h:2398
uint32_t error_resilient_mode
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:627
uint32_t tx_mode
Corresponds to AV1 syntax element of the same name. 0: ONLY_4X4; 1: TX_MODE_LARGEST; 2: TX_MODE_SELEC...
Definition: va_enc_av1.h:786
uint32_t byte_offset_frame_hdr_obu_size
Definition: va_enc_av1.h:922
uint32_t Reserved
Reserved bytes for future use, must be zero.
Definition: va_enc_av1.h:532
Translational motion, 2-parameter.
Definition: va_enc_av1.h:447
uint16_t qm_y
Following parameters only valid when using_qmatrix == 1.
Definition: va_enc_av1.h:747
uint8_t reserved
Reserved bytes for future use, must be zero.
Definition: va_enc_av1.h:369
uint8_t reserved
Reserved bytes for future use, must be zero.
Definition: va_enc_av1.h:701
uint8_t seq_level_idx
Level Setting of current operation point. value range [0..23].
Definition: va_enc_av1.h:245
uint8_t primary_ref_frame
primary reference frame. Index into reference_frames[] segment id map, context table, etc. come from the reference frame pointed by this index. value range [0..7].
Definition: va_enc_av1.h:599
uint32_t search_idx6
Value used as index into ref_frame_idx[] to indicate that frame will be included in the reference lis...
Definition: va_enc_av1.h:529
uint32_t support_superres
Super resolution. Allows setting enable_superres in the SPS.
Definition: va_enc_av1.h:116
uint8_t obu_extension_flag
Corresponds to AV1 syntax element of the same name. value range [0..1].
Definition: va_enc_av1.h:943
#define VA_PADDING_LOW
Definition: va.h:360
uint8_t tg_start
Tile group start location. The position of the first tile in current tile group in raster scan order ...
Definition: va_enc_av1.h:993
Attribute value for VAConfigAttribEncAV1.
Definition: va_enc_av1.h:59
uint32_t delta_q_res
Corresponds to AV1 syntax element of the same name. value range [0..3].
Definition: va_enc_av1.h:768
uint32_t frame_type
frame type. 0: key_frame. 1: inter_frame. 2: intra_only frame. 3: switch_frame (app needs to set erro...
Definition: va_enc_av1.h:625
uint16_t lr_uv_shift
Corresponds to AV1 syntax element of the same name. value range [0..1].
Definition: va_enc_av1.h:862
uint32_t enable_interintra_compound
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:292
uint32_t enable_restoration
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:310
uint32_t support_warped_motion
Warped motion. Allows setting enable_warped_motion in the SPS.
Definition: va_enc_av1.h:91
uint16_t reserved16bits1
Reserved bytes for future use, must be zero.
Definition: va_enc_av1.h:759
Identity transformation, 0-parameter.
Definition: va_enc_av1.h:445
uint32_t force_integer_mv
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:662
uint32_t enable_filter_intra
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:288
uint16_t yframe_restoration_type
Restoration type for Y frame. value range [0..3].
Definition: va_enc_av1.h:846
uint8_t cdef_damping_minus_3
Corresponds to AV1 syntax element of the same name. value range [0..3].
Definition: va_enc_av1.h:829
uint32_t support_restoration
Restoration. Allows setting enable_restoration in the SPS.
Definition: va_enc_av1.h:121
uint8_t refresh_frame_flags
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:605
uint32_t support_intra_edge_filter
Intra edge filter. Allows setting enable_intra_edge_filter in the SPS.
Definition: va_enc_av1.h:76
uint32_t subsampling_x
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:314
uint16_t using_qmatrix
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:745
uint8_t sharpness_level
Sharpness level for deblock filter. value range [0..7].
Definition: va_enc_av1.h:697
uint32_t tile_size_bytes_minus1
Tile size bytes minus1. Specify the number of bytes needed to code tile size supported. This value need to be set in frame header obu.
Definition: va_enc_av1.h:181
uint16_t frame_width_minus_1
AV1 encoder may support SupRes and dynamic scaling function. For SupRes, underline encoder is respons...
Definition: va_enc_av1.h:549
uint8_t tile_rows
Number of tile rows.
Definition: va_enc_av1.h:813
uint8_t base_qindex
Quantization params.
Definition: va_enc_av1.h:724
VAEncTransformationTypeAV1
Definition: va_enc_av1.h:443
uint32_t delta_lf_res
Corresponds to AV1 syntax element of the same name. value range [0..3].
Definition: va_enc_av1.h:775
uint16_t frame_height_minus_1
Raw source frame height in pixels.
Definition: va_enc_av1.h:551
uint32_t still_picture
Still picture encoding, no inter frame referencing.
Definition: va_enc_av1.h:284
uint32_t reserved_bits
Reserved bytes for future use, must be zero.
Definition: va_enc_av1.h:320
uint16_t reserved16bits2
Reserved bytes for future use, must be zero.
Definition: va_enc_av1.h:816
uint32_t bit_offset_cdef_params
Definition: va_enc_av1.h:903
uint8_t seg_id_block_size
Block size for each Segment ID in Segment Map. 0: 16x16 block size, default value; 1: 32x32 block siz...
Definition: va_enc_av1.h:675
AV1 Encoding Picture Parameter Buffer Structure.
Definition: va_enc_av1.h:543
Attribute value for VAConfigAttribEncAV1Ext1.
Definition: va_enc_av1.h:139
uint32_t search_idx5
Value used as index into ref_frame_idx[] to indicate that frame will be included in the reference lis...
Definition: va_enc_av1.h:523
uint32_t disable_frame_end_update_cdf
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:637
Tile Group Buffer.
Definition: va_enc_av1.h:987
uint8_t * pSegmentMap
Segment map. Size of this map is indicated by segmentMapDataSize and each element in this map contain...
Definition: va_enc_av1.h:440
uint32_t bit_offset_segmentation
Definition: va_enc_av1.h:886
uint32_t enable_warped_motion
Corresponds to AV1 syntax element of the same name.
Definition: va_enc_av1.h:296