11 #ifndef AOM_AOM_AOMCX_H_
12 #define AOM_AOM_AOMCX_H_
50 #define AOM_EFLAG_NO_REF_LAST (1 << 16)
57 #define AOM_EFLAG_NO_REF_LAST2 (1 << 17)
64 #define AOM_EFLAG_NO_REF_LAST3 (1 << 18)
71 #define AOM_EFLAG_NO_REF_GF (1 << 19)
79 #define AOM_EFLAG_NO_REF_ARF (1 << 20)
86 #define AOM_EFLAG_NO_REF_BWD (1 << 21)
93 #define AOM_EFLAG_NO_REF_ARF2 (1 << 22)
100 #define AOM_EFLAG_NO_UPD_LAST (1 << 23)
107 #define AOM_EFLAG_NO_UPD_GF (1 << 24)
114 #define AOM_EFLAG_NO_UPD_ARF (1 << 25)
120 #define AOM_EFLAG_NO_UPD_ENTROPY (1 << 26)
126 #define AOM_EFLAG_NO_REF_FRAME_MVS (1 << 27)
132 #define AOM_EFLAG_ERROR_RESILIENT (1 << 28)
138 #define AOM_EFLAG_SET_S_FRAME (1 << 29)
144 #define AOM_EFLAG_SET_PRIMARY_REF_NONE (1 << 30)
1164 #define AOM_MAX_SEGMENTS 8
1209 AOM_CONTENT_DEFAULT,
1216 AOM_TIMING_UNSPECIFIED,
1218 AOM_TIMING_DEC_MODEL
1233 #define AOM_MAX_LAYERS 32
1234 #define AOM_MAX_SS_LAYERS 4
1235 #define AOM_MAX_TS_LAYERS 8
1238 typedef struct aom_svc_layer_id {
1275 #define AOM_CTRL_AOME_USE_REFERENCE
1277 #define AOM_CTRL_AOME_SET_ROI_MAP
1279 #define AOM_CTRL_AOME_SET_ACTIVEMAP
1281 #define AOM_CTRL_AOME_SET_SCALEMODE
1284 #define AOM_CTRL_AOME_SET_SPATIAL_LAYER_ID
1287 #define AOM_CTRL_AOME_SET_CPUUSED
1289 #define AOM_CTRL_AOME_SET_ENABLEAUTOALTREF
1292 #define AOM_CTRL_AOME_SET_ENABLEAUTOBWDREF
1295 #define AOM_CTRL_AOME_SET_SHARPNESS
1297 #define AOM_CTRL_AOME_SET_STATIC_THRESHOLD
1300 #define AOM_CTRL_AOME_SET_ARNR_MAXFRAMES
1302 #define AOM_CTRL_AOME_SET_ARNR_STRENGTH
1304 #define AOM_CTRL_AOME_SET_TUNING
1306 #define AOM_CTRL_AOME_SET_CQ_LEVEL
1309 #define AOM_CTRL_AV1E_SET_ROW_MT
1312 #define AOM_CTRL_AV1E_SET_TILE_COLUMNS
1314 #define AOM_CTRL_AV1E_SET_TILE_ROWS
1317 #define AOM_CTRL_AV1E_SET_ENABLE_TPL_MODEL
1320 #define AOM_CTRL_AOME_GET_LAST_QUANTIZER
1322 #define AOM_CTRL_AOME_GET_LAST_QUANTIZER_64
1325 #define AOM_CTRL_AOME_SET_MAX_INTRA_BITRATE_PCT
1327 #define AOM_CTRL_AOME_SET_MAX_INTER_BITRATE_PCT
1330 #define AOME_CTRL_AOME_SET_NUMBER_SPATIAL_LAYERS
1333 #define AOM_CTRL_AV1E_SET_GF_CBR_BOOST_PCT
1336 #define AOM_CTRL_AV1E_SET_LOSSLESS
1339 #define AOM_CTRL_AV1E_SET_ENABLE_CDEF
1342 #define AOM_CTRL_AV1E_SET_ENABLE_RESTORATION
1345 #define AOM_CTRL_AV1E_SET_FORCE_VIDEO_MODE
1348 #define AOM_CTRL_AV1E_SET_ENABLE_OBMC
1351 #define AOM_CTRL_AV1E_SET_DISABLE_TRELLIS_QUANT
1354 #define AOM_CTRL_AV1E_SET_ENABLE_QM
1357 #define AOM_CTRL_AV1E_SET_ENABLE_DIST_8X8
1360 #define AOM_CTRL_AV1E_SET_QM_MIN
1363 #define AOM_CTRL_AV1E_SET_QM_MAX
1366 #define AOM_CTRL_AV1E_SET_QM_Y
1369 #define AOM_CTRL_AV1E_SET_QM_U
1372 #define AOM_CTRL_AV1E_SET_QM_V
1375 #define AOM_CTRL_AV1E_SET_NUM_TG
1377 #define AOM_CTRL_AV1E_SET_MTU
1380 #define AOM_CTRL_AV1E_SET_TIMING_INFO_TYPE
1383 #define AOM_CTRL_AV1E_SET_ENABLE_RECT_PARTITIONS
1386 #define AOM_CTRL_AV1E_SET_ENABLE_AB_PARTITIONS
1389 #define AOM_CTRL_AV1E_SET_ENABLE_1TO4_PARTITIONS
1392 #define AOM_CTRL_AV1E_SET_MIN_PARTITION_SIZE
1395 #define AOM_CTRL_AV1E_SET_MAX_PARTITION_SIZE
1398 #define AOM_CTRL_AV1E_SET_ENABLE_INTRA_EDGE_FILTER
1401 #define AOM_CTRL_AV1E_SET_ENABLE_ORDER_HINT
1404 #define AOM_CTRL_AV1E_SET_ENABLE_TX64
1407 #define AOM_CTRL_AV1E_SET_TXSIZE_SEARCH_METHOD
1410 #define AOM_CTRL_AV1E_SET_ENABLE_FLIP_IDTX
1413 #define AOM_CTRL_AV1E_SET_ENABLE_DIST_WTD_COMP
1416 #define AOM_CTRL_AV1E_SET_ENABLE_REF_FRAME_MVS
1419 #define AOM_CTRL_AV1E_SET_ALLOW_REF_FRAME_MVS
1422 #define AOM_CTRL_AV1E_SET_ENABLE_DUAL_FILTER
1425 #define AOM_CTRL_AV1E_SET_ENABLE_CHROMA_DELTAQ
1428 #define AOM_CTRL_AV1E_SET_ENABLE_MASKED_COMP
1431 #define AOM_CTRL_AV1E_SET_ENABLE_ONESIDED_COMP
1434 #define AOM_CTRL_AV1E_SET_ENABLE_INTERINTRA_COMP
1437 #define AOM_CTRL_AV1E_SET_ENABLE_SMOOTH_INTERINTRA
1440 #define AOM_CTRL_AV1E_SET_ENABLE_DIFF_WTD_COMP
1443 #define AOM_CTRL_AV1E_SET_ENABLE_INTERINTER_WEDGE
1446 #define AOM_CTRL_AV1E_SET_ENABLE_INTERINTRA_WEDGE
1449 #define AOM_CTRL_AV1E_SET_ENABLE_GLOBAL_MOTION
1452 #define AOM_CTRL_AV1E_SET_ENABLE_WARPED_MOTION
1455 #define AOM_CTRL_AV1E_SET_ALLOW_WARPED_MOTION
1458 #define AOM_CTRL_AV1E_SET_ENABLE_FILTER_INTRA
1461 #define AOM_CTRL_AV1E_SET_ENABLE_SMOOTH_INTRA
1464 #define AOM_CTRL_AV1E_SET_ENABLE_PAETH_INTRA
1467 #define AOM_CTRL_AV1E_SET_ENABLE_CFL_INTRA
1470 #define AOM_CTRL_AV1E_SET_ENABLE_SUPERRES
1473 #define AOM_CTRL_AV1E_SET_ENABLE_PALETTE
1476 #define AOM_CTRL_AV1E_SET_ENABLE_INTRABC
1479 #define AOM_CTRL_AV1E_SET_ENABLE_ANGLE_DELTA
1482 #define AOM_CTRL_AV1E_SET_FRAME_PARALLEL_DECODING
1485 #define AOM_CTRL_AV1E_SET_ERROR_RESILIENT_MODE
1488 #define AOM_CTRL_AV1E_SET_S_FRAME_MODE
1491 #define AOM_CTRL_AV1E_SET_AQ_MODE
1494 #define AOM_CTRL_AV1E_SET_DELTAQ_MODE
1497 #define AOM_CTRL_AV1E_SET_DELTALF_MODE
1500 #define AOM_CTRL_AV1E_SET_FRAME_PERIODIC_BOOST
1503 #define AOM_CTRL_AV1E_SET_NOISE_SENSITIVITY
1506 #define AOM_CTRL_AV1E_SET_TUNE_CONTENT
1509 #define AOM_CTRL_AV1E_SET_COLOR_PRIMARIES
1512 #define AOM_CTRL_AV1E_SET_TRANSFER_CHARACTERISTICS
1515 #define AOM_CTRL_AV1E_SET_MATRIX_COEFFICIENTS
1518 #define AOM_CTRL_AV1E_SET_CHROMA_SAMPLE_POSITION
1521 #define AOM_CTRL_AV1E_SET_MIN_GF_INTERVAL
1524 #define AOM_CTRL_AV1E_SET_MAX_GF_INTERVAL
1527 #define AOM_CTRL_AV1E_GET_ACTIVEMAP
1530 #define AOM_CTRL_AV1E_SET_COLOR_RANGE
1532 #define AOM_CTRL_AV1E_SET_RENDER_SIZE
1536 #define AOM_CTRL_AV1E_SET_SUPERBLOCK_SIZE
1539 #define AOM_CTRL_AV1E_GET_SEQ_LEVEL_IDX
1542 #define AOM_CTRL_AV1E_SET_SINGLE_TILE_DECODING
1545 #define AOM_CTRL_AV1E_ENABLE_MOTION_VECTOR_UNIT_TEST
1548 #define AOM_CTRL_AV1E_SET_FILM_GRAIN_TEST_VECTOR
1551 #define AOM_CTRL_AV1E_SET_FILM_GRAIN_TABLE
1554 #define AOM_CTRL_AV1E_SET_CDF_UPDATE_MODE
1557 #define AOM_CTRL_AV1E_SET_DENOISE_NOISE_LEVEL
1560 #define AOM_CTRL_AV1E_SET_DENOISE_BLOCK_SIZE
1563 #define AOM_CTRL_AV1E_SET_CHROMA_SUBSAMPLING_X
1566 #define AOM_CTRL_AV1E_SET_CHROMA_SUBSAMPLING_Y
1569 #define AOM_CTRL_AV1E_SET_REDUCED_TX_TYPE_SET
1572 #define AOM_CTRL_AV1E_SET_INTRA_DCT_ONLY
1575 #define AOM_CTRL_AV1E_SET_INTER_DCT_ONLY
1578 #define AOM_CTRL_AV1E_SET_INTRA_DEFAULT_TX_ONLY
1581 #define AOM_CTRL_AV1E_SET_QUANT_B_ADAPT
1584 #define AOM_CTRL_AV1E_SET_GF_MAX_PYRAMID_HEIGHT
1587 #define AOM_CTRL_AV1E_SET_MAX_REFERENCE_FRAMES
1590 #define AOM_CTRL_AV1E_SET_REDUCED_REFERENCE_SET
1593 #define AOM_CTRL_AV1E_SET_COEFF_COST_UPD_FREQ
1596 #define AOM_CTRL_AV1E_SET_MODE_COST_UPD_FREQ
1599 #define AOM_CTRL_AV1E_SET_TARGET_SEQ_LEVEL_IDX
1602 #define AOM_CTRL_AV1E_SET_TIER_MASK
1605 #define AOM_CTRL_AV1E_SET_MIN_CR
1608 #define AOME_CTRL_AV1E_SET_SVC_LAYER_ID
1611 #define AOME_CTRL_AV1E_SET_SVC_PARAMS
1614 #define AOME_CTRL_AV1E_SET_SVC_REF_FRAME_CONFIG
1622 #endif // AOM_AOM_AOMCX_H_
Control to use dct only for intra modes.
Definition: aomcx.h:1081
Codec control function to set Max data rate for Intra frames.
Definition: aomcx.h:240
int number_spatial_layers
Definition: aomcx.h:1245
Codec control function to turn on / off Paeth intra mode usage.
Definition: aomcx.h:986
Codec control function to set an MTU size for a tile group.
Definition: aomcx.h:722
Codec control function to encode with CDEF.
Definition: aomcx.h:563
unsigned char * active_map
specify an on (1) or off (0) each 16x16 region within a frame
Definition: aomcx.h:1192
Codec control function to turn on / off frame order hint for a few tools:
Definition: aomcx.h:800
Describes the encoder algorithm interface to applications.
int spatial_layer_id
Definition: aomcx.h:1239
Codec control function to set max partition size.
Definition: aomcx.h:779
Codec control function to set noise sensitivity.
Definition: aomcx.h:391
Codec control function to encode with quantisation matrices.
Definition: aomcx.h:620
#define AOM_MAX_SS_LAYERS
Definition: aomcx.h:1234
Codec control function to signal picture timing info in the bitstream.
Definition: aomcx.h:1052
aom_scaling_mode_1d
aom 1-D scaling mode
Definition: aomcx.h:1150
int framerate_factor[8]
Definition: aomcx.h:1254
Codec control function to turn on / off interintra wedge compound.
Definition: aomcx.h:936
Control to use default tx type only for intra modes.
Definition: aomcx.h:1087
Codec control function to set chroma 4:2:0 sample position info.
Definition: aomcx.h:484
Codec control function to set min partition size.
Definition: aomcx.h:769
Codec control function to encode without trellis quantization.
Definition: aomcx.h:606
Codec control function to set the max no of frames to create arf.
Definition: aomcx.h:211
Codec control function to set constrained quality level.
Definition: aomcx.h:227
Control to set target sequence level index for a certain operating point(OP). Possible values are in ...
Definition: aomcx.h:529
struct aom_roi_map aom_roi_map_t
aom region of interest map
Provides controls common to both the AOM encoder and decoder.
Codec control function to set encoder scaling mode.
Definition: aomcx.h:168
Codec control function to turn on/off intra block copy mode.
Definition: aomcx.h:1007
Codec control function to turn on / off warped motion usage at sequence level.
Definition: aomcx.h:952
Codec control function to turn on / off interinter wedge compound.
Definition: aomcx.h:927
Codec control function to set the min quant matrix flatness.
Definition: aomcx.h:634
Codec control function to enable frame parallel decoding feature.
Definition: aomcx.h:341
enum aom_scaling_mode_1d AOM_SCALING_MODE
aom 1-D scaling mode
Control to use dct only for inter modes.
Definition: aomcx.h:1084
Codec control function to enable/disable rectangular partitions.
Definition: aomcx.h:742
Codec control function to set transfer function info.
Definition: aomcx.h:475
struct aom_scaling_mode aom_scaling_mode_t
aom image scaling mode
Codec control function to set color range bit.
Definition: aomcx.h:507
int refresh[8]
Definition: aomcx.h:1263
Codec control function to enable/disable AB partitions.
Definition: aomcx.h:750
Codec control function to add film grain parameters (one of several preset types) info in the bitstre...
Definition: aomcx.h:1059
Codec control function to set max data rate for Inter frames.
Definition: aomcx.h:257
Control to select maximum height for the GF group pyramid structure (valid values: 0 - 4) ...
Definition: aomcx.h:1094
Control to set minimum compression ratio. Take integer values. If non-zero, encoder will try to keep ...
Definition: aomcx.h:1130
#define AOM_MAX_TS_LAYERS
Definition: aomcx.h:1235
Codec control function to set number of tile columns.
Definition: aomcx.h:306
Codec control function to set reference frame config: the ref_idx and the refresh flags for each buff...
Definition: aomcx.h:1143
Codec control function to encode with dist_8x8.
Definition: aomcx.h:701
Control to select maximum reference frames allowed per frame (valid values: 3 - 7) ...
Definition: aomcx.h:1098
Sets the denoisers block size.
Definition: aomcx.h:1069
Codec control function to set sharpness.
Definition: aomcx.h:190
Sets the noise level.
Definition: aomcx.h:1066
int temporal_layer_id
Definition: aomcx.h:1240
Codec control function to turn on / off smooth inter-intra mode for a sequence.
Definition: aomcx.h:909
struct aom_svc_layer_id aom_svc_layer_id_t
Codec control function to turn on/off loopfilter modulation when delta q modulation is enabled...
Definition: aomcx.h:1029
Codec control function to set minimum interval between GF/ARF frames.
Definition: aomcx.h:490
unsigned int cols
Definition: aomcx.h:1194
Codec control function to turn on / off CFL uv intra mode usage.
Definition: aomcx.h:994
Codec control function to turn on / off flip and identity transforms.
Definition: aomcx.h:819
unsigned int cols
Definition: aomcx.h:1177
int layer_target_bitrate[32]
Definition: aomcx.h:1252
#define AOM_CTRL_USE_TYPE(id, typ)
aom_codec_control type definition macro
Definition: aom_codec.h:429
Codec control function to enable error_resilient_mode.
Definition: aomcx.h:351
Codec control function to encode with Loop Restoration Filter.
Definition: aomcx.h:573
Codec control function to set visual tuning.
Definition: aomcx.h:219
Codec control function to set the path to the film grain parameters.
Definition: aomcx.h:1063
struct aom_svc_params aom_svc_params_t
Codec control function to turn on / off global motion usage for a sequence.
Definition: aomcx.h:944
Codec control function to set the number of symbols in an ANS data window.
Definition: aomcx.h:734
Codec control function to turn on / off masked compound usage for a sequence.
Definition: aomcx.h:882
Codec control function to set minimum interval between GF/ARF frames.
Definition: aomcx.h:496
int scaling_factor_num[4]
Definition: aomcx.h:1249
Codec control function to set number of spatial layers.
Definition: aomcx.h:244
Sets the chroma subsampling y value.
Definition: aomcx.h:1075
int max_quantizers[32]
Definition: aomcx.h:1247
Codec control function to set SVC paramaeters.
Definition: aomcx.h:1138
int delta_lf[8]
Definition: aomcx.h:1179
Codec control function to turn on / off filter intra usage at sequence level.
Definition: aomcx.h:970
struct aom_svc_ref_frame_config aom_svc_ref_frame_config_t
aom active region map
Definition: aomcx.h:1190
int min_quantizers[32]
Definition: aomcx.h:1248
Codec control function to turn on / off interintra compound for a sequence.
Definition: aomcx.h:900
Sets the chroma subsampling x value.
Definition: aomcx.h:1072
Codec control function to turn on / off ref frame mvs (mfmv) usage at sequence level.
Definition: aomcx.h:846
Codec control function to set encoder spatial layer id.
Definition: aomcx.h:172
Codec control function to get last quantizer chosen by the encoder.
Definition: aomcx.h:207
#define AOM_MAX_LAYERS
Definition: aomcx.h:1233
Codec control function to get an Active map back from the encoder.
Definition: aomcx.h:500
int number_temporal_layers
Definition: aomcx.h:1246
Control to set bit mask that specifies which tier each of the 32 possible operating points conforms t...
Definition: aomcx.h:1123
Codec control function to set lossless encoding mode.
Definition: aomcx.h:283
Codec control function to turn on/off palette mode.
Definition: aomcx.h:1004
Control to set frequency of the cost updates for mode Possible values are: 0: Update at SB level (def...
Definition: aomcx.h:1117
Codec control function to set intended rendering image size.
Definition: aomcx.h:513
Codec control function to enable s_frame_mode.
Definition: aomcx.h:361
Codec control function to pass an ROI map to encoder.
Definition: aomcx.h:160
AOM_SCALING_MODE v_scaling_mode
Definition: aomcx.h:1204
Codec control function to set encoder internal speed settings.
Definition: aomcx.h:182
Codec control function to enable RDO modulated by frame temporal dependency.
Definition: aomcx.h:329
Codec control function to turn on / off dual filter usage for a sequence.
Definition: aomcx.h:864
Codec control function to get sequence level index for each operating point. There can be at most 32 ...
Definition: aomcx.h:535
Codec control function to set the delta q mode.
Definition: aomcx.h:1023
Codec control function to enable the extreme motion vector unit test in AV1. Please note that this is...
Definition: aomcx.h:1046
Codec control function to force video mode.
Definition: aomcx.h:583
Codec control function to turn on / off dist-wtd compound mode at sequence level. ...
Definition: aomcx.h:837
unsigned int static_threshold[8]
Definition: aomcx.h:1181
Codec control function to turn on / off 64-length transforms.
Definition: aomcx.h:808
Codec control function to pass an Active map to encoder.
Definition: aomcx.h:164
Codec control function to turn on / off one sided compound usage for a sequence.
Definition: aomcx.h:891
aom_tune_content
Definition: aomcx.h:1208
Codec control function to set the filter strength for the arf.
Definition: aomcx.h:215
unsigned char * roi_map
Definition: aomcx.h:1175
Control to use adaptive quantize_b.
Definition: aomcx.h:1090
aome_enc_control_id
AVx encoder control functions.
Definition: aomcx.h:153
Codec control function to enable automatic set and use alf frames.
Definition: aomcx.h:186
Codec control function to turn on / off intra edge filter at sequence level.
Definition: aomcx.h:788
Codec control function to set transform block size search method.
Definition: aomcx.h:827
#define AOM_MAX_SEGMENTS
Max number of segments.
Definition: aomcx.h:1164
Control to use a reduced tx type set.
Definition: aomcx.h:1078
aom region of interest map
Definition: aomcx.h:1173
unsigned int rows
Definition: aomcx.h:1193
Codec control function to turn on / off difference weighted compound.
Definition: aomcx.h:918
Codec control function to turn on / off smooth intra modes usage.
Definition: aomcx.h:978
Codec control function to set the min quant matrix flatness.
Definition: aomcx.h:686
Codec control function to set number of tile rows.
Definition: aomcx.h:322
struct aom_codec_iface aom_codec_iface_t
Codec interface structure.
Definition: aom_codec.h:181
Control to set frequency of the cost updates for coefficients Possible values are: 0: Update at SB le...
Definition: aomcx.h:1109
Codec control function to set the min quant matrix flatness.
Definition: aomcx.h:673
aom image scaling mode
Definition: aomcx.h:1202
struct aom_active_map aom_active_map_t
aom active region map
Codec control function to turn on / off warped motion usage at frame level.
Definition: aomcx.h:961
Codec control function to set content type.
Definition: aomcx.h:398
int scaling_factor_den[4]
Definition: aomcx.h:1250
Codec control function to set the max quant matrix flatness.
Definition: aomcx.h:647
int delta_q[8]
Definition: aomcx.h:1178
Codec control function to set color space info.
Definition: aomcx.h:427
Codec control function to set adaptive quantization mode.
Definition: aomcx.h:372
AOM_SCALING_MODE h_scaling_mode
Definition: aomcx.h:1203
Codec control function to predict with OBMC mode.
Definition: aomcx.h:593
aom_timing_info_type_t
Definition: aomcx.h:1215
Boost percentage for Golden Frame in CBR mode.
Definition: aomcx.h:270
Codec control function to enable/disable 1:4 and 4:1 partitions.
Definition: aomcx.h:758
Codec control function to set CDF update mode.
Definition: aomcx.h:405
unsigned int rows
Definition: aomcx.h:1176
Codec control function to set transfer function info.
Definition: aomcx.h:453
Codec control function to turn on/off intra angle delta.
Definition: aomcx.h:1010
Codec control function to set the single tile decoding mode to 0 or 1.
Definition: aomcx.h:1039
Codec control function to turn on / off frame superresolution.
Definition: aomcx.h:1001
Codec control function to set temporal mv prediction enabling/disabling at frame level.
Definition: aomcx.h:855
Codec control function to set the min quant matrix flatness.
Definition: aomcx.h:660
Codec control function to set the threshold for MBs treated static.
Definition: aomcx.h:194
aom_tune_metric
Model tuning parameters.
Definition: aomcx.h:1226
Codec control function to set intended superblock size.
Definition: aomcx.h:544
Codec control function to enable/disable periodic Q boost.
Definition: aomcx.h:385
Codec control function to get last quantizer chosen by the encoder.
Definition: aomcx.h:200
Codec control function to set a maximum number of tile groups.
Definition: aomcx.h:710
Codec control function to set the layer id.
Definition: aomcx.h:1134
Codec control function to turn on / off delta quantization in chroma planes usage for a sequence...
Definition: aomcx.h:873
Codec control function to enable automatic set and use bwd-pred frames.
Definition: aomcx.h:550
Codec control function to set which reference frame encoder can use.
Definition: aomcx.h:156
Control to use reduced set of single and compound references.
Definition: aomcx.h:1101
int ref_idx[7]
Definition: aomcx.h:1262