[Ffmpeg-devel] SVN 6723 of ffmpeg segfaults :(

Tanim Islam tanim.islam
Tue Oct 17 20:39:59 CEST 2006


Hi:

I have compiled ffmpeg on Ubuntu 5.10, using gcc (GCC) 4.0.3 20051121
(prerelease) (Ubuntu 4.0.2-4ubuntu3). I compile with the following flags:

--enable-mp3lame --enable-libogg --enable-vorbis --enable-faad --enable-faac
--enable-xvid --enable-x264 --enable-a52 --disable-static --enable-shared
--enable-gpl --enable-dts --prefix=$(HOME)/apps --disable-strip
--enable-pthreads --disable-ffserver --enable-libgsm

I run the following command:

ffmpeg -i file.flv -vcodec mpeg4 -b 512 -acodec mp3 -ar 44100 -ac 2 -ab 64
-y file.avi

The program segfaults. Here is 1) the backtrace:

(gdb) bt
#0  0x0804cf83 in parse_arg_file (filename=0xbf86d364 "file.avi")
    at ffmpeg.c:3200
#1  0x08057afd in parse_options (argc=-1081684700, argv=0xbf86ccb0,
    options=0xbf86cc98) at cmdutils.c:104
#2  0x0805585c in main (argc=15, argv=0xbf86cd24) at ffmpeg.c:3959

2) the output of "disass $pc-32 $pc+32":

(gdb) disass $pc-32 $pc+32
Dump of assembler code from 0x804cf63 to 0x804cfa3:
0x0804cf63 <parse_arg_file+1059>:       add    %al,(%eax)
0x0804cf65 <parse_arg_file+1061>:       add    %dl,0x56(%eax)
0x0804cf68 <parse_arg_file+1064>:       mov    0x805c804,%eax
0x0804cf6d <parse_arg_file+1069>:       mov    (%eax,%edi,1),%eax
0x0804cf70 <parse_arg_file+1072>:       push   %eax
0x0804cf71 <parse_arg_file+1073>:       mov    0x805d450,%eax
0x0804cf76 <parse_arg_file+1078>:       push   %eax
0x0804cf77 <parse_arg_file+1079>:       call   0x804a5e0
<av_destruct_packet_nofree+16>
0x0804cf7c <parse_arg_file+1084>:       add    $0x10,%esp
0x0804cf7f <parse_arg_file+1087>:       mov    0x54(%esp),%eax
0x0804cf83 <parse_arg_file+1091>:       testb  $0x1,0x28(%eax)
0x0804cf87 <parse_arg_file+1095>:       je     0x804cf50
<parse_arg_file+1040>
0x0804cf89 <parse_arg_file+1097>:       sub    $0x8,%esp
0x0804cf8c <parse_arg_file+1100>:       fstpl  (%esp)
0x0804cf8f <parse_arg_file+1103>:       mov    0x805c804,%eax
0x0804cf94 <parse_arg_file+1108>:       mov    (%eax,%edi,1),%ecx
0x0804cf97 <parse_arg_file+1111>:       push   %ecx
0x0804cf98 <parse_arg_file+1112>:       push   %ebp
0x0804cf99 <parse_arg_file+1113>:       call   0x804a4c0
<av_destruct_packet+608>
---Type <return> to continue, or q <return> to quit---
0x0804cf9e <parse_arg_file+1118>:       add    $0x10,%esp
0x0804cfa1 <parse_arg_file+1121>:       jmp    0x804cf52
<parse_arg_file+1042>
End of assembler dump.

3) the output of "info all-registers"

(gdb) info all-registers
eax            0x4      4
ecx            0xffffffff       -1
edx            0x3ff00000       1072693248
ebx            0x0      0
esp            0xbf86cab0       0xbf86cab0
ebp            0x806c0c0        0x806c0c0
esi            0xbf86cb04       -1081685244
edi            0x0      0
eip            0x804cf83        0x804cf83
eflags         0x210282 2163330
cs             0x73     115
ss             0x7b     123
ds             0x7b     123
es             0x7b     123
fs             0x0      0
gs             0x33     51
st0            -nan(0xc000000000000000) (raw 0xffffc000000000000000)
st1            -nan(0x8585858585858585) (raw 0xffff8585858585858585)
st2            -nan(0x8585858585858585) (raw 0xffff8585858585858585)
st3            -nan(0x8585858585858585) (raw 0xffff8585858585858585)
st4            -nan(0x85008500850085)   (raw 0xffff0085008500850085)
st5            0        (raw 0x00000000000000000000)
st6            0        (raw 0x00000000000000000000)
st7            0        (raw 0x00000000000000000000)
fctrl          0x37f    895
fstat          0x3821   14369
ftag           0xbfff   49151
fiseg          0x73     115
fioff          0xb7b06977       -1213175433
foseg          0x7b     123
fooff          0xbf86ca80       -1081685376
fop            0x705    1797
xmm0           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
  v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
  uint128 = 0x00000000000000000000000000000000}
xmm1           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
  v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
  uint128 = 0x00000000000000000000000000000000}
xmm2           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
  v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
  uint128 = 0x00000000000000000000000000000000}
---Type <return> to continue, or q <return> to quit---
xmm3           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
  v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
  uint128 = 0x00000000000000000000000000000000}
xmm4           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
  v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
  uint128 = 0x00000000000000000000000000000000}
xmm5           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
  v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
  uint128 = 0x00000000000000000000000000000000}
xmm6           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
  v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
  uint128 = 0x00000000000000000000000000000000}
xmm7           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
  v16_int8 = {0x0 <repeats 16 times>}, v8_int16 = {0x0, 0x0, 0x0, 0x0, 0x0,
    0x0, 0x0, 0x0}, v4_int32 = {0x0, 0x0, 0x0, 0x0}, v2_int64 = {0x0, 0x0},
  uint128 = 0x00000000000000000000000000000000}
mxcsr          0x1f80   8064
mm0            {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0,
---Type <return> to continue, or q <return> to quit---
    0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm1            {uint64 = 0xc000000000000000, v2_int32 = {0x0, 0xc0000000},
  v4_int16 = {0x0, 0x0, 0x0, 0xc000}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0,
0x0,
    0x0, 0xc0}}
mm2            {uint64 = 0x8585858585858585, v2_int32 = {0x85858585,
    0x85858585}, v4_int16 = {0x8585, 0x8585, 0x8585, 0x8585}, v8_int8 =
{0x85,
    0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85}}
mm3            {uint64 = 0x8585858585858585, v2_int32 = {0x85858585,
    0x85858585}, v4_int16 = {0x8585, 0x8585, 0x8585, 0x8585}, v8_int8 =
{0x85,
    0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85}}
mm4            {uint64 = 0x8585858585858585, v2_int32 = {0x85858585,
    0x85858585}, v4_int16 = {0x8585, 0x8585, 0x8585, 0x8585}, v8_int8 =
{0x85,
    0x85, 0x85, 0x85, 0x85, 0x85, 0x85, 0x85}}
mm5            {uint64 = 0x85008500850085, v2_int32 = {0x850085, 0x850085},
  v4_int16 = {0x85, 0x85, 0x85, 0x85}, v8_int8 = {0x85, 0x0, 0x85, 0x0,
0x85,
    0x0, 0x85, 0x0}}
mm6            {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0,
    0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
mm7            {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0,
    0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}

Tanim Islam





More information about the ffmpeg-devel mailing list