comparison wavpack.c @ 4421:41ee67dd4bef libavcodec

Coded residual in WavPack may be > 0xFFFF
author kostya
date Sat, 27 Jan 2007 14:24:40 +0000
parents 05e932ddaaa9
children 1bfdcac74275
comparison
equal deleted inserted replaced
4420:1e86a8f18693 4421:41ee67dd4bef
139 139
140 static av_always_inline int get_tail(GetBitContext *gb, int k) 140 static av_always_inline int get_tail(GetBitContext *gb, int k)
141 { 141 {
142 int p, e, res; 142 int p, e, res;
143 143
144 if(k<1 || k>65535)return 0; 144 if(k<1)return 0;
145 p = av_log2_16bit(k); 145 p = av_log2(k);
146 e = (1 << (p + 1)) - k - 1; 146 e = (1 << (p + 1)) - k - 1;
147 res = p ? get_bits(gb, p) : 0; 147 res = p ? get_bits(gb, p) : 0;
148 if(res >= e){ 148 if(res >= e){
149 res = (res<<1) - e + get_bits1(gb); 149 res = (res<<1) - e + get_bits1(gb);
150 } 150 }