[SCM] libav/experimental: Deobfuscate LE SHOW_[SU]BITS; these are simple sign/zero-extend

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 17:00:55 UTC 2013


The following commit has been merged in the experimental branch:
commit 7cd7d19e86f98a0806429a623bb0b010a24ce93a
Author: Måns Rullgård <mans at mansr.com>
Date:   Sun Feb 21 21:48:40 2010 +0000

    Deobfuscate LE SHOW_[SU]BITS; these are simple sign/zero-extend
    
    Originally committed as revision 21948 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/get_bits.h b/libavcodec/get_bits.h
index bb40ff4..7c4ee43 100644
--- a/libavcodec/get_bits.h
+++ b/libavcodec/get_bits.h
@@ -166,10 +166,10 @@ for examples see get_bits, show_bits, skip_bits, get_vlc
 
 # ifdef ALT_BITSTREAM_READER_LE
 #   define SHOW_UBITS(name, gb, num)\
-        ((name##_cache) & (NEG_USR32(0xffffffff,num)))
+        zero_extend(name##_cache, num)
 
 #   define SHOW_SBITS(name, gb, num)\
-        NEG_SSR32((name##_cache)<<(32-(num)), num)
+        sign_extend(name##_cache, num)
 # else
 #   define SHOW_UBITS(name, gb, num)\
         NEG_USR32(name##_cache, num)

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list