[FFmpeg-cvslog] h264: use struct offsets in get_cabac_bypass_sign_x86().

Aurélien Nephtali aurelien.nephtali at gmail.com
Sun Apr 1 14:06:52 CEST 2012


Hi,

On Sun, Apr 1, 2012 at 12:46 PM, Nicolas George
<nicolas.george at normalesup.org> wrote:
> Le tridi 13 germinal, an CCXX, Aurélien Nephtali a écrit :
>> ffmpeg -i ~/work/file.ts -an -vcodec libx264 -r 25 -profile baseline
>> -f mpegts /dev/null
>
> Do you need to encode and mux to reproduce the problem, or does it fail also
> with with -f null or -f md5?
>
> Can you reproduce the problem with a publicly available file, for example
> one of the FATE samples? If not, can you make your file available?
>
>> Depending of the source, the crash location is not the same.
>
> Valgring should be able to help with that.
>
> Regards,

Using fate sample : CABACI3_Sony_B.jsv

~/work/local/bin/valgrind --dsymutil=yes ~/work/local/bin/ffmpeg -i
~/work/ffmpeg/fate-suite/h264-conformance/CABACI3_Sony_B.jsv -an -f
md5 /dev/null
==22892== Memcheck, a memory error detector
==22892== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al.
==22892== Using Valgrind-3.8.0.SVN and LibVEX; rerun with -h for copyright info
==22892== Command: /Users/aurelien/work/local/bin/ffmpeg -i
/Users/aurelien/work/ffmpeg/fate-suite/h264-conformance/CABACI3_Sony_B.jsv
-an -f md5 /dev/null
==22892==
--22892-- run: /usr/bin/dsymutil "/Users/aurelien/work/local/bin/ffmpeg"
--22892-- run: /usr/bin/dsymutil
"/Users/aurelien/work/local/lib/libavdevice.53.4.100.dylib"
--22892-- run: /usr/bin/dsymutil
"/Users/aurelien/work/local/lib/libavfilter.2.66.101.dylib"
--22892-- run: /usr/bin/dsymutil
"/Users/aurelien/work/local/lib/libavformat.54.3.100.dylib"
--22892-- run: /usr/bin/dsymutil
"/Users/aurelien/work/local/lib/libavcodec.54.12.100.dylib"
--22892-- run: /usr/bin/dsymutil
"/Users/aurelien/work/local/lib/libpostproc.52.0.100.dylib"
--22892-- run: /usr/bin/dsymutil
"/Users/aurelien/work/local/lib/libswresample.0.10.100.dylib"
--22892-- run: /usr/bin/dsymutil
"/Users/aurelien/work/local/lib/libswscale.2.1.100.dylib"
--22892-- run: /usr/bin/dsymutil
"/Users/aurelien/work/local/lib/libavutil.51.44.100.dylib"
--22892-- run: /usr/bin/dsymutil
"/Users/aurelien/work/local/lib/libx264.122.dylib"
ffmpeg version N-39459-g7a3df01 Copyright (c) 2000-2012 the FFmpeg developers
  built on Apr  1 2012 12:19:49 with llvm_gcc 4.2.1 (Based on Apple
Inc. build 5658) (LLVM build 2336.1.00)
  configuration: --yasmexe=/Users/aurelien/work/yasm-1.1.0/yasm
--prefix=/Users/aurelien/work/local/ --disable-vda --enable-shared
--disable-optimizations --disable-stripping --enable-libx264
--enable-gpl --extra-cflags='-I /Users/aurelien/work/local/include'
--extra-ldflags='-L /Users/aurelien/work/local/lib'
  libavutil      51. 44.100 / 51. 44.100
  libavcodec     54. 12.100 / 54. 12.100
  libavformat    54.  3.100 / 54.  3.100
  libavdevice    53.  4.100 / 53.  4.100
  libavfilter     2. 66.101 /  2. 66.101
  libswscale      2.  1.100 /  2.  1.100
  libswresample   0. 10.100 /  0. 10.100
  libpostproc    52.  0.100 / 52.  0.100
[h264 @ 0x100054460] top block unavailable for requested intra4x4 mode -1 at 1 0
[h264 @ 0x100054460] error while decoding MB 1 0, bytestream (862)
[h264 @ 0x100054460] top block unavailable for requested intra4x4 mode -1 at 4 2
[h264 @ 0x100054460] error while decoding MB 4 2, bytestream (4296359119)
[h264 @ 0x100054460] concealing 97 DC, 97 AC, 97 MV errors
[h264 @ 0x100054460] top block unavailable for requested intra4x4 mode -1 at 7 2
[h264 @ 0x100054460] error while decoding MB 7 2, bytestream (99)
[h264 @ 0x100054460] concealing 93 DC, 93 AC, 93 MV errors
[h264 @ 0x100054460] Increasing reorder buffer to 1
[h264 @ 0x100054460] Reference 3 >= 2
[h264 @ 0x100054460] error while decoding MB 3 0, bytestream (153)
[h264 @ 0x100054460] top block unavailable for requested intra4x4 mode -1 at 4 2
[h264 @ 0x100054460] error while decoding MB 4 2, bytestream (4296396182)
[h264 @ 0x100054460] top block unavailable for requested intra mode at 10 6
[h264 @ 0x100054460] error while decoding MB 10 6, bytestream (312)
[h264 @ 0x100054460] concealing 97 DC, 97 AC, 97 MV errors
[h264 @ 0x100054460] Increasing reorder buffer to 2
[h264 @ 0x100054460] top block unavailable for requested intra mode at 2 0
[h264 @ 0x100054460] error while decoding MB 2 0, bytestream (61)
[h264 @ 0x100054460] concealing 93 DC, 93 AC, 93 MV errors
[h264 @ 0x100054460] top block unavailable for requested intra4x4 mode -1 at 6 7
[h264 @ 0x100054460] error while decoding MB 6 7, bytestream (81)
[h264 @ 0x100054460] concealing 88 DC, 88 AC, 88 MV errors
[h264 @ 0x100054460] concealing 89 DC, 89 AC, 89 MV errors
==22892== Invalid read of size 1
==22892==    at 0x77BCA0: refill2 (cabac_functions.h:71)
==22892==    by 0x77BE5B: get_cabac_inline (cabac_functions.h:99)
==22892==    by 0x77BEE2: get_cabac (cabac_functions.h:109)
==22892==    by 0x78411D: decode_cabac_residual_internal (h264_cabac.c:1678)
==22892==    by 0x784BBE: decode_cabac_residual_nondc_internal
(h264_cabac.c:1768)
==22892==    by 0x784F32: decode_cabac_residual_nondc (h264_cabac.c:1815)
==22892==    by 0x78546E: decode_cabac_luma_residual (h264_cabac.c:1857)
==22892==    by 0x789482: ff_h264_decode_mb_cabac (h264_cabac.c:2355)
==22892==    by 0x778F69: decode_slice (h264.c:3999)
==22892==    by 0x779AC7: execute_decode_slices (h264.c:4153)
==22892==    by 0x77AB3F: decode_nal_units (h264.c:4445)
==22892==    by 0x77B0C5: decode_frame (h264.c:4557)
==22892==  Address 0x2f2 is not stack'd, malloc'd or (recently) free'd

-- 
Aurélien Nephtali


More information about the ffmpeg-cvslog mailing list