Mercurial > libavcodec.hg
diff bitstream.h @ 5605:d92fa6e5fc8c libavcodec
move get_unary() to its own file
author | aurel |
---|---|
date | Sun, 26 Aug 2007 22:33:48 +0000 |
parents | 28dcc5cd79d2 |
children | 1d83e9c34641 |
line wrap: on
line diff
--- a/bitstream.h Sun Aug 26 22:06:40 2007 +0000 +++ b/bitstream.h Sun Aug 26 22:33:48 2007 +0000 @@ -950,50 +950,4 @@ return get_bits1(gb) + 1; } -/** - * Get unary code of limited length - * @todo FIXME Slow and ugly - * @param gb GetBitContext - * @param[in] stop The bitstop value (unary code of 1's or 0's) - * @param[in] len Maximum length - * @return Unary length/index - */ -static int get_unary(GetBitContext *gb, int stop, int len) -{ -#if 1 - int i; - - for(i = 0; i < len && get_bits1(gb) != stop; i++); - return i; -/* int i = 0, tmp = !stop; - - while (i != len && tmp != stop) - { - tmp = get_bits(gb, 1); - i++; - } - if (i == len && tmp != stop) return len+1; - return i;*/ -#else - unsigned int buf; - int log; - - OPEN_READER(re, gb); - UPDATE_CACHE(re, gb); - buf=GET_CACHE(re, gb); //Still not sure - if (stop) buf = ~buf; - - log= av_log2(-buf); //FIXME: -? - if (log < limit){ - LAST_SKIP_BITS(re, gb, log+1); - CLOSE_READER(re, gb); - return log; - } - - LAST_SKIP_BITS(re, gb, limit); - CLOSE_READER(re, gb); - return limit; -#endif -} - #endif /* BITSTREAM_H */