X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Fbitstream.c;h=f77b9c4e3f624a088745daceab790af6271a24d2;hb=bd17a40a7e0eba21b5d27c67aff795e2910766e4;hp=97d5b491059f596dd71c5d2719ed209e5742445a;hpb=02a8d43adf7063bda2d20039d3e9b19d8469fe69;p=ffmpeg diff --git a/libavcodec/bitstream.c b/libavcodec/bitstream.c index 97d5b491059..f77b9c4e3f6 100644 --- a/libavcodec/bitstream.c +++ b/libavcodec/bitstream.c @@ -32,20 +32,18 @@ #include "get_bits.h" #include "put_bits.h" -const uint8_t ff_log2_run[32]={ +const uint8_t ff_log2_run[41]={ 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, - 8, 9,10,11,12,13,14,15 + 8, 9,10,11,12,13,14,15, +16,17,18,19,20,21,22,23, +24, }; -void align_put_bits(PutBitContext *s) +void avpriv_align_put_bits(PutBitContext *s) { -#ifdef ALT_BITSTREAM_WRITER - put_bits(s,( - s->index) & 7,0); -#else put_bits(s,s->bit_left & 7,0); -#endif } void ff_put_string(PutBitContext *pb, const char *string, int terminate_string) @@ -58,7 +56,7 @@ void ff_put_string(PutBitContext *pb, const char *string, int terminate_string) put_bits(pb, 8, 0); } -void ff_copy_bits(PutBitContext *pb, const uint8_t *src, int length) +void avpriv_copy_bits(PutBitContext *pb, const uint8_t *src, int length) { int words= length>>4; int bits= length&15; @@ -105,7 +103,7 @@ static int alloc_table(VLC *vlc, int size, int use_static) vlc->table_size += size; if (vlc->table_size > vlc->table_allocated) { if(use_static) - abort(); //cant do anything, init_vlc() is used with too little memory + abort(); // cannot do anything, init_vlc() is used with too little memory vlc->table_allocated += (1 << vlc->bits); vlc->table = av_realloc(vlc->table, sizeof(VLC_TYPE) * 2 * vlc->table_allocated); @@ -116,10 +114,10 @@ static int alloc_table(VLC *vlc, int size, int use_static) } static av_always_inline uint32_t bitswap_32(uint32_t x) { - return av_reverse[x&0xFF]<<24 - | av_reverse[(x>>8)&0xFF]<<16 - | av_reverse[(x>>16)&0xFF]<<8 - | av_reverse[x>>24]; + return (uint32_t)av_reverse[x&0xFF]<<24 + | (uint32_t)av_reverse[(x>>8)&0xFF]<<16 + | (uint32_t)av_reverse[(x>>16)&0xFF]<<8 + | (uint32_t)av_reverse[x>>24]; } typedef struct { @@ -255,9 +253,9 @@ static int build_table(VLC *vlc, int table_nb_bits, int nb_codes, (byte/word/long) to store the 'bits', 'codes', and 'symbols' tables. 'use_static' should be set to 1 for tables, which should be freed - with av_free_static(), 0 if free_vlc() will be used. + with av_free_static(), 0 if ff_free_vlc() will be used. */ -int init_vlc_sparse(VLC *vlc, int nb_bits, int nb_codes, +int ff_init_vlc_sparse(VLC *vlc, int nb_bits, int nb_codes, const void *bits, int bits_wrap, int bits_size, const void *codes, int codes_wrap, int codes_size, const void *symbols, int symbols_wrap, int symbols_size, @@ -320,8 +318,7 @@ int init_vlc_sparse(VLC *vlc, int nb_bits, int nb_codes, } -void free_vlc(VLC *vlc) +void ff_free_vlc(VLC *vlc) { av_freep(&vlc->table); } -