[SCM] libav/experimental: This should make P-frames decoding work on x86 (by avoiding get_bits(0))
siretart at users.alioth.debian.org
siretart at users.alioth.debian.org
Sun Jun 30 15:48:23 UTC 2013
The following commit has been merged in the experimental branch:
commit e8ba1cea3cfd8eb34c676aa1461dc21e47ab4493
Author: Kostya Shishkov <kostya.shishkov at gmail.com>
Date: Thu Jun 29 11:02:33 2006 +0000
This should make P-frames decoding work on x86 (by avoiding get_bits(0))
Originally committed as revision 5542 to svn://svn.ffmpeg.org/ffmpeg/trunk
diff --git a/libavcodec/vc1.c b/libavcodec/vc1.c
index 8901f79..5df818c 100644
--- a/libavcodec/vc1.c
+++ b/libavcodec/vc1.c
@@ -1341,14 +1341,18 @@ if(v->mv_mode != MV_PMODE_1MV && v->mv_mode != MV_PMODE_1MV_HPEL && v->mv_mode !
index1 = index%6; \
if (s->mspel && index1 == 5) val = 1; \
else val = 0; \
- val = get_bits(gb, size_table[index1] - val); \
+ if(size_table[index1] - val > 0) \
+ val = get_bits(gb, size_table[index1] - val); \
+ else val = 0; \
sign = 0 - (val&1); \
_dmv_x = (sign ^ ((val>>1) + offset_table[index1])) - sign; \
\
index1 = index/6; \
if (s->mspel && index1 == 5) val = 1; \
- else val = 0; \
- val = get_bits(gb, size_table[index1] - val); \
+ else val = 0; \
+ if(size_table[index1] - val > 0) \
+ val = get_bits(gb, size_table[index1] - val); \
+ else val = 0; \
sign = 0 - (val&1); \
_dmv_y = (sign ^ ((val>>1) + offset_table[index1])) - sign; \
}
--
Libav/FFmpeg packaging
More information about the pkg-multimedia-commits
mailing list