[FFmpeg-trac] #990(avcodec:open): ffmpeg segfaults in ff_msmpeg4_encode_block with "-r 12 -codec msmpeg4 -mbd rd" options

FFmpeg trac at avcodec.org
Fri Feb 10 17:16:14 CET 2012


#990: ffmpeg segfaults in ff_msmpeg4_encode_block with "-r 12 -codec msmpeg4 -mbd
rd" options
-------------------------------------+-------------------------------------
             Reporter:               |                    Owner:
  tom.vercauteren@…                  |                   Status:  open
                 Type:  defect       |                Component:  avcodec
             Priority:  normal       |               Resolution:
              Version:  git-master   |               Blocked By:
             Keywords:  crash        |  Reproduced by developer:  1
  SIGSEGV msmpeg4                    |
             Blocking:               |
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
Changes (by cehoyos):

 * keywords:   => crash SIGSEGV msmpeg4
 * status:  new => open
 * version:  0.10 => git-master
 * reproduced:  0 => 1


Comment:

 {{{
 $ (gdb) r -r 12 -i test-%04d.png -codec msmpeg4 -mbd rd test.avi
 Starting program: ffmpeg_g -r 12 -i test-%04d.png -codec msmpeg4 -mbd rd
 test.avi
 ffmpeg version N-37711-g1b7ff90 Copyright (c) 2000-2012 the FFmpeg
 developers
   built on Feb 10 2012 10:47:16 with gcc 4.5.3
   configuration: --cc=/usr/local/gcc-4.5.3/bin/gcc
   libavutil      51. 39.100 / 51. 39.100
   libavcodec     54.  1.100 / 54.  1.100
   libavformat    54.  0.100 / 54.  0.100
   libavdevice    53.  4.100 / 53.  4.100
   libavfilter     2. 62.100 /  2. 62.100
   libswscale      2.  1.100 /  2.  1.100
   libswresample   0.  6.100 /  0.  6.100
 Input #0, image2, from 'test-%04d.png':
   Duration: 00:00:00.25, start: 0.000000, bitrate: N/A
     Stream #0:0: Video: png, rgba, 912x912, 12 fps, 12 tbr, 12 tbn, 12 tbc
 Incompatible pixel format 'rgba' for codec 'msmpeg4', auto-selecting
 format 'yuv420p'
 [buffer @ 0x13d7200] w:912 h:912 pixfmt:rgba tb:1/1000000 sar:0/1
 sws_param:
 [buffersink @ 0x13d7600] auto-inserting filter 'auto-inserted scale 0'
 between the filter 'src' and the filter 'out'
 [scale @ 0x13d7ee0] w:912 h:912 fmt:rgba -> w:912 h:912 fmt:yuv420p
 flags:0x4
 Output #0, avi, to 'test.avi':
   Metadata:
     ISFT            : Lavf54.0.100
     Stream #0:0: Video: msmpeg4 (hq) (MP43 / 0x3334504D), yuv420p,
 912x912, q=2-31, 200 kb/s, 12 tbn, 12 tbc
 Stream mapping:
   Stream #0:0 -> #0:0 (png -> msmpeg4)
 Press [q] to stop, [?] for help

 Program received signal SIGSEGV, Segmentation fault.
 get_rl_index (level=1, run=0, last=0, rl=0xe44c58) at libavcodec/rl.h:78
 78          index = rl->index_run[last][run];
 (gdb) disass $pc-32,$pc+32
 Dump of assembler code for function get_rl_index:
 0x00000000007c6d6a <get_rl_index+0>:    lea    0x4(%r12),%rcx
 0x00000000007c6d6f <get_rl_index+5>:    mov    (%r9),%ebp
 0x00000000007c6d72 <get_rl_index+8>:    mov    (%r9,%rcx,8),%rcx
 0x00000000007c6d76 <get_rl_index+12>:   mov    %ebp,%r13d
 0x00000000007c6d79 <get_rl_index+15>:   movzbl (%rcx,%r14,1),%ecx
 0x00000000007c6d7e <get_rl_index+20>:   cmp    %ebp,%ecx
 0x00000000007c6d80 <get_rl_index+22>:   jge    0x7c6d9a
 <ff_msmpeg4_encode_block+666>
 0x00000000007c6d82 <get_rl_index+24>:   lea    0x6(%r12),%rbx
 0x00000000007c6d87 <get_rl_index+29>:   lea    -0x1(%rsi,%rcx,1),%ecx
 0x00000000007c6d8b <get_rl_index+33>:   mov    (%r9,%rbx,8),%rbx
 0x00000000007c6d8f <get_rl_index+37>:   movsbl (%rbx,%r14,1),%ebx
 0x00000000007c6d94 <get_rl_index+42>:   cmp    %ebx,%esi
 0x00000000007c6d96 <get_rl_index+44>:   cmovle %ecx,%r13d
 End of assembler dump.
 (gdb) info registers
 rax            0x1      1
 rbx            0x1459bb0        21339056
 rcx            0x0      0
 rdx            0xffffffff       4294967295
 rsi            0x1      1
 rdi            0x13d3671        20788849
 rbp            0x3      0x3
 rsp            0x7ffffffee268   0x7ffffffee268
 r8             0x13d34e0        20788448
 r9             0xe44c58 14961752
 r10            0x0      0
 r11            0x82     130
 r12            0x0      0
 r13            0x3      3
 r14            0x0      0
 r15            0x41     65
 rip            0x7c6d79 0x7c6d79 <get_rl_index+15>
 eflags         0x10202  [ IF RF ]
 cs             0x33     51
 ss             0x2b     43
 ds             0x0      0
 es             0x0      0
 fs             0x0      0
 gs             0x0      0
 fctrl          0x37f    895
 fstat          0x0      0
 ftag           0xaaaa   43690
 fiseg          0x0      0
 fioff          0x0      0
 foseg          0x0      0
 fooff          0x0      0
 fop            0x0      0
 mxcsr          0x1fa0   [ PE IM DM ZM OM UM PM ]
 }}}

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


More information about the FFmpeg-trac mailing list