mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
use get_unary from bitstream.h
Originally committed as revision 9995 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
971e878dca
commit
57d473f457
@ -114,12 +114,6 @@ static av_always_inline int wp_exp2(int16_t val)
|
||||
return neg ? -res : res;
|
||||
}
|
||||
|
||||
static inline int get_unary(GetBitContext *gb){
|
||||
int r=0;
|
||||
while(get_bits1(gb) && r<33)r++;
|
||||
return r;
|
||||
}
|
||||
|
||||
// macros for manipulating median values
|
||||
#define GET_MED(n) ((median[n] >> 4) + 1)
|
||||
#define DEC_MED(n) median[n] -= ((median[n] + (128>>n) - 2) / (128>>n)) * 2
|
||||
@ -165,7 +159,7 @@ static int wv_get_value(WavpackContext *ctx, GetBitContext *gb, int *median, int
|
||||
if(ctx->zeroes)
|
||||
return 0;
|
||||
}else{
|
||||
t = get_unary(gb);
|
||||
t = get_unary(gb, 0, 33);
|
||||
if(t >= 2) t = get_bits(gb, t - 1) | (1 << (t-1));
|
||||
ctx->zeroes = t;
|
||||
if(ctx->zeroes){
|
||||
@ -184,13 +178,13 @@ static int wv_get_value(WavpackContext *ctx, GetBitContext *gb, int *median, int
|
||||
t = 0;
|
||||
ctx->zero = 0;
|
||||
}else{
|
||||
t = get_unary(gb);
|
||||
t = get_unary(gb, 0, 33);
|
||||
if(get_bits_count(gb) >= ctx->data_size){
|
||||
*last = 1;
|
||||
return 0;
|
||||
}
|
||||
if(t == 16) {
|
||||
t2 = get_unary(gb);
|
||||
t2 = get_unary(gb, 0, 33);
|
||||
if(t2 < 2) t += t2;
|
||||
else t += get_bits(gb, t2 - 1) | (1 << (t2 - 1));
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user