FFmpeg
Data Structures | Macros | Functions
get_bits.h File Reference
#include <stdint.h>
#include "libavutil/common.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/avassert.h"
#include "defs.h"
#include "mathops.h"
#include "vlc.h"

Go to the source code of this file.

Data Structures

struct  GetBitContext
 

Macros

#define UNCHECKED_BITSTREAM_READER   !CONFIG_SAFE_BITSTREAM_READER
 
#define CACHED_BITSTREAM_READER   0
 
#define MIN_CACHE_BITS   25
 
#define OPEN_READER_NOSIZE(name, gb)
 
#define OPEN_READER(name, gb)   OPEN_READER_NOSIZE(name, gb)
 
#define BITS_AVAILABLE(name, gb)   1
 
#define CLOSE_READER(name, gb)   (gb)->index = name ## _index
 
#define UPDATE_CACHE_BE_EXT(name, gb, bits, dst_bits)
 
#define UPDATE_CACHE_LE_EXT(name, gb, bits, dst_bits)
 
#define UPDATE_CACHE_LE_32(name, gb)   UPDATE_CACHE_LE_EXT(name, (gb), 64, 32)
 
#define UPDATE_CACHE_BE_32(name, gb)   UPDATE_CACHE_BE_EXT(name, (gb), 64, 32)
 
#define UPDATE_CACHE_LE(name, gb)   UPDATE_CACHE_LE_EXT(name, (gb), 32, 32)
 
#define UPDATE_CACHE_BE(name, gb)   UPDATE_CACHE_BE_EXT(name, (gb), 32, 32)
 
#define UPDATE_CACHE(name, gb)   UPDATE_CACHE_BE(name, gb)
 
#define UPDATE_CACHE_32(name, gb)   UPDATE_CACHE_BE_32(name, (gb))
 
#define SKIP_CACHE(name, gb, num)   name ## _cache <<= (num)
 
#define SKIP_COUNTER(name, gb, num)   name ## _index += (num)
 
#define BITS_LEFT(name, gb)   ((int)((gb)->size_in_bits - name ## _index))
 
#define SKIP_BITS(name, gb, num)
 
#define LAST_SKIP_BITS(name, gb, num)   SKIP_COUNTER(name, gb, num)
 
#define SHOW_UBITS_LE(name, gb, num)   zero_extend(name ## _cache, num)
 
#define SHOW_SBITS_LE(name, gb, num)   sign_extend(name ## _cache, num)
 
#define SHOW_UBITS_BE(name, gb, num)   NEG_USR32(name ## _cache, num)
 
#define SHOW_SBITS_BE(name, gb, num)   NEG_SSR32(name ## _cache, num)
 
#define SHOW_UBITS(name, gb, num)   SHOW_UBITS_BE(name, gb, num)
 
#define SHOW_SBITS(name, gb, num)   SHOW_SBITS_BE(name, gb, num)
 
#define GET_CACHE(name, gb)   ((uint32_t) name ## _cache)
 
#define GET_VLC(code, name, gb, table, bits, max_depth)
 If the vlc code is invalid and max_depth=1, then no bits will be removed. More...
 
#define GET_RL_VLC(level, run, name, gb, table, bits, max_depth, need_update)
 

Functions

static unsigned int get_bits (GetBitContext *s, int n)
 Read 1-25 bits. More...
 
static void skip_bits (GetBitContext *s, int n)
 
static unsigned int show_bits (GetBitContext *s, int n)
 Show 1-25 bits. More...
 
static int get_bits_count (const GetBitContext *s)
 
static void skip_bits_long (GetBitContext *s, int n)
 Skips the specified number of bits. More...
 
static int get_xbits (GetBitContext *s, int n)
 Read MPEG-1 dc-style VLC (sign bit + mantissa with no MSB). More...
 
static int get_xbits_le (GetBitContext *s, int n)
 
static int get_sbits (GetBitContext *s, int n)
 
static av_always_inline int get_bitsz (GetBitContext *s, int n)
 Read 0-25 bits. More...
 
static unsigned int get_bits_le (GetBitContext *s, int n)
 
static unsigned int get_bits1 (GetBitContext *s)
 
static unsigned int show_bits1 (GetBitContext *s)
 
static void skip_bits1 (GetBitContext *s)
 
static unsigned int get_bits_long (GetBitContext *s, int n)
 Read 0-32 bits. More...
 
static uint64_t get_bits64 (GetBitContext *s, int n)
 Read 0-64 bits. More...
 
static int get_sbits_long (GetBitContext *s, int n)
 Read 0-32 bits as a signed integer. More...
 
static int64_t get_sbits64 (GetBitContext *s, int n)
 Read 0-64 bits as a signed integer. More...
 
static unsigned int show_bits_long (GetBitContext *s, int n)
 Show 0-32 bits. More...
 
static int init_get_bits (GetBitContext *s, const uint8_t *buffer, int bit_size)
 Initialize GetBitContext. More...
 
static int init_get_bits8 (GetBitContext *s, const uint8_t *buffer, int byte_size)
 Initialize GetBitContext. More...
 
static int init_get_bits8_le (GetBitContext *s, const uint8_t *buffer, int byte_size)
 
static const uint8_t * align_get_bits (GetBitContext *s)
 
static av_always_inline int get_vlc2 (GetBitContext *s, const VLCElem *table, int bits, int max_depth)
 Parse a vlc code. More...
 
static int get_vlc_multi (GetBitContext *s, uint8_t *dst, const VLC_MULTI_ELEM *const Jtable, const VLCElem *const table, const int bits, const int max_depth)
 
static int decode012 (GetBitContext *gb)
 
static int decode210 (GetBitContext *gb)
 
static int get_bits_left (GetBitContext *gb)
 
static int skip_1stop_8data_bits (GetBitContext *gb)
 

Detailed Description

bitstream reader API header.

Definition in file get_bits.h.

Macro Definition Documentation

◆ UNCHECKED_BITSTREAM_READER

#define UNCHECKED_BITSTREAM_READER   !CONFIG_SAFE_BITSTREAM_READER

Definition at line 53 of file get_bits.h.

◆ CACHED_BITSTREAM_READER

#define CACHED_BITSTREAM_READER   0

Definition at line 57 of file get_bits.h.

◆ MIN_CACHE_BITS

#define MIN_CACHE_BITS   25

Definition at line 169 of file get_bits.h.

◆ OPEN_READER_NOSIZE

#define OPEN_READER_NOSIZE (   name,
  gb 
)
Value:
unsigned int name ## _index = (gb)->index; \
unsigned int av_unused name ## _cache

Definition at line 172 of file get_bits.h.

◆ OPEN_READER

#define OPEN_READER (   name,
  gb 
)    OPEN_READER_NOSIZE(name, gb)

Definition at line 177 of file get_bits.h.

◆ BITS_AVAILABLE

#define BITS_AVAILABLE (   name,
  gb 
)    1

Definition at line 179 of file get_bits.h.

◆ CLOSE_READER

#define CLOSE_READER (   name,
  gb 
)    (gb)->index = name ## _index

Definition at line 188 of file get_bits.h.

◆ UPDATE_CACHE_BE_EXT

#define UPDATE_CACHE_BE_EXT (   name,
  gb,
  bits,
  dst_bits 
)
Value:
name ## _cache = \
AV_RB ## bits((gb)->buffer + (name ## _index >> 3)) << (name ## _index & 7) >> (bits - dst_bits)

Definition at line 190 of file get_bits.h.

◆ UPDATE_CACHE_LE_EXT

#define UPDATE_CACHE_LE_EXT (   name,
  gb,
  bits,
  dst_bits 
)
Value:
name ## _cache = \
(uint ## dst_bits ## _t)(AV_RL ## bits((gb)->buffer + (name ## _index >> 3)) >> (name ## _index & 7))

Definition at line 193 of file get_bits.h.

◆ UPDATE_CACHE_LE_32

#define UPDATE_CACHE_LE_32 (   name,
  gb 
)    UPDATE_CACHE_LE_EXT(name, (gb), 64, 32)

Definition at line 197 of file get_bits.h.

◆ UPDATE_CACHE_BE_32

#define UPDATE_CACHE_BE_32 (   name,
  gb 
)    UPDATE_CACHE_BE_EXT(name, (gb), 64, 32)

Definition at line 199 of file get_bits.h.

◆ UPDATE_CACHE_LE

#define UPDATE_CACHE_LE (   name,
  gb 
)    UPDATE_CACHE_LE_EXT(name, (gb), 32, 32)

Definition at line 209 of file get_bits.h.

◆ UPDATE_CACHE_BE

#define UPDATE_CACHE_BE (   name,
  gb 
)    UPDATE_CACHE_BE_EXT(name, (gb), 32, 32)

Definition at line 211 of file get_bits.h.

◆ UPDATE_CACHE

#define UPDATE_CACHE (   name,
  gb 
)    UPDATE_CACHE_BE(name, gb)

Definition at line 225 of file get_bits.h.

◆ UPDATE_CACHE_32

#define UPDATE_CACHE_32 (   name,
  gb 
)    UPDATE_CACHE_BE_32(name, (gb))

Definition at line 226 of file get_bits.h.

◆ SKIP_CACHE

#define SKIP_CACHE (   name,
  gb,
  num 
)    name ## _cache <<= (num)

Definition at line 228 of file get_bits.h.

◆ SKIP_COUNTER

#define SKIP_COUNTER (   name,
  gb,
  num 
)    name ## _index += (num)

Definition at line 233 of file get_bits.h.

◆ BITS_LEFT

#define BITS_LEFT (   name,
  gb 
)    ((int)((gb)->size_in_bits - name ## _index))

Definition at line 239 of file get_bits.h.

◆ SKIP_BITS

#define SKIP_BITS (   name,
  gb,
  num 
)
Value:
do { \
SKIP_CACHE(name, gb, num); \
SKIP_COUNTER(name, gb, num); \
} while (0)

Definition at line 241 of file get_bits.h.

◆ LAST_SKIP_BITS

#define LAST_SKIP_BITS (   name,
  gb,
  num 
)    SKIP_COUNTER(name, gb, num)

Definition at line 247 of file get_bits.h.

◆ SHOW_UBITS_LE

#define SHOW_UBITS_LE (   name,
  gb,
  num 
)    zero_extend(name ## _cache, num)

Definition at line 249 of file get_bits.h.

◆ SHOW_SBITS_LE

#define SHOW_SBITS_LE (   name,
  gb,
  num 
)    sign_extend(name ## _cache, num)

Definition at line 250 of file get_bits.h.

◆ SHOW_UBITS_BE

#define SHOW_UBITS_BE (   name,
  gb,
  num 
)    NEG_USR32(name ## _cache, num)

Definition at line 252 of file get_bits.h.

◆ SHOW_SBITS_BE

#define SHOW_SBITS_BE (   name,
  gb,
  num 
)    NEG_SSR32(name ## _cache, num)

Definition at line 253 of file get_bits.h.

◆ SHOW_UBITS

#define SHOW_UBITS (   name,
  gb,
  num 
)    SHOW_UBITS_BE(name, gb, num)

Definition at line 259 of file get_bits.h.

◆ SHOW_SBITS

#define SHOW_SBITS (   name,
  gb,
  num 
)    SHOW_SBITS_BE(name, gb, num)

Definition at line 260 of file get_bits.h.

◆ GET_CACHE

#define GET_CACHE (   name,
  gb 
)    ((uint32_t) name ## _cache)

Definition at line 263 of file get_bits.h.

◆ GET_VLC

#define GET_VLC (   code,
  name,
  gb,
  table,
  bits,
  max_depth 
)
Value:
do { \
int n, nb_bits; \
unsigned int index; \
\
index = SHOW_UBITS(name, gb, bits); \
code = table[index].sym; \
n = table[index].len; \
if (max_depth > 1 && n < 0) { \
LAST_SKIP_BITS(name, gb, bits); \
UPDATE_CACHE(name, gb); \
\
nb_bits = -n; \
\
index = SHOW_UBITS(name, gb, nb_bits) + code; \
code = table[index].sym; \
n = table[index].len; \
if (max_depth > 2 && n < 0) { \
LAST_SKIP_BITS(name, gb, nb_bits); \
UPDATE_CACHE(name, gb); \
\
nb_bits = -n; \
\
index = SHOW_UBITS(name, gb, nb_bits) + code; \
code = table[index].sym; \
n = table[index].len; \
} \
} \
SKIP_BITS(name, gb, n); \
} while (0)

If the vlc code is invalid and max_depth=1, then no bits will be removed.

If the vlc code is invalid and max_depth>1, then the number of bits removed is undefined.

Definition at line 574 of file get_bits.h.

◆ GET_RL_VLC

#define GET_RL_VLC (   level,
  run,
  name,
  gb,
  table,
  bits,
  max_depth,
  need_update 
)

Definition at line 606 of file get_bits.h.

Function Documentation

◆ get_bits()

static unsigned int get_bits ( GetBitContext s,
int  n 
)
inlinestatic

Read 1-25 bits.

Definition at line 335 of file get_bits.h.

Referenced by aac_adtstoasc_filter(), aac_decode_frame_int(), ac3_decode_transform_coeffs_ch(), ac3_parse_header(), ac_get(), ac_init(), ac_read_model(), add_coefficients(), adpcm_swf_decode(), adts_decode_extradata(), aic_decode_coeffs(), alac_decode_frame(), apcm_dequant_add(), ape_decode_value_3860(), apply_color_indexing_transform(), arith_init(), asv1_decode_block(), at1_parse_bsm(), at1_unpack_dequant(), atrac3p_decode_frame(), atrac9_decode_block(), atrac9_decode_init(), av_dynamic_hdr_plus_from_t35(), aw_parse_coords(), aw_pulse_set1(), aw_pulse_set2(), bink_decode_plane(), binkb_decode_plane(), binkb_read_bundle(), bit_copy(), bonk_decode(), cbs_av1_get_payload_bytes_left(), cbs_av1_read_leb128(), cbs_av1_read_ns(), cbs_vp8_bool_decoder_fill_value(), cbs_vp9_read_le(), cbs_vp9_read_s(), check_for_slice(), chs_parse_band_data(), chs_parse_header(), colour_mapping_octants(), colour_mapping_table(), copy_bits(), coupling_coordinates(), coupling_strategy(), cri_decode_frame(), dca_parse_params(), decode(), decode2x2(), decode4x4(), decode8x8(), decode_0cpy(), decode_1dif(), decode_2slp(), decode_5elp(), decode_ac_filter(), decode_argb(), decode_argbi(), decode_argx(), decode_argxi(), decode_audio_block(), decode_aybr(), decode_aybri(), decode_band_hdr(), decode_band_numwavs(), decode_band_types(), decode_block(), decode_blocks(), decode_byry(), decode_byryi(), decode_c82i(), decode_c82p(), decode_ca2i(), decode_ca2p(), decode_ca4i(), decode_ca4p(), decode_cce(), decode_cdlms(), decode_channel(), decode_channel_code_tab(), decode_channel_map(), decode_channel_residues(), decode_channel_sf_idx(), decode_channel_sound_unit(), decode_channel_wordlen(), decode_chunks(), decode_coeff(), decode_coeffs(), decode_cpe(), decode_decorrelation_matrix(), decode_display_orientation(), decode_dynamic_range(), decode_eld_specific_config(), decode_element(), decode_entropy_coded_image(), decode_envelope(), decode_exp_lsp(), decode_exp_vlc(), decode_exponents(), decode_ext_header(), decode_extension_payload(), decode_fill(), decode_film_grain_characteristics(), decode_frame(), decode_frame_header(), decode_frame_packing_arrangement(), decode_ga_specific_config(), decode_gain_control(), decode_gain_info(), decode_gainc_data(), decode_gainc_levels(), decode_gainc_loc_codes(), decode_gainc_npoints(), decode_gop_header(), decode_group3_2d_line(), decode_hq_slice(), decode_hrd(), decode_hrd_parameters(), decode_huff(), decode_huffman2(), decode_ics(), decode_ics_info(), decode_inter(), decode_intra(), decode_line(), decode_lowdelay_slice(), decode_lpc(), decode_lt_rps(), decode_ltp(), decode_macroblock(), decode_mb(), decode_mb_b(), decode_mb_i(), decode_mb_info(), decode_mclms(), decode_motion(), decode_nal_sei_active_parameter_sets(), decode_nal_sei_pic_timing(), decode_nal_sei_timecode(), decode_new_pred(), decode_packet(), decode_palmapdata(), decode_parameters(), decode_pce(), decode_pic(), decode_pic_hdr(), decode_plane_bitstream(), decode_plane_subdivision(), decode_prediction(), decode_profile_tier_level(), decode_pulses(), decode_residual(), decode_residuals(), decode_residues(), decode_rgb(), decode_rgbi(), decode_rgbx(), decode_rgbxi(), decode_rle(), decode_run_2bit(), decode_run_8bit(), decode_scale_factors(), decode_scalefactors(), decode_segment(), decode_seq_header(), decode_sequence_header_adv(), decode_skip_count(), decode_slice(), decode_slice_header(), decode_spectrum(), decode_studio_vol_header(), decode_studio_vop_header(), decode_studiovisualobject(), decode_subframe(), decode_subframe_length(), decode_subframe_lpc(), decode_subframe_lpc_33bps(), decode_sym(), decode_sym_565(), decode_tiledata(), decode_tns(), decode_tonal_components(), decode_tones_amplitude(), decode_tones_envelope(), decode_tones_frequency(), decode_tones_phase(), decode_user_data(), decode_vbmtree(), decode_vectors(), decode_vol_header(), decode_vop_header(), decode_ybr(), decode_ybr10(), decode_ybr10i(), decode_ybri(), decode_ybyr(), decode_yry10(), decode_yry10i(), decode_yuv_frame(), decorrelate(), decouple_info(), delta_dlt(), dequant_lsp10i(), dequant_lsp10r(), dequant_lsp16i(), dequant_lsp16r(), dnxhd_decode_macroblock(), do_output_subblock(), dss_sp_unpack_coeffs(), dts_probe(), dv_decode_video_segment(), dvbsub_read_2bit_string(), dvbsub_read_4bit_string(), encode_picture_ls(), escape124_decode_frame(), escape130_decode_frame(), evcc_parse_sps(), extend_code(), extension_and_user_data(), ff_adts_header_parse(), ff_atrac3p_decode_channel_unit(), ff_av1_parse_seq_header(), ff_avc_decode_sps(), ff_bgmc_decode_init(), ff_dca_exss_parse(), ff_dca_parse_core_frame_header(), ff_dolby_e_parse_header(), ff_dovi_rpu_parse(), ff_dxva2_mpeg2_fill_slice(), ff_eac3_decode_transform_coeffs_aht_ch(), ff_eac3_parse_header(), ff_evc_parse_pps(), ff_evc_parse_slice_header(), ff_evc_parse_sps(), ff_flac_decode_frame_header(), ff_flac_parse_streaminfo(), ff_flv_decode_picture_header(), ff_h263_decode_mba(), ff_h263_decode_motion(), ff_h263_decode_picture_header(), ff_h263_resync(), ff_h2645_decode_common_vui_params(), ff_h264_decode_mb_cavlc(), ff_h264_decode_picture_parameter_set(), ff_h264_decode_seq_parameter_set(), ff_h264_sei_process_picture_timing(), ff_hevc_decode_nal_pps(), ff_hevc_decode_nal_vps(), ff_hevc_parse_sps(), ff_hls_senc_parse_audio_setup_info(), ff_iamf_parse_obu_header(), ff_intel_h263_decode_picture_header(), ff_ivi_dec_huff_desc(), ff_ivi_decode_frame(), ff_jpegls_decode_lse(), ff_jpegxl_parse_codestream_header(), ff_mjpeg_decode_dht(), ff_mjpeg_decode_dqt(), ff_mjpeg_decode_sof(), ff_mjpeg_decode_sos(), ff_mlp_read_major_sync(), ff_mpeg4_decode_partitions(), ff_mpeg4_decode_picture_header(), ff_mpeg4_decode_studio_slice_header(), ff_mpeg4_decode_video_packet_header(), ff_mpeg4audio_get_config_gb(), ff_msmpeg4_decode_ext_header(), ff_msmpeg4_decode_motion(), ff_msmpeg4_decode_picture_header(), ff_opus_rc_dec_init(), ff_parse_a53_cc(), ff_parse_itu_t_t35_to_dynamic_hdr_vivid(), ff_pce_copy_bits(), ff_rtp_send_h263_rfc2190(), ff_tak_decode_frame_header(), ff_vc1_decode_entry_point(), ff_vc1_decode_sequence_header(), ff_vc1_parse_frame_header(), ff_vc1_parse_frame_header_adv(), ff_wma_run_level_decode(), ff_wmv2_decode_picture_header(), fic_decode_block(), fill_block(), flashsv_decode_frame(), frame_header_is_valid(), frame_header_obu(), g722_decode_frame(), gainc_loc_mode0(), gainc_loc_mode1(), gb_get_v(), generate_fake_vps(), get_array(), get_bits_esc4(), get_bits_long(), get_bitsz(), get_block(), get_code(), get_coeff(), get_coeff_bits(), get_dimension(), get_eob_run(), get_float(), get_leb(), get_leb128(), get_mvdata_interlaced(), get_num_ct_values(), get_object_type(), get_prediction(), get_rice_ook(), get_sample_rate(), get_sbits_inv(), get_scale_idx(), get_ue_code(), get_utf8(), get_value_cached(), get_variable_bits(), gsm_decode_block(), gsm_decode_frame(), h261_decode_block(), h261_decode_gob_header(), h261_decode_mb(), h261_decode_picture_header(), h261_handle_packet(), h263_decode_block(), h263_decode_dquant(), h263_decode_gob_header(), h263_get_modb(), h263_handle_packet(), h264_parse_nal_header(), h264_probe(), h264_slice_header_parse(), handle_eac3(), handle_rstn(), hevc_parse_nal_header(), hevc_parse_slice_header(), hl_decode_mb(), hl_decode_mb_444(), hls_slice_header(), horizontal_fill(), hq_decode_block(), hq_decode_mb(), hqx_decode_422(), hqx_decode_422a(), hqx_decode_444(), hqx_decode_444a(), hrd_parameters(), huf_decode(), huf_unpack_enc_table(), hvcc_parse_ptl(), hvcc_parse_sps(), hvcc_parse_vps(), hvcc_parse_vui(), idx_to_quant(), imc_decode_block(), imc_get_coeffs(), imc_read_level_coeffs(), imc_read_level_coeffs_raw(), intlist_read(), ipu_decode_frame(), ipvideo_decode_format_11_opcodes(), ivi_dec_tile_data_size(), jpegxl_read_preview_header(), jpegxl_read_size_header(), jxl_u32(), jxl_u64(), jxl_u8(), k23(), k24(), k34(), k35(), k44(), k45(), kempf_restore_buf(), latm_decode_audio_specific_config(), latm_decode_frame(), latm_get_value(), linear(), load_matrix(), ls_decode_line(), lsp_unquant_high(), lsp_unquant_lbr(), lsp_unquant_nb(), magy_decode_slice10(), message(), metasound_read_bitstream(), mjpeg_decode_app(), mjpeg_decode_com(), mjpeg_decode_dri(), mobiclip_decode(), mono_decode(), mov_read_ddts(), mov_write_dvc1_structs(), mp_decode_frame(), mp_decode_layer1(), mp_decode_layer2(), mp_decode_layer3(), mp_read_changes_map(), mp_read_codes_table(), mpc7_decode_frame(), mpc7_decode_init(), mpc8_decode_frame(), mpc8_decode_init(), mpc8_parse_seektable(), mpeg1_decode_picture(), mpeg1_decode_sequence(), mpeg4_decode_dc(), mpeg4_decode_dpcm_macroblock(), mpeg4_decode_gop_header(), mpeg4_decode_mb(), mpeg4_decode_partition_a(), mpeg4_decode_partition_b(), mpeg4_decode_profile_level(), mpeg4_decode_studio_block(), mpeg4_decode_visual_object(), mpeg4_is_resync(), mpeg_decode_a53_cc(), mpeg_decode_gop(), mpeg_decode_mb(), mpeg_decode_motion(), mpeg_decode_picture_coding_extension(), mpeg_decode_sequence_display_extension(), mpeg_decode_sequence_extension(), mpeg_get_qscale(), msmpeg4_decode_dc(), msmpeg4v2_decode_motion(), mss2_decode_frame(), mss4_decode_image_block(), nal_unit_parse_header(), nb_decode(), nelly_decode_block(), next_start_code_studio(), num_coded_units(), on2avc_decode_band_scales(), on2avc_decode_band_types(), on2avc_decode_subframe(), opus_rc_dec_normalize(), parse(), parse_aux_data(), parse_avs2_seq_header(), parse_avs3_nal_units(), parse_band_ext(), parse_bintree(), parse_bit_alloc(), parse_bitstream(), parse_block_codes(), parse_ch(), parse_channel(), parse_coding_header(), parse_color_config(), parse_common_header(), parse_config_ALS(), parse_descriptor(), parse_dmix_coeffs(), parse_fmtp_config(), parse_frame_header(), parse_gradient(), parse_grid_1_chunk(), parse_high_res_grid(), parse_indices(), parse_joint_scale(), parse_lbr_parameters(), parse_lfe_16(), parse_lfe_24(), parse_lpc(), parse_mb_skip(), parse_nal_unit(), parse_nal_units(), parse_obu_header(), parse_packet_header(), parse_ptl(), parse_scale(), parse_sequence_header(), parse_setup_header(), parse_subframe_audio(), parse_subframe_header(), parse_tonal(), parse_tonal_chunk(), parse_transform_color_indexing(), parse_ts(), parse_vlc(), parse_x96_coding_header(), parse_x96_frame(), parse_x96_frame_exss(), parse_x96_subframe_audio(), parse_x96_subframe_header(), parse_xbr_frame(), parse_xbr_subframe(), parse_xll_parameters(), parse_xxch_frame(), payload_extension(), pcx_decode_frame(), populate_distribution(), pps_3d_extension(), pps_multilayer_extension(), pps_scc_extension(), process_subpacket_11(), put_pcm(), qcelp_decode_frame(), qdm2_decode_fft_packets(), qdm2_decode_sub_packet_header(), qdm2_decode_super_block(), qdm2_fft_decode_tones(), qdm2_get_vlc(), qdmc_get_vlc(), qt_rtp_parse_packet(), ra144_decode_frame(), ra288_decode_frame(), read_access_unit(), read_ans_symbol(), read_audio_mux_element(), read_bfraction(), read_block_data(), read_block_types(), read_cb_data(), read_channel_data(), read_channel_params(), read_code(), read_code_table(), read_coeffs_coarse(), read_coeffs_fine(), read_colorspace_details(), read_dcs(), read_dct_coeffs(), read_decoding_params(), read_diff_float_data(), read_dist_clustering(), read_distribution_bundle(), read_filter_params(), read_header(), read_high_coeffs(), read_huffman_code_normal(), read_huffman_code_simple(), read_huffman_tree(), read_len_table(), read_low_coeffs(), read_map(), read_matrix_params(), read_motion_values(), read_payload_length_info(), read_quant_matrix_ext(), read_quant_spectral_coeffs(), read_residue(), read_restart_header(), read_runs(), read_sbr_data(), read_sbr_envelope(), read_sbr_grid(), read_sbr_header(), read_sbr_invf(), read_sbr_noise(), read_scalefactors(), read_simple_vlc_prefix(), read_sl_header(), read_specific_config(), read_stream_mux_config(), read_table(), read_tree(), read_uncoded_coeff(), read_var_block_data(), read_vec_pos(), read_vlc_prefix(), read_wave_data(), ref_pic_list_struct(), rv10_decode_picture_header(), rv20_decode_picture_header(), rv30_parse_slice_header(), rv34_decode_inter_mb_header(), rv34_decode_intra_mb_header(), rv40_parse_slice_header(), save_bits(), sb_decode(), seq_decode_op1(), seqvideo_decode(), siren_decode(), skip_data_stream_element(), skip_hdr_extension(), skip_label(), smacker_decode_header_tree(), smacker_decode_tree(), smka_decode_frame(), speex_default_user_handler(), speex_inband_handler(), speex_std_stereo(), spx_coordinates(), spx_strategy(), svq1_decode_frame(), svq1_decode_frame_header(), svq1_parse_string(), svq3_decode_init(), svq3_decode_slice_header(), swf_probe(), synth_block_fcb_acb(), synth_block_hardcoded(), synth_frame(), synth_superframe(), synthfilt_build_sb_samples(), t15(), t27(), t37(), tak_decode_frame(), tak_parse_streaminfo(), tak_read_header(), tgq_decode_block(), tgv_decode_inter(), theora_header(), tm2_build_huff_table(), tm2_read_deltas(), truehd_core_filter(), truemotion2rt_decode_frame(), truespeech_read_frame(), tscc2_decode_mb(), tta_decode_frame(), tta_decode_init(), twinvq_read_bitstream(), unbias_exponents(), unpack(), unpack_alpha(), unpack_bitstream(), unpack_block_qpis(), unpack_codebook(), unpack_dct_coeffs(), unpack_frame(), unpack_gray(), unpack_modes(), unpack_superblocks(), unpack_vectors(), update_extradata(), vaapi_mpeg2_decode_slice(), vble_restore_plane(), vc1_decode_ac_coeff(), vc1_decode_frame(), vc1_decode_i_block(), vc1_decode_i_block_adv(), vc1_decode_intra_block(), vlc_decode_block(), vop_dquant_decoding(), vorbis_decode_init(), vorbis_floor0_decode(), vorbis_floor1_decode(), vorbis_parse_audio_packet(), vorbis_parse_id_hdr(), vorbis_parse_setup_hdr(), vorbis_parse_setup_hdr_codebooks(), vorbis_parse_setup_hdr_floors(), vorbis_parse_setup_hdr_mappings(), vorbis_parse_setup_hdr_modes(), vorbis_parse_setup_hdr_residues(), vorbis_parse_setup_hdr_tdtransforms(), vp3_decode_frame(), vp6_get_nb_null(), vp6_parse_coeff_huffman(), vp8_lossless_decode_frame(), vp9_raw_reorder_frame_parse(), vp9_superframe_filter(), vp9_superframe_split_filter(), vui_parameters(), vvc_parse_nal_header(), vvcc_parse_ptl(), vvcc_parse_sps(), vvcc_parse_vps(), wma_decode_block(), wma_decode_superframe(), wnv1_get_code(), wv_get_value_float(), x8_get_ac_rlf(), x8_get_dc_rlf(), x8_get_orient_vlc(), and x8_select_ac_table().

◆ skip_bits()

static void skip_bits ( GetBitContext s,
int  n 
)
inlinestatic

Definition at line 381 of file get_bits.h.

Referenced by aac_decode_er_frame(), ac3_parse_header(), aic_decode_coeffs(), al_decode_frame(), align_get_bits(), apac_decode(), apply_color_indexing_transform(), at1_parse_bsm(), bitline2chunky(), bitplanar2chunky(), bonk_decode(), cabac_init_decoder(), dca_parse_params(), decode_argb_frame(), decode_audio_block(), decode_band_hdr(), decode_block(), decode_buffering_period(), decode_dynamic_range(), decode_element(), decode_frame(), decode_frame_header(), decode_frame_packing_arrangement(), decode_ga_specific_config(), decode_gain_control(), decode_gop_header(), decode_group3_1d_line(), decode_huff(), decode_inter(), decode_packet(), decode_pce(), decode_pic(), decode_pic_hdr(), decode_profile_tier_level(), decode_recovery_point(), decode_residual(), decode_rgb24_frame(), decode_scalar(), decode_seq_header(), decode_sequence_header_adv(), decode_slice(), decode_smpte_tc(), decode_studio_vol_header(), decode_studio_vop_header(), decode_studiovisualobject(), decode_uncompressed(), decode_vectors(), decode_vol_header(), decode_vop_header(), decode_yuv_frame(), delta_dlt(), ep_init_cabac_decoder(), extension_data(), extra_information(), ff_adts_header_parse(), ff_av1_parse_seq_header(), ff_avc_decode_sps(), ff_dca_exss_parse(), ff_dca_parse_core_frame_header(), ff_decode_sbr_extension(), ff_dolby_e_parse_header(), ff_dovi_rpu_parse(), ff_eac3_parse_header(), ff_flac_decode_frame_header(), ff_flac_parse_streaminfo(), ff_h263_decode_picture_header(), ff_h263_resync(), ff_h264_decode_seq_parameter_set(), ff_h264_sei_process_picture_timing(), ff_hevc_decode_nal_pps(), ff_hevc_decode_nal_vps(), ff_hevc_parse_sps(), ff_hls_senc_parse_audio_setup_info(), ff_intel_h263_decode_picture_header(), ff_jpegls_decode_picture(), ff_mjpeg_decode_frame_from_buf(), ff_mjpeg_decode_sos(), ff_mlp_read_major_sync(), ff_mpeg4_decode_partitions(), ff_mpeg4_decode_picture_header(), ff_mpeg4_decode_studio_slice_header(), ff_mpeg4_decode_video_packet_header(), ff_mpeg4audio_get_config_gb(), ff_msmpeg4_decode_ext_header(), ff_msmpeg4_decode_picture_header(), ff_parse_a53_cc(), ff_rtp_send_h263_rfc2190(), ff_tak_decode_frame_header(), ff_vc1_decode_entry_point(), ff_vc1_decode_sequence_header(), ff_vc1_parse_frame_header(), ff_vc1_parse_frame_header_adv(), flashsv_decode_frame(), g722_decode_frame(), get_bits_align32(), get_interleaved_se_golomb(), h261_decode_block(), h261_decode_gob_header(), h261_decode_picture_header(), h261_handle_packet(), h261_resync(), h263_decode_gob_header(), h263_handle_packet(), h264_probe(), handle_eac3(), handle_rstn(), hevc_parse_slice_header(), hls_slice_header(), hqx_get_ac(), hvcc_parse_pps(), hvcc_parse_ptl(), hvcc_parse_sps(), hvcc_parse_vps(), hvcc_parse_vui(), ljpeg_decode_rgb_scan(), ljpeg_decode_yuv_scan(), metasound_read_bitstream(), mjpeg_decode_app(), mjpegb_decode_frame(), mov_read_ddts(), mov_write_dvc1_structs(), mp_decode_layer3(), mpc8_decode_frame(), mpc8_decode_init(), mpeg1_decode_sequence(), mpeg4_decode_visual_object(), mpeg4_is_resync(), mpeg_decode_a53_cc(), mpeg_decode_picture_display_extension(), mpeg_decode_sequence_display_extension(), mpeg_decode_sequence_extension(), mpeg_decode_slice(), mss2_decode_frame(), mxpeg_decode_app(), mxpeg_decode_com(), nal_unit_parse_header(), parse_adts_frame_header(), parse_aux_data(), parse_avs2_seq_header(), parse_avs3_nal_units(), parse_band_ext(), parse_coding_header(), parse_descriptor(), parse_fmtp_config(), parse_frame_header(), parse_lbr_parameters(), parse_nal_unit(), parse_navi_table(), parse_obu_header(), parse_packet_header(), parse_ptl(), parse_sequence_header(), parse_setup_header(), parse_subframe_header(), parse_x96_coding_header(), parse_x96_subframe_header(), parse_xll_parameters(), preview_obmc(), qdm2_decode_super_block(), qt_rtp_parse_packet(), read_access_unit(), read_block_data(), read_code(), read_const_block_data(), read_header(), read_high_coeffs(), read_low_coeffs(), read_payload_length_info(), read_restart_header(), read_sbr_channel_pair_element(), read_sbr_data(), read_sbr_header(), read_sbr_single_channel_element(), read_sl_header(), read_specific_config(), read_stream_mux_config(), relative_align_get_bits(), rv10_decode_picture_header(), rv20_decode_picture_header(), save_bits(), shorten_decode_frame(), siren_decode(), skip_1stop_8data_bits(), skip_bits1(), skip_hdr_extension(), skip_hrd_parameters(), svq1_decode_frame(), svq1_decode_frame_header(), svq3_decode_slice_header(), synth_block_fcb_acb(), synth_superframe(), tak_decode_frame(), tak_parse_streaminfo(), tgq_decode_block(), theora_header(), truemotion2rt_decode_frame(), twinvq_read_bitstream(), update_extradata(), vaapi_mpeg2_decode_slice(), vble_unpack(), vorbis_parse_setup_hdr_mappings(), vp3_decode_frame(), vp9_raw_reorder_frame_parse(), vvcc_parse_ptl(), vvcc_parse_sps(), vvcc_parse_vps(), wavarc_decode(), wma_decode_superframe(), and wmavoice_decode_packet().

◆ show_bits()

static unsigned int show_bits ( GetBitContext s,
int  n 
)
inlinestatic

◆ get_bits_count()

static int get_bits_count ( const GetBitContext s)
inlinestatic

Definition at line 266 of file get_bits.h.

Referenced by aac_adtstoasc_filter(), aac_decode_frame(), aac_decode_frame_int(), adpcm_swf_decode(), alac_decode_frame(), align_get_bits(), apac_decode(), bink_decode_plane(), binkb_decode_plane(), bonk_decode(), cabac_init_decoder(), categorize(), cbs_av1_read_unit(), cbs_av1_ref_tile_data(), cbs_av1_split_fragment(), cbs_h264_read_nal_unit(), cbs_h265_read_nal_unit(), cbs_h266_read_nal_unit(), cbs_jpeg_read_unit(), cbs_mpeg2_read_unit(), cbs_vp8_read_unit(), cbs_vp9_read_unit(), cfhd_decode(), check_for_slice(), check_marker(), chs_parse_header(), cook_decode_frame(), decode_5elp(), decode_audio_specific_config_gb(), decode_band(), decode_component(), decode_envelope(), decode_frame(), decode_frame_header(), decode_hq_slice(), decode_huff(), decode_line(), decode_lowdelay(), decode_lowdelay_slice(), decode_motion_vectors(), decode_packet(), decode_rle(), decode_slice(), decode_subband(), decode_subframe(), decode_user_data(), decode_vol_header(), dvbsub_read_2bit_string(), dvbsub_read_4bit_string(), encode_picture_ls(), ep_init_cabac_decoder(), escape124_decode_frame(), escape130_decode_frame(), ff_cbs_trace_read_log(), ff_dca_seek_bits(), ff_dirac_init_arith_decoder(), ff_dxva2_mpeg2_fill_slice(), ff_dxva2_vc1_fill_slice(), ff_flac_decode_frame_header(), ff_h263_resync(), ff_h264_decode_picture_parameter_set(), ff_h264_sei_decode(), ff_hevc_decode_nal_sei(), ff_iamf_parse_obu_header(), ff_ivi_decode_frame(), ff_jpegxl_parse_codestream_header(), ff_lag_rac_init(), ff_mjpeg_decode_frame_from_buf(), ff_mjpeg_decode_sos(), ff_mlp_read_major_sync(), ff_mpeg4_decode_picture_header(), ff_mpeg4_decode_video_packet_header(), ff_mpeg4_frame_end(), ff_mpeg4audio_get_config_gb(), ff_msmpeg4_decode_ext_header(), ff_rtjpeg_decode_frame_yuv420(), fill_slice_long(), find_group3_syncmarker(), flac_decode_frame(), flashsv_decode_block(), flashsv_decode_frame(), frame_header_obu(), ftr_decode_frame(), get_bits_align32(), get_bits_left(), get_consumed_bytes(), handle_rstn(), huf_unpack_enc_table(), huffman_decode(), imc_decode_block(), imc_get_coeffs(), latm_decode_audio_specific_config(), loco_decode_plane(), message_list(), metasound_read_bitstream(), mp_decode_frame(), mp_decode_layer2(), mp_decode_layer3(), mpc7_decode_frame(), mpc8_decode_frame(), mpeg4_is_resync(), mpeg_decode_slice(), mss2_decode_frame(), mxpeg_decode_frame(), osq_receive_frame(), parse_aux_data(), parse_band_data(), parse_bintree(), parse_coding_header(), parse_descriptor(), parse_frame(), parse_frame_header(), parse_navi_table(), parse_obu_header(), parse_optional_info(), parse_setup_header(), parse_x96_coding_header(), parse_x96_frame_exss(), parse_xbr_frame(), parse_xxch_frame(), ps_read_extension_data(), qdm2_decode_sub_packet_header(), qdm2_decode_super_block(), qt_rtp_parse_packet(), read_access_unit(), read_block_data(), read_high_coeffs(), read_huffman_tables(), read_low_coeffs(), read_restart_header(), read_sbr_data(), read_sbr_header(), read_sl_header(), relative_align_get_bits(), remaining_bits(), rv10_decode_packet(), save_bits(), SEI_FUNC(), send_picture(), seq_unpack_rle_block(), shorten_decode_frame(), speex_decode_frame(), svq3_decode_frame(), svq3_decode_init(), switch_buffer(), tak_decode_frame(), tak_parse(), tm2_read_stream(), truehd_core_filter(), try_parse(), twinvq_read_bitstream(), unpack_SQVH(), vaapi_h264_decode_slice(), vaapi_hevc_decode_slice(), vaapi_mpeg2_decode_slice(), vaapi_mpeg4_decode_slice(), vaapi_vc1_decode_slice(), vc1_decode_b_blocks(), vc1_decode_frame(), vc1_decode_i_blocks(), vc1_decode_i_blocks_adv(), vc1_decode_init(), vc1_decode_p_blocks(), vorbis_decode_frame(), vorbis_floor1_decode(), wavarc_decode(), wma_decode_superframe(), and wmavoice_decode_packet().

◆ skip_bits_long()

static void skip_bits_long ( GetBitContext s,
int  n 
)
inlinestatic

Skips the specified number of bits.

Parameters
nthe number of bits to skip, For the UNCHECKED_BITSTREAM_READER this must not cause the distance from the start to overflow int32_t. Staying within the bitstream + padding is sufficient, too.

Definition at line 278 of file get_bits.h.

Referenced by aac_decode_er_frame(), adts_decode_extradata(), ape_decode_frame(), bink_decode_plane(), binkaudio_receive_frame(), binkb_decode_plane(), cbs_read_se_golomb(), cbs_read_ue_golomb(), check_for_slice(), dca_parse_params(), decode_5elp(), decode_audio_block(), decode_audio_specific_config_gb(), decode_component(), decode_eld_specific_config(), decode_extension_payload(), decode_fill(), decode_frame(), decode_hq_slice(), decode_inter(), decode_intra(), decode_lowdelay_slice(), decode_mvdv(), decode_pce(), decode_pic_hdr(), decode_profile_tier_level(), decode_subframe(), decode_vol_header(), decode_vop_header(), dequantize_coefficients(), dts_probe(), ensure_bits(), escape130_decode_frame(), extension_and_user_data(), ff_bgmc_decode_end(), ff_cbs_trace_write_log(), ff_dca_core_parse_exss(), ff_dca_exss_parse(), ff_dca_seek_bits(), ff_decode_sbr_extension(), ff_dirac_init_arith_decoder(), ff_dolby_e_parse_header(), ff_eac3_parse_header(), ff_evc_parse_sps(), ff_flac_parse_streaminfo(), ff_h264_decode_mb_cavlc(), ff_iamf_parse_obu_header(), ff_ivi_decode_frame(), ff_jpegxl_parse_codestream_header(), ff_mlp_read_major_sync(), flashsv_decode_block(), ftr_decode_frame(), get_interleaved_se_golomb(), get_interleaved_ue_golomb(), get_se_golomb(), get_ue_golomb(), get_ue_golomb_31(), get_ue_golomb_long(), get_ur_golomb(), get_ur_golomb_jpegls(), handle_rstn(), huffman_decode(), hvcc_parse_ptl(), hvcc_parse_vui(), jpegxl_get_bit_depth(), jpegxl_read_extra_channel_info(), jpegxl_skip_extensions(), kempf_restore_buf(), latm_decode_audio_specific_config(), latm_write_frame_header(), message(), message_list(), mov_read_ddts(), mov_write_dvc1_structs(), mp_decode_layer3(), mpc7_decode_frame(), mpc7_decode_init(), nb_decode(), nelly_decode_block(), parse_aux_data(), parse_band_data(), parse_band_ext(), parse_config_ALS(), parse_descriptor(), parse_frame(), parse_frame_header(), parse_optional_info(), parse_sequence_header(), parse_setup_header(), payload_extension(), read_diff_float_data(), read_frame_data(), read_sbr_extension(), read_sl_header(), read_specific_config(), save_bits(), skip_data_stream_element(), skip_extensions(), skip_timing_info(), speex_default_user_handler(), speex_inband_handler(), svq3_decode_slice_header(), switch_buffer(), theora_header(), try_parse(), tta_decode_frame(), tta_decode_init(), uvlc(), vp3_decode_frame(), and wmavoice_decode_packet().

◆ get_xbits()

static int get_xbits ( GetBitContext s,
int  n 
)
inlinestatic

Read MPEG-1 dc-style VLC (sign bit + mantissa with no MSB).

if MSB not set it is negative

Parameters
nlength in bits

Definition at line 292 of file get_bits.h.

Referenced by decode_block(), decode_dc(), decode_i_block(), jpg_decode_block(), mjpeg_decode_dc(), mpeg4_decode_dc(), mpeg4_decode_sprite_trajectory(), and mpeg4_decode_studio_block().

◆ get_xbits_le()

static int get_xbits_le ( GetBitContext s,
int  n 
)
inlinestatic

Definition at line 306 of file get_bits.h.

Referenced by decode_dc_le().

◆ get_sbits()

static int get_sbits ( GetBitContext s,
int  n 
)
inlinestatic

◆ get_bitsz()

static av_always_inline int get_bitsz ( GetBitContext s,
int  n 
)
static

◆ get_bits_le()

static unsigned int get_bits_le ( GetBitContext s,
int  n 
)
inlinestatic

◆ get_bits1()

static unsigned int get_bits1 ( GetBitContext s)
inlinestatic

Definition at line 388 of file get_bits.h.

Referenced by ac3_parse_header(), ac_normalize(), add_coefficients(), aic_decode_coeffs(), arith_normalise(), atrac3p_decode_frame(), atrac9_decode_block(), atrac9_decode_init(), av_dynamic_hdr_plus_from_t35(), avs_decode_frame(), aw_pulse_set2(), bink_decode_plane(), binkb_decode_plane(), bitline2chunky(), bitplanar2chunky(), bitplane_decoding(), cbs_av1_read_increment(), cbs_av1_read_ns(), cbs_av1_read_uvlc(), cbs_vp9_read_increment(), cbs_vp9_read_s(), check_marker(), chs_parse_band_data(), chs_parse_header(), clv_decode_frame(), codeblock(), colour_mapping_octants(), coupling_coordinates(), coupling_strategy(), decode(), decode012(), decode210(), decode2x2(), decode4x4(), decode8x8(), decode_1dif(), decode_2slp(), decode_5elp(), decode_argb(), decode_argbi(), decode_argx(), decode_argxi(), decode_audio_block(), decode_aybr(), decode_aybri(), decode_band(), decode_band_hdr(), decode_band_structure(), decode_block(), decode_byry(), decode_byryi(), decode_c82i(), decode_c82p(), decode_ca2i(), decode_ca2p(), decode_ca4i(), decode_ca4p(), decode_cce(), decode_cdlms(), decode_channel_code_tab(), decode_channel_map(), decode_channel_residues(), decode_channel_transform(), decode_channel_wordlen(), decode_code_table_indexes(), decode_coeff(), decode_coeffs(), decode_colskip(), decode_cpe(), decode_decorrelation_matrix(), decode_display_orientation(), decode_drc_channel_exclusions(), decode_dynamic_range(), decode_eld_specific_config(), decode_element(), decode_entropy_coded_image(), decode_envelope(), decode_ext_header(), decode_film_grain_characteristics(), decode_frame(), decode_frame_header(), decode_frame_packing_arrangement(), decode_ga_specific_config(), decode_gain_info(), decode_gainc_data(), decode_gainc_levels(), decode_gainc_loc_codes(), decode_gop_header(), decode_header_trees(), decode_hrd(), decode_hrd_parameters(), decode_ics(), decode_ics_info(), decode_inter(), decode_intra(), decode_line(), decode_lt_rps(), decode_ltp(), decode_macroblock(), decode_mb(), decode_mb_i(), decode_mb_info(), decode_mb_p(), decode_mclms(), decode_mid_side_stereo(), decode_motion(), decode_mv_component(), decode_mvdv(), decode_new_pred(), decode_packet(), decode_palette(), decode_pce(), decode_pic(), decode_pic_hdr(), decode_prediction(), decode_profile_tier_level(), decode_qu_spectra(), decode_residual(), decode_residues(), decode_rgb(), decode_rgbi(), decode_rgbx(), decode_rgbxi(), decode_rice(), decode_rle(), decode_rowskip(), decode_run_8bit(), decode_scale_factors(), decode_scaling_list(), decode_segment(), decode_seq_header(), decode_sequence_header_adv(), decode_skip_count(), decode_slice_header(), decode_spectrum(), decode_studio_vol_header(), decode_studio_vop_header(), decode_subframe(), decode_subframe_length(), decode_sublayer_hrd(), decode_tilehdr(), decode_tns(), decode_tonal_components(), decode_tones_envelope(), decode_tones_frequency(), decode_tones_info(), decode_uncompressed(), decode_vector(), decode_vol_header(), decode_vop_header(), decode_vui(), decode_vui_parameters(), decode_ybr(), decode_ybr10(), decode_ybr10i(), decode_ybri(), decode_ybyr(), decode_yry10(), decode_yry10i(), decorrelate(), decouple_info(), dirac_get_se_golomb(), dirac_unpack_idwt_params(), dirac_unpack_prediction_parameters(), dnxhd_decode_macroblock(), dts_probe(), dv_decode_video_segment(), dvbsub_read_2bit_string(), dvbsub_read_4bit_string(), escape124_decode_frame(), escape130_decode_frame(), ff_adts_header_parse(), ff_atrac3p_decode_channel_unit(), ff_avc_decode_sps(), ff_bgmc_decode(), ff_cbs_trace_read_log(), ff_ccitt_unpack(), ff_dca_exss_parse(), ff_dca_parse_core_frame_header(), ff_decode_sbr_extension(), ff_dovi_rpu_parse(), ff_eac3_decode_transform_coeffs_aht_ch(), ff_eac3_parse_header(), ff_evc_parse_pps(), ff_evc_parse_slice_header(), ff_evc_parse_sps(), ff_flac_decode_frame_header(), ff_h263_decode_mb(), ff_h263_decode_motion(), ff_h263_decode_picture_header(), ff_h2645_decode_common_vui_params(), ff_h264_decode_mb_cavlc(), ff_h264_decode_picture_parameter_set(), ff_h264_decode_ref_pic_list_reordering(), ff_h264_decode_ref_pic_marking(), ff_h264_decode_seq_parameter_set(), ff_h264_parse_ref_count(), ff_h264_pred_weight_table(), ff_hevc_decode_nal_pps(), ff_hevc_decode_nal_vps(), ff_hevc_decode_short_term_rps(), ff_hevc_parse_sps(), ff_iamf_parse_obu_header(), ff_intel_h263_decode_picture_header(), ff_intrax8_decode_picture(), ff_jpegxl_parse_codestream_header(), ff_mlp_read_major_sync(), ff_mpeg4_decode_studio_slice_header(), ff_mpeg4_decode_video_packet_header(), ff_mpeg4audio_get_config_gb(), ff_msmpeg4_decode_ext_header(), ff_msmpeg4_decode_picture_header(), ff_ps_read_data(), ff_vc1_decode_entry_point(), ff_vc1_decode_sequence_header(), ff_vc1_parse_frame_header(), ff_vc1_parse_frame_header_adv(), ff_vc1_pred_b_mv(), ff_vc1_pred_mv(), ff_wma_get_large_val(), ff_wma_run_level_decode(), ff_wmv2_decode_picture_header(), ff_wmv2_decode_secondary_picture_header(), fic_decode_block(), find_group3_syncmarker(), flashsv_decode_frame(), frame_header_is_valid(), gb_get_v(), get_bits1_vector(), get_bits_esc4(), get_code(), get_dimension(), get_dmv(), get_egolomb(), get_float(), get_num_ct_values(), get_prediction(), get_sbits_inv(), get_sr_golomb_dst(), get_srice(), get_subband_flags(), get_tail(), get_te0_golomb(), get_te_golomb(), get_ue_golomb(), get_unary(), get_ur_golomb_jpegls(), get_value_cached(), get_variable_bits(), h261_decode_picture_header(), h263_decode_dquant(), h263_decode_gob_header(), h263_get_modb(), h263p_decode_umotion(), h264_parse_nal_header(), h264_slice_header_parse(), handle_eac3(), hcom_decode(), hevc_parse_nal_header(), hevc_parse_slice_header(), hls_slice_header(), hq_decode_mb(), hqa_decode_mb(), hqx_decode_422(), hqx_decode_422a(), hqx_decode_444(), hqx_decode_444a(), huff_reader_get_symbol(), huffman_decode(), hvcc_parse_pps(), hvcc_parse_ptl(), hvcc_parse_sps(), hvcc_parse_vui(), idx_to_quant(), imc_decode_block(), imc_get_skip_coeff(), init_tone_level_dequantization(), input_code(), intlist_read(), ipu_decode_frame(), ivi_dec_tile_data_size(), jpegxl_get_bit_depth(), jpegxl_read_extra_channel_info(), jpegxl_read_preview_header(), jpegxl_read_size_header(), jxl_u64(), jxl_u8(), k12(), k13(), k23(), k24(), k34(), k35(), k44(), k45(), ls_decode_line(), merge(), metasound_read_bitstream(), mjpeg_decode_scan(), mobiclip_decode(), mov_write_dvc1_structs(), mp_decode_layer3(), mp_get_code(), mpc7_decode_frame(), mpc7_decode_init(), mpc8_dec_base(), mpc8_decode_frame(), mpc8_decode_init(), mpeg1_decode_picture(), mpeg1_decode_sequence(), mpeg4_decode_dc(), mpeg4_decode_mb(), mpeg4_decode_partition_a(), mpeg4_decode_partition_b(), mpeg4_decode_studio_mb(), mpeg4_decode_visual_object(), mpeg4_is_resync(), mpeg_decode_gop(), mpeg_decode_mb(), mpeg_decode_motion(), mpeg_decode_picture_coding_extension(), mpeg_decode_quant_matrix_extension(), mpeg_decode_sequence_display_extension(), mpeg_decode_sequence_extension(), msmpeg4_decode_dc(), msmpeg4v12_decode_mb(), msmpeg4v2_decode_motion(), msmpeg4v34_decode_mb(), mss2_decode_frame(), mss4_decode_image_block(), nb_decode(), on2avc_decode_subframe(), on2avc_read_ms_info(), osq_decode_block(), parse(), parse_aux_data(), parse_band_ext(), parse_bit_alloc(), parse_bitstream(), parse_ch(), parse_coding_header(), parse_color_config(), parse_common_header(), parse_descriptor(), parse_exponents(), parse_frame_header(), parse_grid_2(), parse_indices(), parse_lbr_parameters(), parse_mb_skip(), parse_nal_unit(), parse_nal_units(), parse_obu_header(), parse_packet_header(), parse_ptl(), parse_rps(), parse_sequence_header(), parse_setup_header(), parse_subframe_header(), parse_tonal(), parse_x96_coding_header(), parse_x96_frame_exss(), parse_x96_subframe_header(), parse_xbr_frame(), parse_xll_parameters(), parse_xxch_frame(), populate_distribution(), pps_3d_extension(), pps_multilayer_extension(), pps_range_extensions(), pps_scc_extension(), pred_weight_table(), preview_obmc(), ps_read_extension_data(), qdm2_fft_decode_tones(), qt_rtp_parse_packet(), read_access_unit(), read_block(), read_block_types(), read_channel_data(), read_channel_params(), read_colors(), read_colorspace_details(), read_const_block_data(), read_dcs(), read_dct_coeffs(), read_decoding_params(), read_diff_float_data(), read_dist_clustering(), read_distribution_bundle(), read_filter_params(), read_frame_data(), read_high_coeffs(), read_huff_channels(), read_huffman_code_normal(), read_huffman_code_simple(), read_huffman_tree(), read_map(), read_matrix_params(), read_motion_values(), read_quant_matrix_ext(), read_residue(), read_restart_header(), read_runs(), read_sbr_channel_pair_element(), read_sbr_data(), read_sbr_grid(), read_sbr_header(), read_sbr_single_channel_element(), read_simple_vlc_prefix(), read_sl_header(), read_specific_config(), read_table(), read_tree(), read_uint_max(), read_var_block_data(), read_vec_pos(), rv10_decode_picture_header(), rv20_decode_picture_header(), rv30_parse_slice_header(), rv34_decode_cbp(), rv34_decode_intra_mb_header(), rv40_decode_intra_types(), rv40_parse_slice_header(), sb_decode(), scaling_list_data(), scan_mmco_reset(), siren_decode(), skip_1stop_8data_bits(), skip_data_stream_element(), skip_hrd_parameters(), skip_scaling_list_data(), skip_timing_info(), smacker_decode_bigtree(), smacker_decode_header_tree(), smacker_decode_tree(), smk_get_code(), smka_decode_frame(), speex_std_stereo(), split_cb_shape_sign_unquant(), spx_coordinates(), spx_strategy(), svq1_decode_frame_header(), svq1_decode_motion_vector(), svq3_decode_init(), svq3_decode_mb(), svq3_decode_slice_header(), synth_block_fcb_acb(), synth_superframe(), synthfilt_build_sb_samples(), tak_decode_frame(), tak_parse_streaminfo(), tm2_read_tree(), truehd_core_filter(), truespeech_read_frame(), tscc2_decode_mb(), twinvq_read_bitstream(), unpack_alpha(), unpack_bitstream(), unpack_block_qpis(), unpack_frame(), unpack_SQVH(), unpack_superblocks(), unpack_vectors(), uvlc(), vaapi_mpeg2_decode_slice(), vble_unpack(), vc1_decode_ac_coeff(), vc1_decode_b_mb(), vc1_decode_b_mb_intfi(), vc1_decode_b_mb_intfr(), vc1_decode_frame(), vc1_decode_i_block(), vc1_decode_i_block_adv(), vc1_decode_i_blocks(), vc1_decode_i_blocks_adv(), vc1_decode_intra_block(), vc1_decode_p_mb(), vc1_decode_p_mb_intfi(), vc1_decode_p_mb_intfr(), vop_dquant_decoding(), vorbis_floor1_decode(), vorbis_parse_audio_packet(), vorbis_parse_id_hdr(), vorbis_parse_setup_hdr(), vorbis_parse_setup_hdr_codebooks(), vorbis_parse_setup_hdr_mappings(), vorbis_parse_setup_hdr_modes(), vorbis_parse_setup_hdr_residues(), vp3_decode_frame(), vp6_get_nb_null(), vp6_parse_coeff_huffman(), vp8_lossless_decode_frame(), vp9_raw_reorder_frame_parse(), vp9_superframe_filter(), vp9_superframe_split_filter(), vvc_parse_nal_header(), vvcc_parse_ptl(), vvcc_parse_sps(), vvcc_parse_vps(), wma_decode_block(), wmv2_decode_mb(), wmv2_decode_motion(), wmv2_pred_motion(), wv_get_value(), wv_get_value_float(), x8_decode_intra_mb(), x8_get_ac_rlf(), and xan_huffman_decode().

◆ show_bits1()

static unsigned int show_bits1 ( GetBitContext s)
inlinestatic

Definition at line 408 of file get_bits.h.

Referenced by decode_vector(), decode_vui_parameters(), and sb_decode().

◆ skip_bits1()

static void skip_bits1 ( GetBitContext s)
inlinestatic

Definition at line 413 of file get_bits.h.

Referenced by colour_mapping_octants(), decode_channel_map(), decode_dynamic_range(), decode_frame(), decode_frame_packing_arrangement(), decode_ga_specific_config(), decode_inter(), decode_pic(), decode_profile_tier_level(), decode_seq_header(), decode_sequence_header_adv(), decode_studio_vol_header(), decode_studio_vop_header(), decode_vol_header(), decode_vop_header(), ff_adts_header_parse(), ff_avc_decode_sps(), ff_dolby_e_parse_header(), ff_eac3_parse_header(), ff_flv_decode_picture_header(), ff_h263_decode_mb(), ff_h263_decode_picture_header(), ff_h263_resync(), ff_h264_decode_ref_pic_marking(), ff_hevc_parse_sps(), ff_intel_h263_decode_picture_header(), ff_mpeg4_decode_studio_slice_header(), h261_decode_picture_header(), hevc_parse_slice_header(), hvcc_parse_sps(), hvcc_parse_vui(), ipu_decode_frame(), jpegxl_read_extra_channel_info(), mpeg4_decode_gop_header(), mpeg4_decode_partition_a(), mpeg4_decode_studio_mb(), mpeg_decode_mb(), mpeg_decode_slice(), nal_unit_parse_header(), osq_decode_block(), parse_band_ext(), parse_color_config(), parse_descriptor(), parse_frame_header(), parse_nal_unit(), parse_obu_header(), parse_rps(), parse_sequence_header(), pps_3d_extension(), preview_obmc(), read_access_unit(), read_specific_config(), rv30_parse_slice_header(), rv40_parse_slice_header(), skip_sub_layer_hrd_parameters(), smacker_decode_header_tree(), smka_decode_frame(), svq1_decode_frame_header(), svq3_decode_slice_header(), unpack_bitstream(), vvc_parse_nal_header(), vvcc_parse_ptl(), vvcc_parse_sps(), and vvcc_parse_vps().

◆ get_bits_long()

static unsigned int get_bits_long ( GetBitContext s,
int  n 
)
inlinestatic

Read 0-32 bits.

Definition at line 421 of file get_bits.h.

Referenced by apac_decode(), av_dynamic_hdr_plus_from_t35(), cbs_av1_read_uvlc(), cbs_read_se_golomb(), cbs_read_ue_golomb(), cbs_read_unsigned(), chs_parse_header(), dca_parse_params(), decode_block(), decode_buffering_period(), decode_channel_residues(), decode_element(), decode_frame(), decode_gop_header(), decode_huffman2(), decode_lowdelay_slice(), decode_nal_sei_timecode(), decode_rice(), decode_scalar(), decode_segment(), decode_vui(), decode_vui_parameters(), dirac_decode_picture_header(), dss_sp_unpack_coeffs(), escape124_decode_frame(), evcc_parse_sps(), ff_dca_parse_core_frame_header(), ff_dovi_rpu_parse(), ff_h264_sei_process_picture_timing(), ff_hevc_decode_nal_vps(), ff_mpeg4_decode_studio_slice_header(), ff_msmpeg4_decode_picture_header(), ff_wma_get_large_val(), get_bits64(), get_block_sizes(), get_egolomb(), get_linear(), get_rice_un(), get_sbits_long(), get_se_coef(), get_tail(), get_ue_coef(), get_ue_golomb_long(), get_ur_golomb(), get_ur_golomb_jpegls(), get_urice(), hls_slice_header(), hvcc_parse_ptl(), init_entropy_decoder(), jxl_u32(), lag_decode_prob(), latm_get_value(), mjpeg_decode_app(), mjpegb_decode_frame(), mov_read_ddts(), mov_read_stsz(), mp_read_changes_map(), mpc8_dec_base(), parse_aux_data(), parse_coding_header(), parse_common_header(), parse_config_ALS(), parse_descriptor(), parse_navi_table(), parse_x96_frame_exss(), parse_xbr_frame(), parse_xll_parameters(), parse_xxch_frame(), read_ans_symbol(), read_channel_data(), read_diff_float_data(), read_header(), read_huff_channels(), read_hybrid_uint(), read_offs(), read_specific_config(), read_var_block_data(), rtp_parse_mp4_au(), show_bits_long(), skip_label(), swf_probe(), theora_header(), tm2_read_deltas(), tm2_read_tree(), truespeech_read_frame(), tta_decode_init(), update_extradata(), vaapi_mpeg2_decode_slice(), vc1_decode_init(), vorbis_parse_id_hdr(), vorbis_parse_setup_hdr_codebooks(), vui_parameters(), vvcc_parse_ptl(), wavpack_decode_block(), wv_get_value(), and wv_get_value_integer().

◆ get_bits64()

static uint64_t get_bits64 ( GetBitContext s,
int  n 
)
inlinestatic

◆ get_sbits_long()

static int get_sbits_long ( GetBitContext s,
int  n 
)
inlinestatic

◆ get_sbits64()

static int64_t get_sbits64 ( GetBitContext s,
int  n 
)
inlinestatic

Read 0-64 bits as a signed integer.

Definition at line 483 of file get_bits.h.

Referenced by decode_subframe(), decode_subframe_fixed_33bps(), and decode_subframe_lpc_33bps().

◆ show_bits_long()

static unsigned int show_bits_long ( GetBitContext s,
int  n 
)
inlinestatic

◆ init_get_bits()

static int init_get_bits ( GetBitContext s,
const uint8_t *  buffer,
int  bit_size 
)
inlinestatic

Initialize GetBitContext.

Parameters
bufferbitstream buffer, must be AV_INPUT_BUFFER_PADDING_SIZE bytes larger than the actual read bits because some optimized bitstream readers read 32 or 64 bit at once and could read over the end
bit_sizethe size of the buffer in bits
Returns
0 on success, AVERROR_INVALIDDATA if the buffer_size would overflow.

Definition at line 514 of file get_bits.h.

Referenced by aac_adtstoasc_filter(), aac_sync(), adpcm_swf_decode(), adx_decode(), aic_decode_slice(), al_decode_frame(), apply_color_indexing_transform(), atrac1_decode_frame(), avs_decode_frame(), cavs_decode_frame(), cbs_av1_read_unit(), cbs_av1_split_fragment(), cbs_h264_read_nal_unit(), cbs_h265_read_nal_unit(), cbs_jpeg_read_unit(), cbs_mpeg2_read_unit(), cbs_vp9_read_unit(), cbs_vp9_split_fragment(), decode_audio_specific_config(), decode_bytes_and_gain(), decode_ext_header(), decode_frame(), decode_i_frame(), decode_lowdelay(), decode_p_frame(), decode_packet(), decode_plane(), decode_plane10(), decode_rle(), decode_slice(), decode_slice_alpha(), decode_slice_chroma(), decode_slice_luma(), dirac_decode_data_unit(), dss_sp_unpack_coeffs(), dts_probe(), dv_decode_video_segment(), dvbsub_read_2bit_string(), dvbsub_read_4bit_string(), encode_picture_ls(), ff_cbs_trace_write_log(), ff_dolby_e_convert_input(), ff_dxva2_mpeg2_fill_slice(), ff_flac_parse_streaminfo(), ff_h2645_packet_split(), ff_mjpeg_decode_init(), ff_msgsm_decode_block(), ff_rtp_send_h263_rfc2190(), ff_rv34_decode_frame(), frame_header_is_valid(), frame_header_obu(), ftr_parse(), gsm_decode_frame(), h261_decode_frame(), h261_handle_packet(), h263_handle_packet(), h264_find_frame_end(), hl_decode_mb(), hl_decode_mb_444(), hls_pcm_sample(), hq_decode_frame(), hqa_decode_frame(), huf_decode(), imc_decode_frame(), init_get_bits8(), init_get_bits8_le(), ipvideo_decode_format_11_opcodes(), latm_decode_audio_specific_config(), main(), message_list(), metadata_is_global(), mimic_decode_frame(), mjpeg_decode_scan(), mjpegb_decode_frame(), mlp_parse(), mov_read_ddts(), mov_read_stsz(), mov_write_dvc1_structs(), mp_decode_frame(), mp_decode_layer3(), mpc7_decode_init(), mpc8_decode_init(), mpc8_parse_seektable(), mpeg4_decode_header(), mxpeg_decode_frame(), nelly_decode_block(), parse_fmtp_config(), parse_sequence_header(), parse_setup_header(), process_subpacket_10(), process_subpacket_11(), process_subpacket_12(), process_subpacket_9(), qdm2_decode_fft_packets(), qdm2_decode_super_block(), qt_rtp_parse_packet(), read_access_unit(), read_huffman_tables(), read_old_huffman_tables(), read_sl_header(), rtp_parse_mp4_au(), rv10_decode_packet(), rv34_decode_slice(), save_bits(), send_picture(), seq_decode_op1(), seq_unpack_rle_block(), seqvideo_decode(), sipr_decode_frame(), siren_decode(), svq1_decode_frame(), svq3_decode_init(), svq3_decode_slice_header(), synth_superframe(), tgv_decode_inter(), theora_header(), tm2_read_stream(), tqi_decode_frame(), truespeech_read_frame(), vaapi_mpeg2_decode_slice(), vble_decode_frame(), vc1_decode_frame(), vc1_decode_init(), vorbis_decode_init(), vp9_raw_reorder_frame_parse(), wma_decode_superframe(), and wmavoice_decode_init().

◆ init_get_bits8()

static int init_get_bits8 ( GetBitContext s,
const uint8_t *  buffer,
int  byte_size 
)
inlinestatic

Initialize GetBitContext.

Parameters
bufferbitstream buffer, must be AV_INPUT_BUFFER_PADDING_SIZE bytes larger than the actual read bits because some optimized bitstream readers read 32 or 64 bit at once and could read over the end
byte_sizethe size of the buffer in bytes
Returns
0 on success, AVERROR_INVALIDDATA if the buffer_size would overflow.

Definition at line 545 of file get_bits.h.

Referenced by aac_decode_frame(), ac3_decode_frame(), adpcm_decode_frame(), adts_decode_extradata(), alac_decode_frame(), apac_decode(), ape_decode_frame(), atrac3p_decode_frame(), atrac9_decode_frame(), atrac9_decode_init(), av_adts_header_parse(), av_dynamic_hdr_plus_from_t35(), avpriv_adts_header_parse(), avpriv_dca_parse_core_frame_header(), avpriv_mpeg4audio_get_config2(), avpriv_tak_parse_streaminfo(), binkaudio_receive_frame(), bitline2chunky(), bitplanar2chunky(), bonk_decode(), cbs_h266_read_nal_unit(), cfhd_decode(), cllc_decode_frame(), clv_decode_frame(), cri_decode_frame(), dca_parse_params(), decode_blocks(), decode_chunks(), decode_extradata_ps(), decode_frame(), decode_frame_header(), decode_header_trees(), decode_huff(), decode_huffman2(), decode_inter_plane(), decode_intra_plane(), decode_motion_vectors(), decode_mvdv(), decode_nal_sei_message(), decode_nal_units(), decode_packet(), decode_palette(), decode_palmapdata(), decode_plane(), decode_slice(), decode_slice_thread(), decode_speedhq_field(), decode_subband_internal(), decode_tiledata(), decode_vectors(), decode_wmv9(), dnxhd_decode_row(), dxtory_decode_v2(), eac3_core_filter(), escape124_decode_frame(), escape130_decode_frame(), evcc_parse_sps(), evrc_decode_frame(), ff_av1_parse_seq_header(), ff_avc_decode_sps(), ff_ccitt_unpack(), ff_dca_core_parse(), ff_dca_core_parse_exss(), ff_dca_exss_parse(), ff_dovi_rpu_parse(), ff_h263_decode_frame(), ff_h264_sei_decode(), ff_h264_sei_process_picture_timing(), ff_hls_senc_parse_audio_setup_info(), ff_iamf_parse_obu_header(), ff_isom_get_vpcc_features(), ff_ivi_decode_frame(), ff_jpegxl_parse_codestream_header(), ff_mjpeg_decode_frame_from_buf(), ff_opus_rc_dec_init(), ff_parse_a53_cc(), ff_parse_itu_t_t35_to_dynamic_hdr_vivid(), ff_rtjpeg_decode_frame_yuv420(), ffat_create_decoder(), fic_decode_slice(), flac_decode_frame(), flashsv_decode_frame(), fraps2_decode_plane(), ftr_decode_frame(), g722_decode_frame(), generate_fake_vps(), get_last_needed_nal(), h264_probe(), handle_eac3(), hcom_decode(), hls_decode_entry_wpp(), horizontal_fill(), huf_unpack_enc_table(), hvcc_add_nal_unit(), ipu_decode_frame(), ir2_decode_frame(), jpg_decode_data(), kempf_restore_buf(), lag_decode_arith_plane(), latm_decode_frame(), latm_write_frame_header(), lead_decode_frame(), loco_decode_plane(), magy_decode_slice(), magy_decode_slice10(), metasound_read_bitstream(), mjpegb_decode_frame(), mobiclip_decode(), mpc7_decode_frame(), mpc8_decode_frame(), mpeg1_decode_picture(), mpeg1_decode_sequence(), mpeg_decode_a53_cc(), mpeg_decode_gop(), mpeg_decode_slice(), mss1_decode_frame(), mss2_decode_frame(), mss4_decode_frame(), mxf_parse_h264_frame(), on2avc_decode_subframe(), osq_receive_frame(), parse(), parse_avs2_seq_header(), parse_avs3_nal_units(), parse_frame(), parse_grid_1_chunk(), parse_high_res_grid(), parse_lfe_chunk(), parse_nal_unit(), parse_nal_units(), parse_obu_header(), parse_tonal_chunk(), parse_tonal_group(), parse_ts1_chunk(), parse_ts2_chunk(), pcx_decode_frame(), qcelp_decode_frame(), qdmc_decode_frame(), ra144_decode_frame(), ra288_decode_frame(), read_high_coeffs(), read_specific_config(), shn_probe(), shorten_decode_frame(), siren_decode(), slice_init_entry_points(), smka_decode_frame(), speex_decode_frame(), svq1_decode_frame(), svq3_decode_frame(), swf_probe(), tak_decode_frame(), tak_parse(), tak_read_header(), tgq_decode_mb(), truehd_core_filter(), truemotion2rt_decode_frame(), try_parse(), tscc2_decode_slice(), tta_decode_frame(), tta_decode_init(), twinvq_read_bitstream(), unpack_bitstream(), unpack_frame(), unpack_gray(), update_extradata(), vc1_decode_frame(), vc1_decode_init(), vc1_extract_header(), vorbis_decode_frame(), vp3_decode_frame(), vp6_parse_header(), vp8_lossless_decode_frame(), vp9_superframe_filter(), vp9_superframe_split_filter(), vvcc_add_nal_unit(), wavarc_decode(), wavpack_decode_block(), wmavoice_decode_packet(), and xan_huffman_decode().

◆ init_get_bits8_le()

static int init_get_bits8_le ( GetBitContext s,
const uint8_t *  buffer,
int  byte_size 
)
inlinestatic

Definition at line 553 of file get_bits.h.

Referenced by cbs_vp8_read_unit(), decode_frame(), and decode_plane().

◆ align_get_bits()

static const uint8_t* align_get_bits ( GetBitContext s)
inlinestatic

◆ get_vlc2()

static av_always_inline int get_vlc2 ( GetBitContext s,
const VLCElem table,
int  bits,
int  max_depth 
)
static

Parse a vlc code.

Parameters
bitsis the number of bits which will be read at once, must be identical to nb_bits in vlc_init()
max_depthis the number of times bits bits must be read to completely read the longest vlc code = (max_vlc_length + bits - 1) / bits
Returns
the code parsed or -1 if no vlc matches

Definition at line 652 of file get_bits.h.

Referenced by asv1_decode_block(), asv1_get_level(), bitplane_decoding(), dca_get_vlc(), decode_argb(), decode_argbi(), decode_argx(), decode_argxi(), decode_aybr(), decode_aybri(), decode_band_numwavs(), decode_block(), decode_byry(), decode_byryi(), decode_c82i(), decode_c82p(), decode_ca2i(), decode_ca2p(), decode_ca4i(), decode_ca4p(), decode_cce(), decode_channel(), decode_channel_sf_idx(), decode_channel_wordlen(), decode_coeff(), decode_coeffs(), decode_dc(), decode_dc_le(), decode_envelope(), decode_exp_vlc(), decode_frame(), decode_gainc_levels(), decode_gainc_loc_codes(), decode_gainc_npoints(), decode_group3_1d_line(), decode_group3_2d_line(), decode_huff(), decode_huffman2(), decode_i_block(), decode_i_frame(), decode_inter(), decode_intra(), decode_mb_info(), decode_mv_component(), decode_p_block(), decode_plane_bitstream(), decode_qu_spectra(), decode_residual(), decode_rgb(), decode_rgbi(), decode_rgbx(), decode_rgbxi(), decode_rle(), decode_scale_factors(), decode_scalefactors(), decode_tile(), decode_tones_amplitude(), decode_tones_frequency(), decode_tones_info(), decode_vectors(), decode_ybr(), decode_ybr10(), decode_ybr10i(), decode_ybri(), decode_ybyr(), decode_yry10(), decode_yry10i(), decouple_info(), ff_h263_decode_mb(), ff_h263_decode_motion(), ff_msmpeg4_decode_motion(), ff_rv_decode_dc(), ff_wma_run_level_decode(), fraps2_decode_plane(), gainc_level_mode1m(), gainc_loc_mode1(), get_cbphi(), get_coeff(), get_mvdata_interlaced(), get_scale_idx(), get_vlc_multi(), h261_decode_mb(), hq_decode_block(), hqa_decode_mb(), hqx_decode_422a(), hqx_decode_444a(), huf_decode(), huff_reader_get_symbol(), huffman_decode(), idx_to_quant(), imc_read_level_coeffs(), ir2_get_code(), ivi_decode_coded_blocks(), jpg_decode_block(), lag_decode_prob(), mjpeg_decode_dc(), mobiclip_decode(), mp_get_vlc(), mpc7_decode_frame(), mpc8_decode_frame(), mpeg4_decode_dc(), mpeg4_decode_mb(), mpeg4_decode_partition_a(), mpeg4_decode_partition_b(), mpeg4_decode_sprite_trajectory(), mpeg4_decode_studio_block(), mpeg_decode_mb(), mpeg_decode_motion(), mpeg_decode_slice(), msmpeg4_decode_dc(), msmpeg4v12_decode_mb(), msmpeg4v2_decode_motion(), msmpeg4v34_decode_mb(), mss4_decode_dct(), on2avc_decode_band_scales(), on2avc_decode_pairs(), on2avc_decode_quads(), parse_ch(), parse_joint_scale(), parse_scale(), parse_subframe_header(), parse_vlc(), populate_distribution(), predict_motion(), preview_obmc(), qdm2_get_vlc(), qdmc_get_vlc(), read_coeffs_coarse(), read_huff_channels(), read_prefix_symbol(), read_quant_spectral_coeffs(), read_run_encoding(), read_sbr_envelope(), read_sbr_noise(), read_scalefactors(), read_vlc_prefix(), rv34_decode_block(), rv34_decode_cbp(), rv40_decode_intra_types(), rv40_decode_mb_info(), setup_classifs(), smacker_decode_bigtree(), smka_decode_frame(), svq1_decode_block_intra(), svq1_decode_block_non_intra(), svq1_decode_delta_block(), svq1_decode_motion_vector(), synth_frame(), tm2_get_token(), tscc2_decode_mb(), unpack_block_qpis(), unpack_modes(), unpack_SQVH(), unpack_superblocks(), unpack_vectors(), unpack_vlcs(), vc1_decode_ac_coeff(), vc1_decode_b_mb(), vc1_decode_b_mb_intfi(), vc1_decode_b_mb_intfr(), vc1_decode_i_block(), vc1_decode_i_block_adv(), vc1_decode_i_blocks(), vc1_decode_i_blocks_adv(), vc1_decode_intra_block(), vc1_decode_p_block(), vc1_decode_p_mb(), vc1_decode_p_mb_intfi(), vc1_decode_p_mb_intfr(), vlc_decode_block(), vorbis_floor0_decode(), vorbis_floor1_decode(), vorbis_residue_decode_internal(), vp4_get_mv(), vp6_parse_coeff_huffman(), wma_decode_block(), wmv2_decode_mb(), wnv1_get_code(), x8_get_ac_rlf(), x8_get_dc_rlf(), and x8_get_orient_vlc().

◆ get_vlc_multi()

static int get_vlc_multi ( GetBitContext s,
uint8_t *  dst,
const VLC_MULTI_ELEM *const  Jtable,
const VLCElem *const  table,
const int  bits,
const int  max_depth 
)
inlinestatic

Definition at line 667 of file get_bits.h.

◆ decode012()

static int decode012 ( GetBitContext gb)
inlinestatic

Definition at line 676 of file get_bits.h.

◆ decode210()

static int decode210 ( GetBitContext gb)
inlinestatic

Definition at line 686 of file get_bits.h.

◆ get_bits_left()

static int get_bits_left ( GetBitContext gb)
inlinestatic

Definition at line 694 of file get_bits.h.

Referenced by aac_decode_er_frame(), aac_decode_frame_int(), ac_normalize(), ac_read_model(), add_coefficients(), aic_decode_coeffs(), al_decode_frame(), alac_decode_frame(), apac_decode(), ape_decode_value_3860(), arith_normalise(), atrac3p_decode_frame(), av_dynamic_hdr_plus_from_t35(), bink_decode_plane(), binkaudio_receive_frame(), bit_copy(), cabac_init_decoder(), cbs_av1_get_payload_bytes_left(), cbs_av1_read_increment(), cbs_av1_read_leb128(), cbs_av1_read_ns(), cbs_av1_read_uvlc(), cbs_av1_split_fragment(), cbs_h2645_read_more_rbsp_data(), cbs_mpeg2_read_unit(), cbs_read_se_golomb(), cbs_read_ue_golomb(), cbs_read_unsigned(), cbs_vp8_bool_decoder_fill_value(), cbs_vp8_read_unsigned_le(), cbs_vp9_read_increment(), cbs_vp9_read_le(), cbs_vp9_read_s(), check_slice_end(), chs_parse_band_data(), cllc_decode_frame(), clv_decode_frame(), codeblock(), copy_bits(), cri_decode_frame(), decode_0cpy(), decode_1dif(), decode_2slp(), decode_422_bitstream(), decode_5elp(), decode_array_0000(), decode_band_types(), decode_block(), decode_channel(), decode_channel_residues(), decode_component(), decode_dcac(), decode_eld_specific_config(), decode_element(), decode_entropy_coded_image(), decode_envelope(), decode_frame(), decode_gain_info(), decode_gray_bitstream(), decode_group3_1d_line(), decode_group3_2d_line(), decode_header_trees(), decode_hq_slice(), decode_huff(), decode_huffman2(), decode_i_block(), decode_inter(), decode_inter_plane(), decode_intra(), decode_intra_plane(), decode_lowdelay(), decode_lowdelay_slice(), decode_mb(), decode_mb_info(), decode_motion_vectors(), decode_p_block(), decode_pce(), decode_pic(), decode_pic_hdr(), decode_plane(), decode_plane10(), decode_plane_bitstream(), decode_profile_tier_level(), decode_rice(), decode_skip_count(), decode_slice(), decode_studio_vop_header(), decode_subframe(), decode_subframe_length(), decode_uncompressed(), decode_vector(), decode_vectors(), decode_vol_header(), decode_vop_header(), decode_vui(), decode_vui_parameters(), do_decode(), dv_decode_video_segment(), dx2_decode_slice_410(), dx2_decode_slice_420(), dx2_decode_slice_444(), dx2_decode_slice_5x5(), dx2_decode_slice_rgb(), ensure_bits(), ep_init_cabac_decoder(), escape124_decode_frame(), ff_bgmc_decode_init(), ff_cbs_read_signed(), ff_dirac_init_arith_decoder(), ff_dolby_e_parse_header(), ff_dovi_rpu_parse(), ff_h263_decode_frame(), ff_h263_decode_mb(), ff_h263_decode_picture_header(), ff_h263_resync(), ff_h264_decode_mb_cavlc(), ff_h264_decode_seq_parameter_set(), ff_h264_sei_decode(), ff_hevc_decode_nal_pps(), ff_hevc_decode_nal_sei(), ff_hevc_decode_nal_vps(), ff_hevc_parse_sps(), ff_iamf_parse_obu_header(), ff_intel_h263_decode_picture_header(), ff_intrax8_decode_picture(), ff_ivi_decode_frame(), ff_jpegls_decode_picture(), ff_jpegxl_parse_codestream_header(), ff_lag_rac_init(), ff_mjpeg_decode_dht(), ff_mjpeg_decode_dqt(), ff_mjpeg_decode_frame_from_buf(), ff_mjpeg_decode_sos(), ff_mpeg4_decode_studio_slice_header(), ff_mpeg4audio_get_config_gb(), ff_msmpeg4_decode_block(), ff_msmpeg4_decode_picture_header(), ff_parse_a53_cc(), ff_parse_itu_t_t35_to_dynamic_hdr_vivid(), ff_tak_decode_frame_header(), ff_vc1_parse_frame_header(), ff_wmv2_decode_secondary_picture_header(), fic_decode_block(), flashsv_decode_frame(), fraps2_decode_plane(), ftr_decode_frame(), get_block(), get_dimension(), get_interleaved_ue_golomb(), get_rice_ook(), get_rice_un(), get_sr_golomb_dst(), get_ts64(), get_ur_golomb_jpegls(), get_urice(), h261_decode_mb(), h261_decode_picture_header(), h261_handle_packet(), h261_resync(), h263_decode_gob_header(), h263_handle_packet(), h264_find_frame_end(), handle_rstn(), hcom_decode(), hls_slice_header(), hqa_decode_mb(), huf_decode(), init_quantized_coeffs_elem0(), init_tone_level_dequantization(), intlist_read(), ipu_decode_frame(), ipvideo_decode_format_11_opcodes(), ir2_decode_plane(), ir2_decode_plane_inter(), is_input_end(), jpegxl_read_extra_channel_info(), jpegxl_skip_extensions(), jpg_decode_block(), latm_decode_audio_specific_config(), ljpeg_decode_rgb_scan(), ljpeg_decode_yuv_scan(), loco_get_rice(), ls_decode_line(), magy_decode_slice10(), message_list(), mjpeg_decode_app(), mjpeg_decode_com(), mjpeg_decode_scan(), mjpeg_decode_scan_progressive_ac(), mjpegb_decode_frame(), mp_decode_frame(), mp_decode_layer3(), mpc8_decode_frame(), mpc8_parse_seektable(), mpeg4_decode_block(), mpeg4_decode_studio_mb(), mpeg_decode_a53_cc(), mpeg_decode_slice(), msmpeg4v34_decode_mb(), nb_decode(), next_start_code_studio(), parse_aux_data(), parse_bintree(), parse_ch(), parse_channel(), parse_coding_header(), parse_config_ALS(), parse_descriptor(), parse_fmtp_config(), parse_frame_header(), parse_grid_1_chunk(), parse_grid_2(), parse_mb_skip(), parse_obu_header(), parse_packet_header(), parse_ptl(), parse_rps(), parse_sequence_header(), parse_setup_header(), parse_subframe_audio(), parse_subframe_header(), parse_tonal(), parse_tonal_chunk(), parse_x96_coding_header(), parse_x96_subframe_audio(), parse_x96_subframe_header(), parse_xbr_subframe(), qdm2_fft_decode_tones(), qdmc_get_vlc(), read_audio_mux_element(), read_block(), read_block_types(), read_code(), read_colors(), read_dcs(), read_dct_coeffs(), read_diff_float_data(), read_distribution_bundle(), read_frame_data(), read_header(), read_len_table(), read_motion_values(), read_patterns(), read_payload_length_info(), read_quant_matrix_ext(), read_runs(), read_specific_config(), read_stream_mux_config(), read_tree(), read_vlc_prefix(), rice_decompress(), sb_decode(), seq_unpack_rle_block(), shorten_decode_frame(), siren_decode(), skip_1stop_8data_bits(), skip_data_stream_element(), skip_extensions(), skip_hdr_extension(), skip_icc_profile(), smacker_decode_bigtree(), smacker_decode_tree(), smk_get_code(), smka_decode_frame(), speex_decode_frame(), svq1_decode_frame_header(), svq3_decode_frame(), svq3_decode_slice_header(), synth_superframe(), synthfilt_build_sb_samples(), tak_decode_frame(), tgv_decode_inter(), tm2_read_stream(), try_parse(), tscc2_decode_mb(), tta_decode_frame(), unpack_alpha(), unpack_block_qpis(), unpack_dct_coeffs(), unpack_modes(), unpack_superblocks(), unpack_vectors(), unpack_vlcs(), user_data(), uvlc(), vble_unpack(), vc1_decode_ac_coeff(), vc1_decode_b_blocks(), vc1_decode_i_blocks(), vc1_decode_i_blocks_adv(), vc1_decode_p_blocks(), vorbis_residue_decode_internal(), vp6_parse_coeff_huffman(), wavpack_decode_block(), wma_decode_block(), wma_decode_superframe(), wmavoice_decode_packet(), wmv2_decode_mb(), wv_get_value(), wv_get_value_float(), wv_get_value_integer(), and xan_huffman_decode().

◆ skip_1stop_8data_bits()

static int skip_1stop_8data_bits ( GetBitContext gb)
inlinestatic
name
it s the only field you need to keep assuming you have a context There is some magic you don t need to care about around this just let it vf default minimum maximum flags name is the option name
Definition: writing_filters.txt:88
av_unused
#define av_unused
Definition: attributes.h:131
table
static const uint16_t table[]
Definition: prosumer.c:205
bits
uint8_t bits
Definition: vp3data.h:128
if
if(ret)
Definition: filter_design.txt:179
index
int index
Definition: gxfenc.c:89
code
and forward the test the status of outputs and forward it to the corresponding return FFERROR_NOT_READY If the filters stores internally one or a few frame for some it can consider them to be part of the FIFO and delay acknowledging a status change accordingly Example code
Definition: filter_design.txt:178
SHOW_UBITS
#define SHOW_UBITS(name, gb, num)
Definition: get_bits.h:259
buffer
the frame and frame reference mechanism is intended to as much as expensive copies of that data while still allowing the filters to produce correct results The data is stored in buffers represented by AVFrame structures Several references can point to the same frame buffer
Definition: filter_design.txt:49
AV_RL
#define AV_RL(s, p)
Definition: intreadwrite.h:389