#include "config.h"
#include "bswap.h"
#include "crc.h"
Go to the source code of this file.
Functions | |
int | av_crc_init (AVCRC *ctx, int le, int bits, uint32_t poly, int ctx_size) |
Initializes a CRC table. | |
const AVCRC * | av_crc_get_table (AVCRCId crc_id) |
Gets an initialized standard CRC table. | |
uint32_t | av_crc (const AVCRC *ctx, uint32_t crc, const uint8_t *buffer, size_t length) |
Calculates the CRC of a block. | |
Variables | |
struct { | |
uint8_t le | |
uint8_t bits | |
uint32_t poly | |
} | av_crc_table_params [AV_CRC_MAX] |
static AVCRC | av_crc_table [AV_CRC_MAX][257] |
uint32_t av_crc | ( | const AVCRC * | ctx, | |
uint32_t | crc, | |||
const uint8_t * | buffer, | |||
size_t | length | |||
) |
Calculates the CRC of a block.
crc | CRC of previous blocks if any or initial value for CRC |
Definition at line 114 of file crc.c.
Referenced by ac3_decode_frame(), decode_frame(), ff_crc04C11DB7_update(), ff_mlp_checksum16(), ff_mlp_checksum8(), ff_mlp_restart_checksum(), mpegts_write_section(), output_frame_end(), output_frame_footer(), output_frame_header(), and write_section_data().
Gets an initialized standard CRC table.
crc_id | ID of a standard CRC |
Definition at line 94 of file crc.c.
Referenced by ac3_decode_frame(), decode_frame(), ff_crc04C11DB7_update(), mpegts_write_section(), output_frame_end(), output_frame_footer(), output_frame_header(), and write_section_data().
int av_crc_init | ( | AVCRC * | ctx, | |
int | le, | |||
int | bits, | |||
uint32_t | poly, | |||
int | ctx_size | |||
) |
Initializes a CRC table.
ctx | must be an array of size sizeof(AVCRC)*257 or sizeof(AVCRC)*1024 | |
cts_size | size of ctx in bytes | |
le | If 1, the lowest bit represents the coefficient for the highest exponent of the corresponding polynomial (both for poly and actual CRC). If 0, you must swap the CRC parameter and the result of av_crc if you need the standard representation (can be simplified in most cases to e.g. bswap16): bswap_32(crc << (32-bits)) | |
bits | number of bits for the CRC | |
poly | generator polynomial without the x**bits coefficient, in the representation as specified by le |
Definition at line 58 of file crc.c.
Referenced by av_crc_get_table(), and ff_mlp_init_crc().
AVCRC av_crc_table[AV_CRC_MAX][257] [static] |
struct { ... } av_crc_table_params[AV_CRC_MAX] [static] |
Referenced by av_crc_get_table().
uint8_t bits |
Definition at line 30 of file crc.c.
Referenced by aac_sync(), ac3_decode_transform_coeffs_ch(), adaptive_quantization(), av_crc_get_table(), avg_bits_per_pixel(), bit8x8_c(), build_huff_tree(), calc_rice_params(), calc_rice_params_fixed(), calc_rice_params_lpc(), calculate_band_sign_bits(), check_slice_end(), compute_mantissa_size(), decode_band_types(), decode_cabac_mb_type_b(), decode_i2_frame(), dnxhd_calc_ac_bits(), dnxhd_encode_rdo(), dnxhd_find_qscale(), dvbsub_read_2bit_string(), dvbsub_read_4bit_string(), dvbsub_read_8bit_string(), encode_block(), encode_frame(), encode_picture(), encode_residual(), encode_thread(), ff_copy_bits(), ff_eac3_decode_transform_coeffs_aht_ch(), ff_get_plane_bytewidth(), ff_mpeg1_encode_init(), ff_rate_control_init(), ff_rate_estimate_qscale(), ff_rv34_decode_init(), gb_get_v(), generate_bits_table(), generate_joint_tables(), get_bits_diff(), get_qscale(), imc_decode_frame(), init_pass2(), init_uni_ac_vlc(), modify_qscale(), mp_decode_layer2(), mpc7_decode_frame(), mpc8_dec_enum(), mpc8_decode_frame(), mpeg1_encode_motion(), nelly_decode_block(), put_codebook_header(), rd8x8_c(), read_huffman_tables(), readQuantSpectralCoeffs(), seq_decode_op1(), smka_decode_frame(), vorbis_parse_setup_hdr_floors(), vorbis_parse_setup_hdr_mappings(), vorbis_parse_setup_hdr_residues(), wp_log2(), and xan_huffman_decode().
uint8_t le |
uint32_t poly |