[FFmpeg-trac] #1373(avcodec:reopened): bmv_video crash

FFmpeg trac at avcodec.org
Fri Aug 10 18:40:56 CEST 2012


#1373: bmv_video crash
-------------------------------------+-------------------------------------
             Reporter:  ami_stuff    |                    Owner:
                 Type:  defect       |                   Status:  reopened
             Priority:  important    |                Component:  avcodec
              Version:  git-master   |               Resolution:
             Keywords:  bmv crash    |               Blocked By:
  SIGSEGV                            |  Reproduced by developer:  1
             Blocking:               |
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
Changes (by cehoyos):

 * status:  closed => reopened
 * resolution:  fixed =>


Comment:

 Invalid reads are still reproducible.
 {{{
 $ ffmpeg_g -vcodec bmv_video -i Boar__Apple_ProRes_422-partial.mov -f null
 -
 ==8700== Memcheck, a memory error detector.
 ==8700== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al.
 ==8700== Using LibVEX rev 1732, a library for dynamic binary translation.
 ==8700== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
 ==8700== Using valgrind-3.2.3, a dynamic binary instrumentation framework.
 ==8700== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al.
 ==8700== For more details, rerun with: -v
 ==8700==
 ffmpeg version N-43443-g7fd467f Copyright (c) 2000-2012 the FFmpeg
 developers
   built on Aug 10 2012 18:35:15 with gcc 4.3.2 (GCC)
   configuration: --cc=/usr/local/gcc-4.3.2/bin/gcc --disable-optimizations
   libavutil      51. 67.100 / 51. 67.100
   libavcodec     54. 51.100 / 54. 51.100
   libavformat    54. 23.100 / 54. 23.100
   libavdevice    54.  2.100 / 54.  2.100
   libavfilter     3.  7.100 /  3.  7.100
   libswscale      2.  1.101 /  2.  1.101
   libswresample   0. 15.100 /  0. 15.100
 Guessed Channel Layout for  Input Stream #0.1 : mono
 Guessed Channel Layout for  Input Stream #0.2 : mono
 Guessed Channel Layout for  Input Stream #0.3 : mono
 Guessed Channel Layout for  Input Stream #0.4 : mono
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
 'Boar__Apple_ProRes_422-partial.mov':
   Metadata:
     major_brand     : qt
     minor_version   : 537199360
     compatible_brands: qt
     creation_time   : 1938-02-17 02:04:25
   Duration: 00:00:07.90, start: 0.000000, bitrate: 10618 kb/s
     Stream #0:0(eng): Video: bmv_video (apch / 0x68637061), pal8, 960x720,
 151844 kb/s, SAR 4:3 DAR 16:9, 50 fps, 50 tbr, 50 tbn, 50 tbc
     Metadata:
       creation_time   : 1938-02-17 02:04:25
       handler_name    : Apple Alias-Datensteuerung
       timecode        : 00:00:00:00
     Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz,
 mono, s16, 768 kb/s
     Metadata:
       creation_time   : 1938-02-17 02:04:25
       handler_name    : Apple Alias-Datensteuerung
     Stream #0:2(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz,
 mono, s16, 768 kb/s
     Metadata:
       creation_time   : 1938-02-17 02:04:25
       handler_name    : Apple Alias-Datensteuerung
     Stream #0:3(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz,
 mono, s16, 768 kb/s
     Metadata:
       creation_time   : 1938-02-17 02:04:25
       handler_name    : Apple Alias-Datensteuerung
     Stream #0:4(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz,
 mono, s16, 768 kb/s
     Metadata:
       creation_time   : 1938-02-17 02:04:25
       handler_name    : Apple Alias-Datensteuerung
     Stream #0:5(eng): Data: none (tmcd / 0x64636D74)
     Metadata:
       creation_time   : 1938-02-17 02:04:30
       handler_name    : Apple Alias-Datensteuerung
       timecode        : 00:00:00:00
 Output #0, null, to 'pipe:':
   Metadata:
     major_brand     : qt
     minor_version   : 537199360
     compatible_brands: qt
     encoder         : Lavf54.23.100
     Stream #0:0(eng): Video: rawvideo, pal8, 960x720 [SAR 4:3 DAR 16:9],
 q=2-31, 200 kb/s, 90k tbn, 50 tbc
     Metadata:
       creation_time   : 1938-02-17 02:04:25
       handler_name    : Apple Alias-Datensteuerung
       timecode        : 00:00:00:00
     Stream #0:1(eng): Audio: pcm_s16le, 48000 Hz, mono, s16, 768 kb/s
     Metadata:
       creation_time   : 1938-02-17 02:04:25
       handler_name    : Apple Alias-Datensteuerung
 Stream mapping:
   Stream #0:0 -> #0:0 (bmv_video -> rawvideo)
   Stream #0:1 -> #0:1 (pcm_s16le -> pcm_s16le)
 Press [q] to stop, [?] for help
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 ==8700== Invalid read of size 1
 ==8700==    at 0x40245A1: memcpy (in
 /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
 ==8700==    by 0x81D27C9: decode_frame (bmv.c:256)
 ==8700==    by 0x8590027: avcodec_decode_video2 (utils.c:1509)
 ==8700==    by 0x805BA35: decode_video (ffmpeg.c:1549)
 ==8700==    by 0x805C8E0: output_packet (ffmpeg.c:1734)
 ==8700==    by 0x806145B: process_input (ffmpeg.c:2858)
 ==8700==    by 0x80615EC: transcode (ffmpeg.c:2916)
 ==8700==    by 0x8061BA9: main (ffmpeg.c:3098)
 ==8700==  Address 0x47577DF is 1 bytes before a block of size 8 alloc'd
 ==8700==    at 0x4021A50: memalign (in
 /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
 ==8700==    by 0x4021AAA: posix_memalign (in
 /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
 ==8700==    by 0x8833493: av_malloc (mem.c:95)
 ==8700==    by 0x88336AA: av_strdup (mem.c:217)
 ==8700==    by 0x882BF22: av_dict_set (dict.c:79)
 ==8700==    by 0x818A913: avformat_write_header (utils.c:3359)
 ==8700==    by 0x805EC11: transcode_init (ffmpeg.c:2278)
 ==8700==    by 0x806153E: transcode (ffmpeg.c:2887)
 ==8700==    by 0x8061BA9: main (ffmpeg.c:3098)
 ==8700==
 ==8700== Invalid read of size 1
 ==8700==    at 0x40245A9: memcpy (in
 /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
 ==8700==    by 0x81D27C9: decode_frame (bmv.c:256)
 ==8700==    by 0x8590027: avcodec_decode_video2 (utils.c:1509)
 ==8700==    by 0x805BA35: decode_video (ffmpeg.c:1549)
 ==8700==    by 0x805C8E0: output_packet (ffmpeg.c:1734)
 ==8700==    by 0x806145B: process_input (ffmpeg.c:2858)
 ==8700==    by 0x80615EC: transcode (ffmpeg.c:2916)
 ==8700==    by 0x8061BA9: main (ffmpeg.c:3098)
 ==8700==  Address 0x47577DE is 2 bytes before a block of size 8 alloc'd
 ==8700==    at 0x4021A50: memalign (in
 /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
 ==8700==    by 0x4021AAA: posix_memalign (in
 /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
 ==8700==    by 0x8833493: av_malloc (mem.c:95)
 ==8700==    by 0x88336AA: av_strdup (mem.c:217)
 ==8700==    by 0x882BF22: av_dict_set (dict.c:79)
 ==8700==    by 0x818A913: avformat_write_header (utils.c:3359)
 ==8700==    by 0x805EC11: transcode_init (ffmpeg.c:2278)
 ==8700==    by 0x806153E: transcode (ffmpeg.c:2887)
 ==8700==    by 0x8061BA9: main (ffmpeg.c:3098)
 ==8700==
 ==8700== Invalid read of size 1
 ==8700==    at 0x40245B0: memcpy (in
 /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
 ==8700==    by 0x81D27C9: decode_frame (bmv.c:256)
 ==8700==    by 0x8590027: avcodec_decode_video2 (utils.c:1509)
 ==8700==    by 0x805BA35: decode_video (ffmpeg.c:1549)
 ==8700==    by 0x805C8E0: output_packet (ffmpeg.c:1734)
 ==8700==    by 0x806145B: process_input (ffmpeg.c:2858)
 ==8700==    by 0x80615EC: transcode (ffmpeg.c:2916)
 ==8700==    by 0x8061BA9: main (ffmpeg.c:3098)
 ==8700==  Address 0x47577DD is 3 bytes before a block of size 8 alloc'd
 ==8700==    at 0x4021A50: memalign (in
 /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
 ==8700==    by 0x4021AAA: posix_memalign (in
 /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
 ==8700==    by 0x8833493: av_malloc (mem.c:95)
 ==8700==    by 0x88336AA: av_strdup (mem.c:217)
 ==8700==    by 0x882BF22: av_dict_set (dict.c:79)
 ==8700==    by 0x818A913: avformat_write_header (utils.c:3359)
 ==8700==    by 0x805EC11: transcode_init (ffmpeg.c:2278)
 ==8700==    by 0x806153E: transcode (ffmpeg.c:2887)
 ==8700==    by 0x8061BA9: main (ffmpeg.c:3098)
 ==8700==
 ==8700== Invalid read of size 1
 ==8700==    at 0x40245B7: memcpy (in
 /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
 ==8700==    by 0x81D27C9: decode_frame (bmv.c:256)
 ==8700==    by 0x8590027: avcodec_decode_video2 (utils.c:1509)
 ==8700==    by 0x805BA35: decode_video (ffmpeg.c:1549)
 ==8700==    by 0x805C8E0: output_packet (ffmpeg.c:1734)
 ==8700==    by 0x806145B: process_input (ffmpeg.c:2858)
 ==8700==    by 0x80615EC: transcode (ffmpeg.c:2916)
 ==8700==    by 0x8061BA9: main (ffmpeg.c:3098)
 ==8700==  Address 0x47577DC is 4 bytes before a block of size 8 alloc'd
 ==8700==    at 0x4021A50: memalign (in
 /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
 ==8700==    by 0x4021AAA: posix_memalign (in
 /usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
 ==8700==    by 0x8833493: av_malloc (mem.c:95)
 ==8700==    by 0x88336AA: av_strdup (mem.c:217)
 ==8700==    by 0x882BF22: av_dict_set (dict.c:79)
 ==8700==    by 0x818A913: avformat_write_header (utils.c:3359)
 ==8700==    by 0x805EC11: transcode_init (ffmpeg.c:2278)
 ==8700==    by 0x806153E: transcode (ffmpeg.c:2887)
 ==8700==    by 0x8061BA9: main (ffmpeg.c:3098)
 [null @ 0x45d9320] Encoder did not produce proper pts, making some up.
 Error decoding frame data size=       0kB time=00:00:00.28 bitrate=
 0.0kbits/s dup=13 drop=0
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 [bmv_video @ 0x4430100] Error decoding frame data
 Error while decoding stream #0:0: Invalid data found when processing input
 frame=   14 fps=5.1 q=0.0 Lsize=       0kB time=00:00:00.28 bitrate=
 0.0kbits/s dup=13 drop=0
 video:1kB audio:94kB subtitle:0 global headers:0kB muxing overhead
 -100.000000%
 ==8700==
 ==8700== ERROR SUMMARY: 409383 errors from 4 contexts (suppressed: 3 from
 1)
 ==8700== malloc/free: in use at exit: 0 bytes in 0 blocks.
 ==8700== malloc/free: 2,776 allocs, 2,776 frees, 11,906,345 bytes
 allocated.
 ==8700== For counts of detected errors, rerun with: -v
 ==8700== All heap blocks were freed -- no leaks are possible.
 }}}

-- 
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/1373#comment:6>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list