Make get_ur_golomb capable of reading 16 bit values.
authorLars Täuber <lars.taeuber@gmx.net>
Fri, 11 Sep 2009 06:25:36 +0000 (06:25 +0000)
committerBenoit Fouet <benoit.fouet@free.fr>
Fri, 11 Sep 2009 06:25:36 +0000 (06:25 +0000)
Patch by Lars Täuber: firstname taeuber gmx net

Originally committed as revision 19821 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/golomb.h

index 7044042..c227607 100644 (file)
@@ -253,8 +253,12 @@ static inline int get_ur_golomb(GetBitContext *gb, int k, int limit, int esc_len
 
         return buf;
     }else{
-        buf >>= 32 - limit - esc_len;
-        LAST_SKIP_BITS(re, gb, esc_len + limit);
+        LAST_SKIP_BITS(re, gb, limit);
+        UPDATE_CACHE(re, gb);
+
+        buf = SHOW_UBITS(re, gb, esc_len);
+
+        LAST_SKIP_BITS(re, gb, esc_len);
         CLOSE_READER(re, gb);
 
         return buf + limit - 1;