FFmpeg
Macros
bitstream.h File Reference
#include <stdint.h>
#include "config.h"
#include "libavutil/avassert.h"
#include "libavutil/common.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/log.h"
#include "mathops.h"
#include "vlc.h"
#include "bitstream_template.h"

Go to the source code of this file.

Macros

#define UNCHECKED_BITSTREAM_READER   !CONFIG_SAFE_BITSTREAM_READER
 
#define BITS_DEFAULT_BE
 
#define BITSTREAM_WANT_BE
 
#define BitstreamContext   BitstreamContextBE
 
#define bits_init   bits_init_be
 
#define bits_init8   bits_init8_be
 
#define bits_tell   bits_tell_be
 
#define bits_size   bits_size_be
 
#define bits_left   bits_left_be
 
#define bits_read_bit   bits_read_bit_be
 
#define bits_read_nz   bits_read_nz_be
 
#define bits_read   bits_read_be
 
#define bits_read_63   bits_read_63_be
 
#define bits_read_64   bits_read_64_be
 
#define bits_read_signed   bits_read_signed_be
 
#define bits_read_signed_nz   bits_read_signed_nz_be
 
#define bits_peek_nz   bits_peek_nz_be
 
#define bits_peek   bits_peek_be
 
#define bits_peek_signed   bits_peek_signed_be
 
#define bits_peek_signed_nz   bits_peek_signed_nz_be
 
#define bits_skip   bits_skip_be
 
#define bits_seek   bits_seek_be
 
#define bits_align   bits_align_be
 
#define bits_read_xbits   bits_read_xbits_be
 
#define bits_decode012   bits_decode012_be
 
#define bits_decode210   bits_decode210_be
 
#define bits_apply_sign   bits_apply_sign_be
 
#define bits_read_vlc   bits_read_vlc_be
 
#define bits_read_vlc_multi   bits_read_vlc_multi_be
 
#define BITS_RL_VLC(level, run, bc, table, bits, max_depth)
 
#define AVCODEC_BITSTREAM_BE
 

Detailed Description

bitstream reader API header.

Definition in file bitstream.h.

Macro Definition Documentation

◆ UNCHECKED_BITSTREAM_READER

#define UNCHECKED_BITSTREAM_READER   !CONFIG_SAFE_BITSTREAM_READER

Definition at line 57 of file bitstream.h.

◆ BITS_DEFAULT_BE

#define BITS_DEFAULT_BE

Definition at line 74 of file bitstream.h.

◆ BITSTREAM_WANT_BE

#define BITSTREAM_WANT_BE

Definition at line 75 of file bitstream.h.

◆ BitstreamContext

#define BitstreamContext   BitstreamContextBE

Definition at line 109 of file bitstream.h.

◆ bits_init

#define bits_init   bits_init_be

Definition at line 110 of file bitstream.h.

◆ bits_init8

#define bits_init8   bits_init8_be

Definition at line 111 of file bitstream.h.

◆ bits_tell

#define bits_tell   bits_tell_be

Definition at line 112 of file bitstream.h.

◆ bits_size

#define bits_size   bits_size_be

Definition at line 113 of file bitstream.h.

◆ bits_left

#define bits_left   bits_left_be

Definition at line 114 of file bitstream.h.

◆ bits_read_bit

#define bits_read_bit   bits_read_bit_be

Definition at line 115 of file bitstream.h.

◆ bits_read_nz

#define bits_read_nz   bits_read_nz_be

Definition at line 116 of file bitstream.h.

◆ bits_read

#define bits_read   bits_read_be

Definition at line 117 of file bitstream.h.

◆ bits_read_63

#define bits_read_63   bits_read_63_be

Definition at line 118 of file bitstream.h.

◆ bits_read_64

#define bits_read_64   bits_read_64_be

Definition at line 119 of file bitstream.h.

◆ bits_read_signed

#define bits_read_signed   bits_read_signed_be

Definition at line 120 of file bitstream.h.

◆ bits_read_signed_nz

#define bits_read_signed_nz   bits_read_signed_nz_be

Definition at line 121 of file bitstream.h.

◆ bits_peek_nz

#define bits_peek_nz   bits_peek_nz_be

Definition at line 122 of file bitstream.h.

◆ bits_peek

#define bits_peek   bits_peek_be

Definition at line 123 of file bitstream.h.

◆ bits_peek_signed

#define bits_peek_signed   bits_peek_signed_be

Definition at line 124 of file bitstream.h.

◆ bits_peek_signed_nz

#define bits_peek_signed_nz   bits_peek_signed_nz_be

Definition at line 125 of file bitstream.h.

◆ bits_skip

#define bits_skip   bits_skip_be

Definition at line 126 of file bitstream.h.

◆ bits_seek

#define bits_seek   bits_seek_be

Definition at line 127 of file bitstream.h.

◆ bits_align

#define bits_align   bits_align_be

Definition at line 128 of file bitstream.h.

◆ bits_read_xbits

#define bits_read_xbits   bits_read_xbits_be

Definition at line 129 of file bitstream.h.

◆ bits_decode012

#define bits_decode012   bits_decode012_be

Definition at line 130 of file bitstream.h.

◆ bits_decode210

#define bits_decode210   bits_decode210_be

Definition at line 131 of file bitstream.h.

◆ bits_apply_sign

#define bits_apply_sign   bits_apply_sign_be

Definition at line 132 of file bitstream.h.

◆ bits_read_vlc

#define bits_read_vlc   bits_read_vlc_be

Definition at line 133 of file bitstream.h.

◆ bits_read_vlc_multi

#define bits_read_vlc_multi   bits_read_vlc_multi_be

Definition at line 134 of file bitstream.h.

◆ BITS_RL_VLC

#define BITS_RL_VLC (   level,
  run,
  bc,
  table,
  bits,
  max_depth 
)
Value:
do { \
int n, nb_bits; \
unsigned int index = bits_peek(bc, bits); \
level = table[index].level; \
n = table[index].len; \
if (max_depth > 1 && n < 0) { \
bits_skip(bc, bits); \
\
nb_bits = -n; \
\
index = bits_peek(bc, nb_bits) + level; \
level = table[index].level; \
n = table[index].len; \
if (max_depth > 2 && n < 0) { \
bits_skip(bc, nb_bits); \
nb_bits = -n; \
\
index = bits_peek(bc, nb_bits) + level; \
level = table[index].level; \
n = table[index].len; \
} \
} \
run = table[index].run; \
bits_skip(bc, n); \
} while (0)

Definition at line 141 of file bitstream.h.

◆ AVCODEC_BITSTREAM_BE

#define AVCODEC_BITSTREAM_BE

Definition at line 191 of file bitstream.h.

level
uint8_t level
Definition: svq3.c:204
bits_peek
#define bits_peek
Definition: bitstream.h:123
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