Name Description Size Coverage
allintra_vis.c 43471 -
allintra_vis.h 1866 -
aq_complexity.c 6823 -
aq_complexity.h 1204 -
aq_cyclicrefresh.c 29681 -
aq_cyclicrefresh.h ! \brief The stucture of CYCLIC_REFRESH. \ingroup cyclic_refresh 10737 -
aq_variance.c 11525 -
aq_variance.h 1529 -
arm -
av1_fwd_txfm1d.c 63521 -
av1_fwd_txfm1d.h 2194 -
av1_fwd_txfm1d_cfg.h 894 -
av1_fwd_txfm2d.c 17737 -
av1_fwd_txfm2d_hwy.h txw_idx 120844 -
av1_ml_partition_models.h 6454 -
av1_noise_estimate.c 11362 -
av1_noise_estimate.h 1360 -
av1_quantize.c 46434 -
av1_quantize.h 8794 -
av1_temporal_denoiser.c 28975 -
av1_temporal_denoiser.h 4736 -
bitstream.c 171177 -
bitstream.h !\cond 5681 -
block.h ! \file Declares various structs used to encode the current partition block. 53688 -
blockiness.c 4505 -
blockiness.h 838 -
cnn.c 49059 -
cnn.h 7968 -
compound_type.c 72930 -
compound_type.h 2135 -
context_tree.c 10803 -
context_tree.h 4679 -
cost.c 1936 -
cost.h 1817 -
deltaq4_model.c Embedded file: model.tflite 621871 -
dwt.c 4202 -
dwt.h 918 -
enc_enums.h 5758 -
encode_strategy.c 68452 -
encode_strategy.h !\file \brief Declares frame encoding functions. 5642 -
encodeframe.c !\cond 110286 -
encodeframe.h 1826 -
encodeframe_utils.c 71612 -
encodeframe_utils.h 21558 -
encodemb.c 35947 -
encodemb.h 7808 -
encodemv.c TODO(siekyleb@amazon.com): This function writes MV_VALS ints or 128 KiB. This is more than most L1D caches and is a significant chunk of L2. Write SIMD that uses streaming writes to avoid loading all of that into L1, or just don't update the larger component costs every time this called (or both). 12779 -
encodemv.h 4088 -
encoder.c 225737 -
encoder.h !\file \brief Declares top-level encoder structures and functions. 136118 -
encoder_alloc.h 19028 -
encoder_utils.c 72216 -
encoder_utils.h 46906 -
encodetxb.c 35842 -
encodetxb.h !\cond 11074 -
ethread.c 132349 -
ethread.h 4451 -
extend.c 6282 -
extend.h 905 -
external_partition.c 3822 -
external_partition.h !\cond 2022 -
firstpass.c 64145 -
firstpass.h ! \brief The stucture of acummulated frame stats in the first pass. Errors (coded_error, intra_error, etc.) and counters (new_mv_count) are normalized to each MB. MV related stats (MVc, MVr, etc.) are normalized to the frame width and height. See function normalize_firstpass_stats. 19268 -
global_motion.c 21139 -
global_motion.h 4538 -
global_motion_facade.c 19228 -
global_motion_facade.h 2173 -
gop_structure.c 40071 -
gop_structure.h !\cond 2206 -
grain_test_vectors.h Test vectors for emulation of different film grain types. Note that bit depth would be derived from the bitstream and not signaled in film grain metadata. The parameters are valid for any bit depth. 21401 -
hash.c CRC-32C (iSCSI) polynomial in reversed bit order. 2541 -
hash.h Table for a quadword-at-a-time software crc. 1270 -
hash_motion.c 18662 -
hash_motion.h 3751 -
hybrid_fwd_txfm.c 4-point reversible, orthonormal Walsh-Hadamard in 3.5 adds, 0.5 shifts per pixel. Shared for both high and low bit depth. 13490 -
hybrid_fwd_txfm.h !\brief Apply Hadamard or DCT transform \callergraph DCT and Hadamard transforms are commonly used for quick RD score estimation. The coeff buffer's size should be equal to the number of pixels corresponding to tx_size. 1437 -
interp_search.c 35032 -
interp_search.h !\cond 6607 -
intra_mode_search.c !\cond 74833 -
intra_mode_search.h !\file \brief Declares high level functions to search through intra modes. 16102 -
intra_mode_search_utils.h !\file \brief Defines utility functions used in intra mode search. This includes rdcost estimations, histogram based pruning, etc. 28672 -
k_means_template.h 5030 -
level.c 51124 -
level.h 6981 -
lookahead.c Return the buffer at the given absolute index and increment the index 7474 -
lookahead.h !\file \brief Describes look ahead buffer operations. 4792 -
mcomp.c 162025 -
mcomp.h 15152 -
mcomp_structs.h 4012 -
misc_model_weights.h 48312 -
ml.c 6423 -
ml.h 3138 -
mode_prune_model_weights.h 8867 -
model_rd.h 10004 -
motion_search_facade.c 44474 -
motion_search_facade.h 6104 -
mv_prec.c 16531 -
mv_prec.h 2163 -
nonrd_opt.c When is_tx_8x8_dual_applicable is true, we compute the txfm for the \ entire bsize and write macroblock_plane::coeff. So low_coeff is kept \ as a non-const so we can reassign it to macroblock_plane::coeff. 39728 -
nonrd_opt.h !\cond 28710 -
nonrd_pickmode.c 158408 -
optical_flow.c 44384 -
optical_flow.h 2068 -
palette.c !\brief Removes duplicated centroid indices. \ingroup palette_mode_search \param[in] centroids A list of centroids index. \param[in] num_centroids Number of centroids. \return Returns the number of unique centroids and saves the unique centroids in beginning of the centroids array. \attention The centroids should be rounded to integers before calling this method. 43347 -
palette.h !\file \brief Declares functions used in palette search. 8722 -
partition_cnn_weights.h 135783 -
partition_model_weights.h 471025 -
partition_search.c 266596 -
partition_search.h 4050 -
partition_strategy.c 106719 -
partition_strategy.h 11847 -
pass2_strategy.c !\defgroup gf_group_algo Golden Frame Group \ingroup high_level_algo Algorithms regarding determining the length of GF groups and defining GF group structures. @{ 180457 -
pass2_strategy.h ! \brief accumulated stats and features in a gf group 4096 -
pickcdef.c Search for the best strength to add as an option, knowing we already selected nb_strengths options. 42787 -
pickcdef.h !\enum CDEF_CONTROL \brief This enum controls to which frames CDEF is applied. 8852 -
picklpf.c 18392 -
picklpf.h 7161 -
pickrst.c 89535 -
pickrst.h !\brief Algorithm for AV1 loop restoration search and estimation. \ingroup in_loop_restoration This function determines proper restoration filter types and associated parameters for each restoration unit in a frame. \param[in] sd Source frame buffer \param[in,out] cpi Top-level encoder structure \remark Nothing is returned. Instead, chosen restoration filter types and parameters are stored per plane in the \c rst_info structure of type \ref RestorationInfo inside \c cpi->common: \arg \c rst_info[ \c 0 ]: Chosen parameters for Y plane \arg \c rst_info[ \c 1 ]: Chosen parameters for U plane if it exists \arg \c rst_info[ \c 2 ]: Chosen parameters for V plane if it exists \par The following fields in each \c rst_info[ \c p], \c p = 0, 1, 2 are populated: \arg \c rst_info[ \c p ].\c frame_restoration_type \arg \c rst_info[ \c p ].\c unit_info[ \c u ], for each \c u in 0, 1, ..., \c n( \c p ) - 1, where \c n( \c p ) is the number of restoration units in plane \c p. \par The following fields in each \c rst_info[ \c p ].\c unit_info[ \c u ], \c p = 0, 1, 2 and \c u = 0, 1, ..., \c n( \c p ) - 1, of type \ref RestorationUnitInfo are populated: \arg \c rst_info[ \c p ].\c unit_info[ \c u ].\c restoration_type \arg \c rst_info[ \c p ].\c unit_info[ \c u ].\c wiener_info OR \c rst_info[ \c p ].\c unit_info[ \c u ].\c sgrproj_info OR neither, depending on \c rst_info[ \c p ].\c unit_info[ \c u ].\c restoration_type 4871 -
pustats.h 9079 -
random.h 2853 -
ratectrl.c 171816 -
ratectrl.h !\cond 23367 -
rc_utils.h !\brief Function to test for conditions that indicate we should loop back and recode a frame. \ingroup rate_control \param[in] cpi Top-level encoder structure \param[in] high_limit Upper rate threshold \param[in] low_limit Lower rate threshold \param[in] q Current q index \param[in] maxq Maximum allowed q index \param[in] minq Minimum allowed q index \return Indicates if a recode is required. \retval 1 Recode Required \retval 0 No Recode required 18629 -
rd.c 63164 -
rd.h 14053 -
rdopt.c 279172 -
rdopt.h !\brief AV1 intra mode selection for intra frames. \ingroup intra_mode_search \callgraph Top level function for rd-based intra mode selection during intra frame encoding. This function will first search for the best luma prediction by calling av1_rd_pick_intra_sby_mode, then it searches for chroma prediction with av1_rd_pick_intra_sbuv_mode. If applicable, this function ends the search with an evaluation for intrabc. \param[in] cpi Top-level encoder structure. \param[in] x Pointer to structure holding all the data for the current macroblock. \param[in] rd_cost Struct to keep track of the RD information. \param[in] bsize Current block size. \param[in] ctx Structure to hold snapshot of coding context during the mode picking process. \param[in] best_rd Best RD seen for this block so far. \remark Nothing is returned. Instead, the MB_MODE_INFO struct inside x is modified to store information about the best mode computed in this function. The rd_cost struct is also updated with the RD stats corresponding to the best mode found. 14077 -
rdopt_data_defs.h clang-format off 13308 -
rdopt_utils.h 33867 -
reconinter_enc.c build_for_obmc= 29092 -
reconinter_enc.h 4614 -
saliency_map.c 46890 -
saliency_map.h 1031 -
segmentation.c 1633 -
segmentation.h 1287 -
sorting_network.h ! \file This file contains several utility functions used to sort small arrays with sorting networks. Sorting network is a (potentially branch-less) way to quickly sort small arrays with known size. For more details, consult (https://en.wikipedia.org/wiki/Sorting_network). 3456 -
sparse_linear_solver.c Input: rows: array of row positions cols: array of column positions values: array of element values num_elem: total number of elements in the matrix num_rows: number of rows in the matrix num_cols: number of columns in the matrix Output: sm: pointer to the sparse matrix to be initialized Return: 0 - success -1 - failed 12591 -
sparse_linear_solver.h AOM_AV1_ENCODER_SPARSE_LINEAR_SOLVER_H_ 2587 -
speed_features.c 122983 -
speed_features.h ! @file 83878 -
superres_scale.c 17233 -
superres_scale.h 889 -
svc_layercontext.c 31208 -
svc_layercontext.h ! \brief The stucture of quantities related to each spatial and temporal layer. \ingroup SVC 9445 -
temporal_filter.c !\cond 70370 -
temporal_filter.h !\cond 17553 -
thirdpass.c 31162 -
thirdpass.h --- Input and decoding related members --- 7198 -
tokenize.c 15225 -
tokenize.h 5967 -
tpl_model.c 101531 -
tpl_model.h !\cond 27435 -
tune_butteraugli.c 12687 -
tune_butteraugli.h 1741 -
tune_vmaf.c fine_search_interval= 47498 -
tune_vmaf.h 2189 -
tx_prune_model_weights.h ! \file Contains the details of the ML models used for pruning transform size. This file is only included by av1/encoder/tx_search.c. 160555 -
tx_search.c 154649 -
tx_search.h !\brief Compute the pixel domain distortion. \ingroup transform_search Compute the pixel domain distortion from diff on all visible 4x4s in the transform block. \param[in] x Pointer to structure holding the data for the current encoding macroblock \param[in] plane Plane index \param[in] blk_row Block row index \param[in] blk_col Block col index \param[in] plane_bsize Current plane block size \param[in] tx_bsize Transform size \param[in] block_mse_q8 Block mse \return An int64_t value that is the block sse. 9599 -
txb_rdopt.c 27466 -
txb_rdopt.h !\brief Adjust the magnitude of quantized coefficients to achieve better rate-distortion (RD) trade-off. \ingroup coefficient_coding This function goes through each coefficient and greedily choose to lower the coefficient magnitude by 1 or not based on the RD score. The coefficients are processing in reversed scan order. Note that, the end of block position (eob) may change if the original last coefficient is lowered to zero. \param[in] cpi Top-level encoder structure \param[in] x Pointer to structure holding the data for the current encoding macroblock \param[in] plane The index of the current plane \param[in] block The index of the current transform block in the \param[in] tx_size The transform size \param[in] tx_type The transform type \param[in] txb_ctx Context info for entropy coding transform block skip flag (tx_skip) and the sign of DC coefficient (dc_sign). \param[out] rate_cost The entropy cost of coding the transform block after adjustment of coefficients. \param[in] sharpness When sharpness > 0, the function will be less aggressive towards lowering the magnitude of coefficients. In this way, the transform block will contain more high-frequency coefficients and therefore will preserve the sharpness of the reconstructed block. 5596 -
txb_rdopt_utils.h 9031 -
var_based_part.c 83658 -
var_based_part.h !\brief Set the thresholds for variance based partition. Set the variance split thresholds for following the block sizes: 0 - threshold_128x128, 1 - threshold_64x64, 2 - threshold_32x32, 3 - vbp_threshold_16x16. 4 - vbp_threshold_8x8 (to split to 4x4 partition) is currently only used on key frame. The thresholds are based om Q, resolution, noise level, and content state. \ingroup variance_partition \callgraph \callergraph \param[in] cpi Top level encoder structure \param[in] q q index \param[in] content_lowsumdiff Low sumdiff flag for superblock \remark Returns the set of thresholds in \c cpi->vbp_info.thresholds. 4276 -
wedge_utils.c Computes SSE of a compound predictor constructed from 2 fundamental predictors p0 and p1 using blending with mask. r1: Residuals of p1. (source - p1) d: Difference of p1 and p0. (p1 - p0) m: The blending mask N: Number of pixels 'r1', 'd', and 'm' are contiguous. Computes: Sum((MAX_MASK_VALUE*r1 + mask*d)**2), which is equivalent to: Sum((mask*r0 + (MAX_MASK_VALUE-mask)*r1)**2), where r0 is (source - p0), and r1 is (source - p1), which is in turn is equivalent to: Sum((source*MAX_MASK_VALUE - (mask*p0 + (MAX_MASK_VALUE-mask)*p1))**2), which is the SSE of the residuals of the compound predictor scaled up by MAX_MASK_VALUE**2. Note that we clamp the partial term in the loop to 16 bits signed. This is to facilitate equivalent SIMD implementation. It should have no effect if residuals are within 16 - WEDGE_WEIGHT_BITS (=10) signed, which always holds for 8 bit input, and on real input, it should hold practically always, as residuals are expected to be small. 4102 -
x86 -