dav1d
headers.h
Go to the documentation of this file.
1 /*
2  * Copyright © 2018, VideoLAN and dav1d authors
3  * Copyright © 2018, Two Orioles, LLC
4  * All rights reserved.
5  *
6  * Redistribution and use in source and binary forms, with or without
7  * modification, are permitted provided that the following conditions are met:
8  *
9  * 1. Redistributions of source code must retain the above copyright notice, this
10  * list of conditions and the following disclaimer.
11  *
12  * 2. Redistributions in binary form must reproduce the above copyright notice,
13  * this list of conditions and the following disclaimer in the documentation
14  * and/or other materials provided with the distribution.
15  *
16  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
20  * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26  */
27 
28 #ifndef DAV1D_HEADERS_H
29 #define DAV1D_HEADERS_H
30 
31 #include <stddef.h>
32 
33 // Constants from Section 3. "Symbols and abbreviated terms"
34 #define DAV1D_MAX_CDEF_STRENGTHS 8
35 #define DAV1D_MAX_OPERATING_POINTS 32
36 #define DAV1D_MAX_TILE_COLS 64
37 #define DAV1D_MAX_TILE_ROWS 64
38 #define DAV1D_MAX_SEGMENTS 8
39 #define DAV1D_NUM_REF_FRAMES 8
40 #define DAV1D_PRIMARY_REF_NONE 7
41 #define DAV1D_REFS_PER_FRAME 7
42 #define DAV1D_TOTAL_REFS_PER_FRAME (DAV1D_REFS_PER_FRAME + 1)
43 
53 };
54 
60 };
61 
70 };
71 
73  DAV1D_OFF = 0,
74  DAV1D_ON = 1,
76 };
77 
83 };
84 
90 };
91 
92 typedef struct Dav1dWarpedMotionParams {
94  int32_t matrix[6];
95  union {
96  struct {
97  int16_t alpha, beta, gamma, delta;
98  };
99  int16_t abcd[4];
100  };
102 
108 };
109 
115 };
116 
130 };
131 
150 };
151 
167 };
168 
172  DAV1D_CHR_COLOCATED = 2,
174 };
175 
176 typedef struct Dav1dContentLightLevel {
180 
181 typedef struct Dav1dMasteringDisplay {
183  uint16_t primaries[3][2];
185  uint16_t white_point[2];
187  uint32_t max_luminance;
189  uint32_t min_luminance;
191 
192 typedef struct Dav1dITUTT35 {
193  uint8_t country_code;
195  size_t payload_size;
196  uint8_t *payload;
197 } Dav1dITUTT35;
198 
199 typedef struct Dav1dSequenceHeader {
205  int profile;
217 
224  int hbd;
230 
235  int idc;
236  int tier;
240 
258  int sb128;
266  int jnt_comp;
272  int cdef;
278 
279  // Dav1dSequenceHeaders of the same sequence are required to be
280  // bit-identical until this offset. See 7.5 "Ordering of OBUs":
281  // Within a particular coded video sequence, the contents of
282  // sequence_header_obu must be bit-identical each time the
283  // sequence header appears except for the contents of
284  // operating_parameters_info.
291 
292 typedef struct Dav1dSegmentationData {
293  int delta_q;
295  int ref;
296  int skip;
297  int globalmv;
299 
300 typedef struct Dav1dSegmentationDataSet {
302  int preskip;
305 
307  int mode_delta[2 /* is_zeromv */];
310 
311 typedef struct Dav1dFilmGrainData {
312  unsigned seed;
314  uint8_t y_points[14][2 /* value, scaling */];
317  uint8_t uv_points[2][10][2 /* value, scaling */];
320  int8_t ar_coeffs_y[24];
321  int8_t ar_coeffs_uv[2][25];
324  int uv_mult[2];
325  int uv_luma_mult[2];
326  int uv_offset[2];
330 
331 typedef struct Dav1dFrameHeader {
333  int width[2 /* { coded_width, superresolution_upscaled_width } */], height;
335  struct {
338  } film_grain;
340 
343  int frame_id;
359  struct {
361  int enabled;
362  } super_res;
367  int hp;
372  struct {
373  int uniform;
374  unsigned n_bytes;
379  int update;
380  } tiling;
381  struct {
382  int yac;
385  int qm, qm_y, qm_u, qm_v;
386  } quant;
387  struct {
391  } segmentation;
392  struct {
393  struct {
394  int present;
395  int res_log2;
396  } q;
397  struct {
398  int present;
399  int res_log2;
400  int multi;
401  } lf;
402  } delta;
404  struct {
405  int level_y[2 /* dir */];
411  } loopfilter;
412  struct {
413  int damping;
414  int n_bits;
417  } cdef;
418  struct {
419  enum Dav1dRestorationType type[3 /* plane */];
420  int unit_size[2 /* y, uv */];
421  } restoration;
429 
430 #endif /* DAV1D_HEADERS_H */
DAV1D_OBU_REDUNDANT_FRAME_HDR
@ DAV1D_OBU_REDUNDANT_FRAME_HDR
Definition: headers.h:51
Dav1dSequenceHeader::order_hint_n_bits
int order_hint_n_bits
Definition: headers.h:270
Dav1dFilmGrainData::uv_offset
int uv_offset[2]
Definition: headers.h:326
Dav1dFilmGrainData::clip_to_restricted_range
int clip_to_restricted_range
Definition: headers.h:328
Dav1dFrameHeader::rows
int rows
Definition: headers.h:376
Dav1dSequenceHeader::Dav1dSequenceHeaderOperatingPoint::decoder_model_param_present
int decoder_model_param_present
Definition: headers.h:237
Dav1dFrameHeader::update
int update
Definition: headers.h:336
Dav1dFrameHeader::res_log2
int res_log2
Definition: headers.h:395
Dav1dSequenceHeader::max_height
int max_height
Definition: headers.h:211
Dav1dFrameHeader::mode_ref_deltas
Dav1dLoopfilterModeRefDeltas mode_ref_deltas
Definition: headers.h:409
Dav1dFrameHeader::height
int height
Definition: headers.h:333
Dav1dSequenceHeader::buffer_removal_delay_length
int buffer_removal_delay_length
Definition: headers.h:251
DAV1D_TRC_BT470BG
@ DAV1D_TRC_BT470BG
Definition: headers.h:136
Dav1dFrameHeader::temporal
int temporal
Definition: headers.h:388
DAV1D_MC_SMPTE240
@ DAV1D_MC_SMPTE240
Definition: headers.h:159
Dav1dFrameHeader::row_start_sb
uint16_t row_start_sb[DAV1D_MAX_TILE_ROWS+1]
Definition: headers.h:378
Dav1dSequenceHeader::Dav1dSequenceHeaderOperatingPoint::minor_level
int minor_level
Definition: headers.h:233
Dav1dFrameHeader::col_start_sb
uint16_t col_start_sb[DAV1D_MAX_TILE_COLS+1]
Definition: headers.h:377
Dav1dSequenceHeader::display_model_info_present
int display_model_info_present
Definition: headers.h:253
Dav1dFrameHeader::max_log2_cols
int max_log2_cols
Definition: headers.h:375
Dav1dSequenceHeader::operating_points
struct Dav1dSequenceHeader::Dav1dSequenceHeaderOperatingPoint operating_points[DAV1D_MAX_OPERATING_POINTS]
DAV1D_WM_TYPE_AFFINE
@ DAV1D_WM_TYPE_AFFINE
Definition: headers.h:89
Dav1dSequenceHeader::film_grain_present
int film_grain_present
Definition: headers.h:277
DAV1D_CHR_UNKNOWN
@ DAV1D_CHR_UNKNOWN
Definition: headers.h:170
DAV1D_MC_FCC
@ DAV1D_MC_FCC
Definition: headers.h:156
Dav1dSegmentationDataSet::last_active_segid
int last_active_segid
Definition: headers.h:303
Dav1dFrameHeader::lossless
int lossless[DAV1D_MAX_SEGMENTS]
Definition: headers.h:390
Dav1dFrameHeader::force_integer_mv
int force_integer_mv
Definition: headers.h:350
DAV1D_COLOR_PRI_BT2020
@ DAV1D_COLOR_PRI_BT2020
Definition: headers.h:125
DAV1D_FILTER_8TAP_SMOOTH
@ DAV1D_FILTER_8TAP_SMOOTH
Definition: headers.h:64
Dav1dFrameHeader::cols
int cols
Definition: headers.h:375
Dav1dSequenceHeader::profile
int profile
Definition: headers.h:205
DAV1D_FILTER_8TAP_REGULAR
@ DAV1D_FILTER_8TAP_REGULAR
Definition: headers.h:63
Dav1dFrameHeader::txfm_mode
enum Dav1dTxfmMode txfm_mode
Definition: headers.h:422
Dav1dMasteringDisplay::max_luminance
uint32_t max_luminance
18.14 fixed point
Definition: headers.h:187
Dav1dITUTT35::country_code_extension_byte
uint8_t country_code_extension_byte
Definition: headers.h:194
Dav1dWarpedMotionType
Dav1dWarpedMotionType
Definition: headers.h:85
DAV1D_TX_4X4_ONLY
@ DAV1D_TX_4X4_ONLY
Definition: headers.h:56
Dav1dSequenceHeader::jnt_comp
int jnt_comp
Definition: headers.h:266
Dav1dSegmentationData
Definition: headers.h:292
Dav1dSequenceHeader::warped_motion
int warped_motion
Definition: headers.h:263
Dav1dFrameHeader::frame_type
enum Dav1dFrameType frame_type
type of the picture
Definition: headers.h:332
Dav1dFrameHeader::vac_delta
int vac_delta
Definition: headers.h:384
Dav1dFrameHeader::skip_mode_enabled
int skip_mode_enabled
Definition: headers.h:424
Dav1dSequenceHeader::Dav1dSequenceHeaderOperatingPoint::initial_display_delay
int initial_display_delay
Definition: headers.h:234
Dav1dSequenceHeader::monochrome
int monochrome
Definition: headers.h:274
DAV1D_COLOR_PRI_UNKNOWN
@ DAV1D_COLOR_PRI_UNKNOWN
Definition: headers.h:119
Dav1dSequenceHeader::Dav1dSequenceHeaderOperatingPoint::display_model_param_present
int display_model_param_present
Definition: headers.h:238
Dav1dFrameHeader::buffer_removal_time_present
int buffer_removal_time_present
Definition: headers.h:353
DAV1D_CHR_COLOCATED
@ DAV1D_CHR_COLOCATED
Co-located with luma(0, 0) sample.
Definition: headers.h:173
Dav1dSequenceHeader::ref_frame_mvs
int ref_frame_mvs
Definition: headers.h:267
Dav1dFrameHeader::frame_ref_short_signaling
int frame_ref_short_signaling
Definition: headers.h:365
Dav1dSequenceHeader::decoder_model_info_present
int decoder_model_info_present
Definition: headers.h:248
Dav1dSequenceHeader::intra_edge_filter
int intra_edge_filter
Definition: headers.h:260
Dav1dSegmentationData::delta_lf_y_v
int delta_lf_y_v
Definition: headers.h:294
DAV1D_PIXEL_LAYOUT_I444
@ DAV1D_PIXEL_LAYOUT_I444
4:4:4 planar
Definition: headers.h:107
Dav1dFrameHeader::yac
int yac
Definition: headers.h:382
Dav1dFrameHeader::render_height
int render_height
Definition: headers.h:358
Dav1dITUTT35
Definition: headers.h:192
Dav1dFrameHeader::udc_delta
int udc_delta
Definition: headers.h:384
Dav1dMasteringDisplay::primaries
uint16_t primaries[3][2]
< 0.16 fixed point
Definition: headers.h:183
Dav1dLoopfilterModeRefDeltas::ref_delta
int ref_delta[DAV1D_TOTAL_REFS_PER_FRAME]
Definition: headers.h:308
Dav1dSequenceHeader::dual_filter
int dual_filter
Definition: headers.h:264
Dav1dFilmGrainData::ar_coeffs_y
int8_t ar_coeffs_y[24]
Definition: headers.h:320
Dav1dAdaptiveBoolean
Dav1dAdaptiveBoolean
Definition: headers.h:72
DAV1D_OBU_TILE_GRP
@ DAV1D_OBU_TILE_GRP
Definition: headers.h:48
DAV1D_OBU_FRAME_HDR
@ DAV1D_OBU_FRAME_HDR
Definition: headers.h:47
Dav1dSegmentationDataSet
Definition: headers.h:300
DAV1D_FRAME_TYPE_KEY
@ DAV1D_FRAME_TYPE_KEY
Key Intra frame.
Definition: headers.h:111
DAV1D_MC_BT470BG
@ DAV1D_MC_BT470BG
Definition: headers.h:157
Dav1dContentLightLevel::max_frame_average_light_level
int max_frame_average_light_level
Definition: headers.h:178
DAV1D_COLOR_PRI_BT470BG
@ DAV1D_COLOR_PRI_BT470BG
Definition: headers.h:121
DAV1D_COLOR_PRI_XYZ
@ DAV1D_COLOR_PRI_XYZ
Definition: headers.h:126
Dav1dFilmGrainData
Definition: headers.h:311
DAV1D_MC_SMPTE_YCGCO
@ DAV1D_MC_SMPTE_YCGCO
Definition: headers.h:160
Dav1dFilmGrainData::ar_coeff_lag
int ar_coeff_lag
Definition: headers.h:319
Dav1dFrameHeader::level_v
int level_v
Definition: headers.h:406
DAV1D_WM_TYPE_TRANSLATION
@ DAV1D_WM_TYPE_TRANSLATION
Definition: headers.h:87
Dav1dSequenceHeader::operating_parameter_info
struct Dav1dSequenceHeader::Dav1dSequenceHeaderOperatingParameterInfo operating_parameter_info[DAV1D_MAX_OPERATING_POINTS]
DAV1D_MC_CHROMAT_NCL
@ DAV1D_MC_CHROMAT_NCL
Chromaticity-derived.
Definition: headers.h:164
Dav1dFrameHeader::Dav1dFrameHeaderOperatingPoint
Definition: headers.h:354
DAV1D_MAX_CDEF_STRENGTHS
#define DAV1D_MAX_CDEF_STRENGTHS
Definition: headers.h:34
Dav1dSequenceHeader
Definition: headers.h:199
Dav1dFrameHeader::min_log2_cols
int min_log2_cols
Definition: headers.h:375
DAV1D_TRC_BT1361
@ DAV1D_TRC_BT1361
Definition: headers.h:143
DAV1D_MC_UNKNOWN
@ DAV1D_MC_UNKNOWN
Definition: headers.h:155
Dav1dFrameHeader::frame_size_override
int frame_size_override
Definition: headers.h:351
DAV1D_MC_BT2020_CL
@ DAV1D_MC_BT2020_CL
Definition: headers.h:162
Dav1dMasteringDisplay
Definition: headers.h:181
Dav1dITUTT35::country_code
uint8_t country_code
Definition: headers.h:193
Dav1dFrameHeader::quant
struct Dav1dFrameHeader::@7 quant
Dav1dFrameHeader::refresh_frame_flags
int refresh_frame_flags
Definition: headers.h:357
Dav1dSequenceHeader::order_hint
int order_hint
Definition: headers.h:265
Dav1dFilmGrainData::chroma_scaling_from_luma
int chroma_scaling_from_luma
Definition: headers.h:315
DAV1D_WM_TYPE_ROT_ZOOM
@ DAV1D_WM_TYPE_ROT_ZOOM
Definition: headers.h:88
Dav1dFrameHeader::update_data
int update_data
Definition: headers.h:388
Dav1dSequenceHeader::masked_compound
int masked_compound
Definition: headers.h:262
Dav1dFrameHeader::skip_mode_refs
int skip_mode_refs[2]
Definition: headers.h:424
Dav1dSequenceHeader::color_description_present
int color_description_present
Definition: headers.h:275
DAV1D_PIXEL_LAYOUT_I420
@ DAV1D_PIXEL_LAYOUT_I420
4:2:0 planar
Definition: headers.h:105
DAV1D_COLOR_PRI_FILM
@ DAV1D_COLOR_PRI_FILM
Definition: headers.h:124
DAV1D_ADAPTIVE
@ DAV1D_ADAPTIVE
Definition: headers.h:75
DAV1D_TRC_SRGB
@ DAV1D_TRC_SRGB
Definition: headers.h:144
Dav1dSequenceHeader::Dav1dSequenceHeaderOperatingParameterInfo::decoder_buffer_delay
int decoder_buffer_delay
Definition: headers.h:286
Dav1dSequenceHeader::frame_id_n_bits
int frame_id_n_bits
Definition: headers.h:257
Dav1dWarpedMotionParams::matrix
int32_t matrix[6]
Definition: headers.h:94
DAV1D_COLOR_PRI_BT709
@ DAV1D_COLOR_PRI_BT709
Definition: headers.h:118
DAV1D_OBU_TD
@ DAV1D_OBU_TD
Definition: headers.h:46
DAV1D_MAX_TILE_COLS
#define DAV1D_MAX_TILE_COLS
Definition: headers.h:36
DAV1D_MC_CHROMAT_CL
@ DAV1D_MC_CHROMAT_CL
Definition: headers.h:165
DAV1D_TRC_UNKNOWN
@ DAV1D_TRC_UNKNOWN
Definition: headers.h:134
Dav1dSequenceHeader::super_res
int super_res
Definition: headers.h:271
Dav1dFrameHeader::present
int present
Definition: headers.h:336
Dav1dFrameHeader::qm
int qm
Definition: headers.h:385
DAV1D_FILTER_SWITCHABLE
@ DAV1D_FILTER_SWITCHABLE
Definition: headers.h:69
Dav1dSegmentationDataSet::preskip
int preskip
Definition: headers.h:302
DAV1D_TX_LARGEST
@ DAV1D_TX_LARGEST
Definition: headers.h:57
Dav1dFrameHeader::qidx
int qidx[DAV1D_MAX_SEGMENTS]
Definition: headers.h:390
Dav1dChromaSamplePosition
Dav1dChromaSamplePosition
Definition: headers.h:169
Dav1dFrameHeader::qm_u
int qm_u
Definition: headers.h:385
Dav1dSequenceHeader::width_n_bits
int width_n_bits
Definition: headers.h:254
Dav1dFilmGrainData::y_points
uint8_t y_points[14][2]
Definition: headers.h:314
Dav1dFrameHeader::existing_frame_idx
int existing_frame_idx
Definition: headers.h:342
Dav1dFrameHeader::multi
int multi
Definition: headers.h:400
Dav1dSequenceHeader::sb128
int sb128
Definition: headers.h:258
Dav1dRestorationType
Dav1dRestorationType
Definition: headers.h:78
DAV1D_COLOR_PRI_BT601
@ DAV1D_COLOR_PRI_BT601
Definition: headers.h:122
Dav1dSequenceHeader::Dav1dSequenceHeaderOperatingPoint::major_level
int major_level
Definition: headers.h:233
Dav1dObuType
Dav1dObuType
Definition: headers.h:44
DAV1D_TRC_SMPTE428
@ DAV1D_TRC_SMPTE428
Definition: headers.h:148
DAV1D_TRC_LINEAR
@ DAV1D_TRC_LINEAR
Definition: headers.h:139
Dav1dFrameHeader::segmentation
struct Dav1dFrameHeader::@8 segmentation
Dav1dSequenceHeader::num_ticks_per_picture
unsigned num_ticks_per_picture
Definition: headers.h:247
DAV1D_RESTORATION_SGRPROJ
@ DAV1D_RESTORATION_SGRPROJ
Definition: headers.h:82
Dav1dITUTT35::payload
uint8_t * payload
Definition: headers.h:196
Dav1dFrameType
Dav1dFrameType
Definition: headers.h:110
Dav1dMatrixCoefficients
Dav1dMatrixCoefficients
Definition: headers.h:152
Dav1dSegmentationData::delta_lf_v
int delta_lf_v
Definition: headers.h:294
Dav1dLoopfilterModeRefDeltas::mode_delta
int mode_delta[2]
Definition: headers.h:307
Dav1dFrameHeader::loopfilter
struct Dav1dFrameHeader::@10 loopfilter
Dav1dFilmGrainData::scaling_shift
int scaling_shift
Definition: headers.h:318
Dav1dFrameHeader::uac_delta
int uac_delta
Definition: headers.h:384
Dav1dFilmGrainData::overlap_flag
int overlap_flag
Definition: headers.h:327
DAV1D_N_FILTERS
@ DAV1D_N_FILTERS
Definition: headers.h:68
Dav1dFrameHeader::have_render_size
int have_render_size
Definition: headers.h:363
Dav1dFrameHeader::refidx
int refidx[DAV1D_REFS_PER_FRAME]
Definition: headers.h:366
DAV1D_COLOR_PRI_EBU3213
@ DAV1D_COLOR_PRI_EBU3213
Definition: headers.h:129
DAV1D_TRC_HLG
@ DAV1D_TRC_HLG
hybrid log/gamma (BT.2100 / ARIB STD-B67)
Definition: headers.h:149
DAV1D_OBU_METADATA
@ DAV1D_OBU_METADATA
Definition: headers.h:49
Dav1dSequenceHeader::color_range
int color_range
Definition: headers.h:229
Dav1dFrameHeader::subpel_filter_mode
enum Dav1dFilterMode subpel_filter_mode
Definition: headers.h:368
DAV1D_TRC_BT2020_10BIT
@ DAV1D_TRC_BT2020_10BIT
Definition: headers.h:145
DAV1D_PIXEL_LAYOUT_I400
@ DAV1D_PIXEL_LAYOUT_I400
monochrome
Definition: headers.h:104
Dav1dFrameHeader::frame_presentation_delay
int frame_presentation_delay
Definition: headers.h:344
Dav1dFilmGrainData::num_uv_points
int num_uv_points[2]
Definition: headers.h:316
Dav1dSequenceHeader::reduced_still_picture_header
int reduced_still_picture_header
Definition: headers.h:242
Dav1dFrameHeader::disable_cdf_update
int disable_cdf_update
Definition: headers.h:348
Dav1dFrameHeader::damping
int damping
Definition: headers.h:413
DAV1D_TRC_BT709
@ DAV1D_TRC_BT709
Definition: headers.h:133
Dav1dSegmentationData::delta_lf_y_h
int delta_lf_y_h
Definition: headers.h:294
DAV1D_OBU_FRAME
@ DAV1D_OBU_FRAME
Definition: headers.h:50
DAV1D_TRC_SMPTE2084
@ DAV1D_TRC_SMPTE2084
PQ.
Definition: headers.h:147
Dav1dFrameHeader::tiling
struct Dav1dFrameHeader::@6 tiling
DAV1D_TRC_SMPTE240
@ DAV1D_TRC_SMPTE240
Definition: headers.h:138
DAV1D_MC_BT709
@ DAV1D_MC_BT709
Definition: headers.h:154
DAV1D_MC_BT601
@ DAV1D_MC_BT601
Definition: headers.h:158
Dav1dFrameHeader::data
Dav1dFilmGrainData data
Definition: headers.h:337
Dav1dSequenceHeader::Dav1dSequenceHeaderOperatingParameterInfo::encoder_buffer_delay
int encoder_buffer_delay
Definition: headers.h:287
Dav1dFrameHeader::cdef
struct Dav1dFrameHeader::@11 cdef
Dav1dFilmGrainData::ar_coeff_shift
int ar_coeff_shift
Definition: headers.h:322
Dav1dFrameHeader::use_ref_frame_mvs
int use_ref_frame_mvs
Definition: headers.h:370
Dav1dFrameHeader::uv_strength
int uv_strength[DAV1D_MAX_CDEF_STRENGTHS]
Definition: headers.h:416
Dav1dFrameHeader::skip_mode_allowed
int skip_mode_allowed
Definition: headers.h:424
DAV1D_MAX_OPERATING_POINTS
#define DAV1D_MAX_OPERATING_POINTS
Definition: headers.h:35
Dav1dFrameHeader::enabled
int enabled
Definition: headers.h:361
Dav1dSegmentationData::delta_lf_u
int delta_lf_u
Definition: headers.h:294
DAV1D_TRC_IEC61966
@ DAV1D_TRC_IEC61966
Definition: headers.h:142
Dav1dFrameHeader::uniform
int uniform
Definition: headers.h:373
Dav1dFilmGrainData::uv_points
uint8_t uv_points[2][10][2]
Definition: headers.h:317
Dav1dFrameHeader::mode_ref_delta_enabled
int mode_ref_delta_enabled
Definition: headers.h:407
Dav1dSequenceHeader::timing_info_present
int timing_info_present
Definition: headers.h:243
Dav1dFrameHeader::sharpness
int sharpness
Definition: headers.h:410
Dav1dSequenceHeader::inter_intra
int inter_intra
Definition: headers.h:261
Dav1dFrameHeader::n_bytes
unsigned n_bytes
Definition: headers.h:374
DAV1D_MC_SMPTE2085
@ DAV1D_MC_SMPTE2085
Definition: headers.h:163
Dav1dWarpedMotionParams::type
enum Dav1dWarpedMotionType type
Definition: headers.h:93
Dav1dFrameHeader::hp
int hp
Definition: headers.h:367
DAV1D_OBU_PADDING
@ DAV1D_OBU_PADDING
Definition: headers.h:52
Dav1dFrameHeader::render_width
int render_width
Definition: headers.h:358
Dav1dFrameHeader::film_grain
struct Dav1dFrameHeader::@4 film_grain
film grain parameters
DAV1D_CHR_VERTICAL
@ DAV1D_CHR_VERTICAL
sample, between two vertical samples
Definition: headers.h:171
Dav1dSequenceHeader::frame_id_numbers_present
int frame_id_numbers_present
Definition: headers.h:255
Dav1dFrameHeader::ydc_delta
int ydc_delta
Definition: headers.h:383
Dav1dFrameHeader::spatial_id
int spatial_id
spatial and temporal id of the frame for SVC
Definition: headers.h:339
Dav1dFrameHeader::show_frame
int show_frame
Definition: headers.h:345
Dav1dSequenceHeader::ss_ver
int ss_ver
Definition: headers.h:274
DAV1D_REFS_PER_FRAME
#define DAV1D_REFS_PER_FRAME
Definition: headers.h:41
Dav1dFilmGrainData::seed
unsigned seed
Definition: headers.h:312
Dav1dFrameHeader::operating_points
struct Dav1dFrameHeader::Dav1dFrameHeaderOperatingPoint operating_points[DAV1D_MAX_OPERATING_POINTS]
Dav1dFrameHeader::update_map
int update_map
Definition: headers.h:388
DAV1D_COLOR_PRI_BT470M
@ DAV1D_COLOR_PRI_BT470M
Definition: headers.h:120
Dav1dFrameHeader::unit_size
int unit_size[2]
Definition: headers.h:420
DAV1D_PIXEL_LAYOUT_I422
@ DAV1D_PIXEL_LAYOUT_I422
4:2:2 planar
Definition: headers.h:106
Dav1dFrameHeader::level_y
int level_y[2]
Definition: headers.h:405
DAV1D_MAX_TILE_ROWS
#define DAV1D_MAX_TILE_ROWS
Definition: headers.h:37
Dav1dSequenceHeader::num_units_in_decoding_tick
int num_units_in_decoding_tick
Definition: headers.h:250
DAV1D_FILTER_8TAP_SHARP
@ DAV1D_FILTER_8TAP_SHARP
Definition: headers.h:65
Dav1dSequenceHeader::hbd
int hbd
Definition: headers.h:224
Dav1dSequenceHeader::num_operating_points
int num_operating_points
Definition: headers.h:231
Dav1dFilterMode
Dav1dFilterMode
Definition: headers.h:62
DAV1D_TRC_LOG100
@ DAV1D_TRC_LOG100
logarithmic (100:1 range)
Definition: headers.h:140
Dav1dFrameHeader::lf
struct Dav1dFrameHeader::@9::@14 lf
Dav1dFrameHeader::switchable_motion_mode
int switchable_motion_mode
Definition: headers.h:369
Dav1dSequenceHeader::Dav1dSequenceHeaderOperatingPoint
Definition: headers.h:232
Dav1dFrameHeader::restoration
struct Dav1dFrameHeader::@12 restoration
Dav1dSequenceHeader::trc
enum Dav1dTransferCharacteristics trc
transfer characteristics (av1)
Definition: headers.h:214
Dav1dSequenceHeader::num_units_in_tick
int num_units_in_tick
Definition: headers.h:244
Dav1dMasteringDisplay::white_point
uint16_t white_point[2]
24.8 fixed point
Definition: headers.h:185
Dav1dFrameHeader::qm_y
int qm_y
Definition: headers.h:385
Dav1dFrameHeader
Definition: headers.h:331
Dav1dContentLightLevel
Definition: headers.h:176
Dav1dFrameHeader::q
struct Dav1dFrameHeader::@9::@13 q
Dav1dFilmGrainData::uv_luma_mult
int uv_luma_mult[2]
Definition: headers.h:325
Dav1dContentLightLevel::max_content_light_level
int max_content_light_level
Definition: headers.h:177
Dav1dFrameHeader::super_res
struct Dav1dFrameHeader::@5 super_res
Dav1dTransferCharacteristics
Dav1dTransferCharacteristics
Definition: headers.h:132
Dav1dColorPrimaries
Dav1dColorPrimaries
Definition: headers.h:117
Dav1dFrameHeader::frame_id
int frame_id
Definition: headers.h:343
Dav1dSequenceHeader::delta_frame_id_n_bits
int delta_frame_id_n_bits
Definition: headers.h:256
Dav1dSequenceHeader::mtrx
enum Dav1dMatrixCoefficients mtrx
matrix coefficients (av1)
Definition: headers.h:215
DAV1D_COLOR_PRI_SMPTE432
@ DAV1D_COLOR_PRI_SMPTE432
Definition: headers.h:128
Dav1dSequenceHeader::Dav1dSequenceHeaderOperatingPoint::tier
int tier
Definition: headers.h:236
Dav1dSequenceHeader::frame_presentation_delay_length
int frame_presentation_delay_length
Definition: headers.h:252
Dav1dSequenceHeader::max_width
int max_width
Definition: headers.h:211
Dav1dFrameHeader::type
enum Dav1dRestorationType type[3]
Definition: headers.h:419
Dav1dFrameHeader::show_existing_frame
int show_existing_frame
Definition: headers.h:341
Dav1dFrameHeader::min_log2_rows
int min_log2_rows
Definition: headers.h:376
Dav1dSequenceHeader::height_n_bits
int height_n_bits
Definition: headers.h:254
Dav1dSequenceHeader::layout
enum Dav1dPixelLayout layout
format of the picture
Definition: headers.h:212
Dav1dSequenceHeader::cdef
int cdef
Definition: headers.h:272
Dav1dFilmGrainData::num_y_points
int num_y_points
Definition: headers.h:313
DAV1D_TOTAL_REFS_PER_FRAME
#define DAV1D_TOTAL_REFS_PER_FRAME
Definition: headers.h:42
Dav1dSequenceHeader::chr
enum Dav1dChromaSamplePosition chr
chroma sample position (av1)
Definition: headers.h:216
Dav1dFrameHeader::width
int width[2]
Definition: headers.h:333
Dav1dWarpedMotionParams::delta
int16_t delta
Definition: headers.h:97
Dav1dFrameHeader::y_strength
int y_strength[DAV1D_MAX_CDEF_STRENGTHS]
Definition: headers.h:415
Dav1dFrameHeader::warp_motion
int warp_motion
Definition: headers.h:425
Dav1dFrameHeader::allow_screen_content_tools
int allow_screen_content_tools
Definition: headers.h:349
Dav1dFrameHeader::log2_rows
int log2_rows
Definition: headers.h:376
DAV1D_RESTORATION_WIENER
@ DAV1D_RESTORATION_WIENER
Definition: headers.h:81
Dav1dFrameHeader::all_lossless
int all_lossless
Definition: headers.h:403
DAV1D_RESTORATION_SWITCHABLE
@ DAV1D_RESTORATION_SWITCHABLE
Definition: headers.h:80
Dav1dSequenceHeader::Dav1dSequenceHeaderOperatingPoint::idc
int idc
Definition: headers.h:235
Dav1dITUTT35::payload_size
size_t payload_size
Definition: headers.h:195
Dav1dFrameHeader::seg_data
Dav1dSegmentationDataSet seg_data
Definition: headers.h:389
Dav1dSequenceHeader::encoder_decoder_buffer_delay_length
int encoder_decoder_buffer_delay_length
Definition: headers.h:249
Dav1dSegmentationDataSet::d
Dav1dSegmentationData d[DAV1D_MAX_SEGMENTS]
Definition: headers.h:301
Dav1dFrameHeader::gmv
Dav1dWarpedMotionParams gmv[DAV1D_REFS_PER_FRAME]
Definition: headers.h:427
DAV1D_FRAME_TYPE_SWITCH
@ DAV1D_FRAME_TYPE_SWITCH
Switch Inter frame.
Definition: headers.h:114
Dav1dFrameHeader::frame_offset
int frame_offset
frame number
Definition: headers.h:334
Dav1dFrameHeader::temporal_id
int temporal_id
Definition: headers.h:339
Dav1dFrameHeader::allow_intrabc
int allow_intrabc
Definition: headers.h:364
Dav1dSequenceHeader::Dav1dSequenceHeaderOperatingParameterInfo
Definition: headers.h:285
Dav1dFrameHeader::refresh_context
int refresh_context
Definition: headers.h:371
Dav1dFrameHeader::vdc_delta
int vdc_delta
Definition: headers.h:384
DAV1D_N_TX_MODES
@ DAV1D_N_TX_MODES
Definition: headers.h:59
DAV1D_RESTORATION_NONE
@ DAV1D_RESTORATION_NONE
Definition: headers.h:79
DAV1D_TX_SWITCHABLE
@ DAV1D_TX_SWITCHABLE
Definition: headers.h:58
DAV1D_FILTER_BILINEAR
@ DAV1D_FILTER_BILINEAR
Definition: headers.h:67
Dav1dSequenceHeader::separate_uv_delta_q
int separate_uv_delta_q
Definition: headers.h:276
Dav1dPixelLayout
Dav1dPixelLayout
Definition: headers.h:103
DAV1D_FRAME_TYPE_INTER
@ DAV1D_FRAME_TYPE_INTER
Inter frame.
Definition: headers.h:112
DAV1D_FRAME_TYPE_INTRA
@ DAV1D_FRAME_TYPE_INTRA
Non key Intra frame.
Definition: headers.h:113
Dav1dSegmentationData::delta_q
int delta_q
Definition: headers.h:293
DAV1D_TRC_BT470M
@ DAV1D_TRC_BT470M
Definition: headers.h:135
Dav1dFrameHeader::reduced_txtp_set
int reduced_txtp_set
Definition: headers.h:426
DAV1D_TRC_BT2020_12BIT
@ DAV1D_TRC_BT2020_12BIT
Definition: headers.h:146
DAV1D_MAX_SEGMENTS
#define DAV1D_MAX_SEGMENTS
Definition: headers.h:38
Dav1dSequenceHeader::time_scale
int time_scale
Definition: headers.h:245
Dav1dFrameHeader::Dav1dFrameHeaderOperatingPoint::buffer_removal_time
int buffer_removal_time
Definition: headers.h:355
Dav1dFilmGrainData::grain_scale_shift
int grain_scale_shift
Definition: headers.h:323
Dav1dFrameHeader::showable_frame
int showable_frame
Definition: headers.h:346
Dav1dSequenceHeader::still_picture
int still_picture
Definition: headers.h:241
Dav1dFrameHeader::log2_cols
int log2_cols
Definition: headers.h:375
DAV1D_OFF
@ DAV1D_OFF
Definition: headers.h:73
Dav1dMasteringDisplay::min_luminance
uint32_t min_luminance
Definition: headers.h:189
Dav1dWarpedMotionParams::gamma
int16_t gamma
Definition: headers.h:97
Dav1dWarpedMotionParams::beta
int16_t beta
Definition: headers.h:97
DAV1D_ON
@ DAV1D_ON
Definition: headers.h:74
Dav1dTxfmMode
Dav1dTxfmMode
Definition: headers.h:55
Dav1dLoopfilterModeRefDeltas
Definition: headers.h:306
Dav1dWarpedMotionParams::alpha
int16_t alpha
Definition: headers.h:97
Dav1dSegmentationData::skip
int skip
Definition: headers.h:296
Dav1dFrameHeader::level_u
int level_u
Definition: headers.h:406
DAV1D_OBU_SEQ_HDR
@ DAV1D_OBU_SEQ_HDR
Definition: headers.h:45
Dav1dSequenceHeader::Dav1dSequenceHeaderOperatingParameterInfo::low_delay_mode
int low_delay_mode
Definition: headers.h:288
Dav1dFrameHeader::switchable_comp_refs
int switchable_comp_refs
Definition: headers.h:423
DAV1D_COLOR_PRI_SMPTE240
@ DAV1D_COLOR_PRI_SMPTE240
Definition: headers.h:123
DAV1D_MC_ICTCP
@ DAV1D_MC_ICTCP
Definition: headers.h:166
Dav1dFrameHeader::error_resilient_mode
int error_resilient_mode
Definition: headers.h:347
Dav1dFrameHeader::primary_ref_frame
int primary_ref_frame
Definition: headers.h:352
Dav1dFilmGrainData::uv_mult
int uv_mult[2]
Definition: headers.h:324
Dav1dWarpedMotionParams::abcd
int16_t abcd[4]
Definition: headers.h:99
DAV1D_MC_IDENTITY
@ DAV1D_MC_IDENTITY
Definition: headers.h:153
Dav1dWarpedMotionParams
Definition: headers.h:92
DAV1D_MC_BT2020_NCL
@ DAV1D_MC_BT2020_NCL
Definition: headers.h:161
Dav1dFrameHeader::max_log2_rows
int max_log2_rows
Definition: headers.h:376
Dav1dSequenceHeader::force_integer_mv
enum Dav1dAdaptiveBoolean force_integer_mv
Definition: headers.h:269
Dav1dFilmGrainData::ar_coeffs_uv
int8_t ar_coeffs_uv[2][25]
Definition: headers.h:321
Dav1dFrameHeader::delta
struct Dav1dFrameHeader::@9 delta
Dav1dSequenceHeader::restoration
int restoration
Definition: headers.h:273
Dav1dFrameHeader::n_bits
int n_bits
Definition: headers.h:414
Dav1dFrameHeader::mode_ref_delta_update
int mode_ref_delta_update
Definition: headers.h:408
Dav1dSegmentationData::ref
int ref
Definition: headers.h:295
Dav1dSegmentationData::globalmv
int globalmv
Definition: headers.h:297
Dav1dSequenceHeader::ss_hor
int ss_hor
Definition: headers.h:274
DAV1D_TRC_LOG100_SQRT10
@ DAV1D_TRC_LOG100_SQRT10
lograithmic (100*sqrt(10):1 range)
Definition: headers.h:141
Dav1dFrameHeader::qm_v
int qm_v
Definition: headers.h:385
DAV1D_N_SWITCHABLE_FILTERS
@ DAV1D_N_SWITCHABLE_FILTERS
Definition: headers.h:66
DAV1D_TRC_BT601
@ DAV1D_TRC_BT601
Definition: headers.h:137
Dav1dSequenceHeader::equal_picture_interval
int equal_picture_interval
Definition: headers.h:246
Dav1dSequenceHeader::pri
enum Dav1dColorPrimaries pri
color primaries (av1)
Definition: headers.h:213
Dav1dSequenceHeader::filter_intra
int filter_intra
Definition: headers.h:259
DAV1D_WM_TYPE_IDENTITY
@ DAV1D_WM_TYPE_IDENTITY
Definition: headers.h:86
DAV1D_COLOR_PRI_SMPTE431
@ DAV1D_COLOR_PRI_SMPTE431
Definition: headers.h:127
Dav1dSequenceHeader::screen_content_tools
enum Dav1dAdaptiveBoolean screen_content_tools
Definition: headers.h:268
Dav1dFrameHeader::width_scale_denominator
int width_scale_denominator
Definition: headers.h:360