[FFmpeg-trac] #392(FFplay:new): ffplay segfaults trying any video format

FFmpeg trac at avcodec.org
Fri Aug 12 01:23:41 CEST 2011


#392: ffplay segfaults trying any video format
--------------------------+-----------------------------
  Reporter:  01micko      |      Owner:  michael
      Type:  defect       |     Status:  new
  Priority:  normal       |  Component:  FFplay
   Version:  unspecified  |   Keywords:  segfault, video
Blocked By:               |   Blocking:
Reproduced:  1            |   Analyzed:  0
--------------------------+-----------------------------
 This is using 0.8.2. Any video format, trying to play with ffplay it
 almost starts then segfaults.
 This is in Puppylinux built using Slackware-13.37 libraries.
 This behaviour occurs in 0.8 and 0.8.1

 {{{
 # ffplay movie2.3gp
 ffplay version 0.8.2, Copyright (c) 2003-2011 the FFmpeg developers
   built on Aug 12 2011 08:52:43 with gcc 4.5.2
   configuration: --prefix=/usr --cpu=i686 --enable-libmp3lame --enable-
 libx264 --enable-libfaac --enable-pthreads --enable-small --enable-
 postproc --enable-libvorbis --enable-gpl --enable-shared --enable-nonfree
 --enable-libopencore-amrnb --enable-libopencore-amrwb --disable-debug
 --enable-bzlib --enable-zlib --enable-libspeex --enable-version3 --enable-
 runtime-cpudetect --enable-x11grab --enable-libdc1394 --enable-
 libschroedinger --enable-libtheora --enable-libxvid --enable-swscale
 --enable-libvpx
   libavutil    51.  9. 1 / 51.  9. 1
   libavcodec   53.  7. 0 / 53.  7. 0
   libavformat  53.  4. 0 / 53.  4. 0
   libavdevice  53.  1. 1 / 53.  1. 1
   libavfilter   2. 23. 0 /  2. 23. 0
   libswscale    2.  0. 0 /  2.  0. 0
   libpostproc  51.  2. 0 / 51.  2. 0
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'movie2.3gp':
   Metadata:
     major_brand     : 3gp4
     minor_version   : 512
     compatible_brands: isomiso23gp4
     creation_time   : 1970-01-01 00:00:00
   Duration: 00:05:43.21, start: 0.000000, bitrate: 214 kb/s
     Stream #0.0(eng): Video: h263, yuv420p, 176x144 [PAR 12:11 DAR 4:3],
 205 kb/s, 25.02 fps, 25.02 tbr, 1001 tbn, 29.97 tbc
     Metadata:
       creation_time   : 1970-01-01 00:00:00
     Stream #0.1(eng): Audio: amrnb, 8000 Hz, 1 channels, flt, 6 kb/s
     Metadata:
       creation_time   : 1970-01-01 00:00:00
 Segmentation fault03638.330 s:0.0 aq=  320KB vq= 2114KB sq=    0B f=0/0
 # gdb ffmpeg_g
 GNU gdb (GDB) 7.2
 Copyright (C) 2010 Free Software Foundation, Inc.
 License GPLv3+: GNU GPL version 3 or later
 <http://gnu.org/licenses/gpl.html>
 This is free software: you are free to change and redistribute it.
 There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
 and "show warranty" for details.
 This GDB was configured as "i486-slackware-linux".
 For bug reporting instructions, please see:
 <http://www.gnu.org/software/gdb/bugs/>...
 ffmpeg_g: No such file or directory.
 (gdb) q
 # ffplay_g movie2.3gp
 ffplay version 0.8.2, Copyright (c) 2003-2011 the FFmpeg developers
   built on Aug 12 2011 08:52:43 with gcc 4.5.2
   configuration: --prefix=/usr --cpu=i686 --enable-libmp3lame --enable-
 libx264 --enable-libfaac --enable-pthreads --enable-small --enable-
 postproc --enable-libvorbis --enable-gpl --enable-shared --enable-nonfree
 --enable-libopencore-amrnb --enable-libopencore-amrwb --disable-debug
 --enable-bzlib --enable-zlib --enable-libspeex --enable-version3 --enable-
 runtime-cpudetect --enable-x11grab --enable-libdc1394 --enable-
 libschroedinger --enable-libtheora --enable-libxvid --enable-swscale
 --enable-libvpx
   libavutil    51.  9. 1 / 51.  9. 1
   libavcodec   53.  7. 0 / 53.  7. 0
   libavformat  53.  4. 0 / 53.  4. 0
   libavdevice  53.  1. 1 / 53.  1. 1
   libavfilter   2. 23. 0 /  2. 23. 0
   libswscale    2.  0. 0 /  2.  0. 0
   libpostproc  51.  2. 0 / 51.  2. 0
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'movie2.3gp':
   Metadata:
     major_brand     : 3gp4
     minor_version   : 512
     compatible_brands: isomiso23gp4
     creation_time   : 1970-01-01 00:00:00
   Duration: 00:05:43.21, start: 0.000000, bitrate: 214 kb/s
     Stream #0.0(eng): Video: h263, yuv420p, 176x144 [PAR 12:11 DAR 4:3],
 205 kb/s, 25.02 fps, 25.02 tbr, 1001 tbn, 29.97 tbc
     Metadata:
       creation_time   : 1970-01-01 00:00:00
     Stream #0.1(eng): Audio: amrnb, 8000 Hz, 1 channels, flt, 6 kb/s
     Metadata:
       creation_time   : 1970-01-01 00:00:00
 Segmentation fault03899.247 s:0.0 aq=  320KB vq= 2114KB sq=    0B f=0/0
 # gdb ffplay_g movie2.3gp
 GNU gdb (GDB) 7.2
 Copyright (C) 2010 Free Software Foundation, Inc.
 License GPLv3+: GNU GPL version 3 or later
 <http://gnu.org/licenses/gpl.html>
 This is free software: you are free to change and redistribute it.
 There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
 and "show warranty" for details.
 This GDB was configured as "i486-slackware-linux".
 For bug reporting instructions, please see:
 <http://www.gnu.org/software/gdb/bugs/>...
 Reading symbols from /usr/sbin/ffplay_g...done.
 "/mnt/sdb7/0video/nvid/movie2.3gp" is not a core dump: File format not
 recognized
 (gdb) r ffplay_g movie2.3gp
 Starting program: /usr/sbin/ffplay_g ffplay_g movie2.3gp
 [Thread debugging using libthread_db enabled]
 ffplay version 0.8.2, Copyright (c) 2003-2011 the FFmpeg developers
   built on Aug 12 2011 08:52:43 with gcc 4.5.2
   configuration: --prefix=/usr --cpu=i686 --enable-libmp3lame --enable-
 libx264 --enable-libfaac --enable-pthreads --enable-small --enable-
 postproc --enable-libvorbis --enable-gpl --enable-shared --enable-nonfree
 --enable-libopencore-amrnb --enable-libopencore-amrwb --disable-debug
 --enable-bzlib --enable-zlib --enable-libspeex --enable-version3 --enable-
 runtime-cpudetect --enable-x11grab --enable-libdc1394 --enable-
 libschroedinger --enable-libtheora --enable-libxvid --enable-swscale
 --enable-libvpx
   libavutil    51.  9. 1 / 51.  9. 1
   libavcodec   53.  7. 0 / 53.  7. 0
   libavformat  53.  4. 0 / 53.  4. 0
   libavdevice  53.  1. 1 / 53.  1. 1
   libavfilter   2. 23. 0 /  2. 23. 0
   libswscale    2.  0. 0 /  2.  0. 0
   libpostproc  51.  2. 0 / 51.  2. 0
 Argument 'movie2.3gp' provided as input filename, but 'ffplay_g' was
 already specified.

 Program exited with code 01.
 (gdb) r movie2.3gp
 Starting program: /usr/sbin/ffplay_g movie2.3gp
 [Thread debugging using libthread_db enabled]
 ffplay version 0.8.2, Copyright (c) 2003-2011 the FFmpeg developers
   built on Aug 12 2011 08:52:43 with gcc 4.5.2
   configuration: --prefix=/usr --cpu=i686 --enable-libmp3lame --enable-
 libx264 --enable-libfaac --enable-pthreads --enable-small --enable-
 postproc --enable-libvorbis --enable-gpl --enable-shared --enable-nonfree
 --enable-libopencore-amrnb --enable-libopencore-amrwb --disable-debug
 --enable-bzlib --enable-zlib --enable-libspeex --enable-version3 --enable-
 runtime-cpudetect --enable-x11grab --enable-libdc1394 --enable-
 libschroedinger --enable-libtheora --enable-libxvid --enable-swscale
 --enable-libvpx
   libavutil    51.  9. 1 / 51.  9. 1
   libavcodec   53.  7. 0 / 53.  7. 0
   libavformat  53.  4. 0 / 53.  4. 0
   libavdevice  53.  1. 1 / 53.  1. 1
   libavfilter   2. 23. 0 /  2. 23. 0
   libswscale    2.  0. 0 /  2.  0. 0
   libpostproc  51.  2. 0 / 51.  2. 0
 [New Thread 0xb6902b70 (LWP 1465)]
 [New Thread 0xb5f22b70 (LWP 1466)]
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'movie2.3gp':
   Metadata:
     major_brand     : 3gp4
     minor_version   : 512
     compatible_brands: isomiso23gp4
     creation_time   : 1970-01-01 00:00:00
   Duration: 00:05:43.21, start: 0.000000, bitrate: 214 kb/s
     Stream #0.0(eng): Video: h263, yuv420p, 176x144 [PAR 12:11 DAR 4:3],
 205 kb/s, 25.02 fps, 25.02 tbr, 1001 tbn, 29.97 tbc
     Metadata:
       creation_time   : 1970-01-01 00:00:00
     Stream #0.1(eng): Audio: amrnb, 8000 Hz, 1 channels, flt, 6 kb/s
     Metadata:
       creation_time   : 1970-01-01 00:00:00
 [New Thread 0xb5657b70 (LWP 1467)]
 [New Thread 0xb4e57b70 (LWP 1468)]
 [New Thread 0xb4657b70 (LWP 1469)]

 Program received signal SIGSEGV, Segmentation fault.
 [Switching to Thread 0xb4e57b70 (LWP 1468)]
 0xb7353b87 in strcmp () from /lib/libc.so.6
 (gdb) bt
 #0  0xb7353b87 in strcmp () from /lib/libc.so.6
 #1  0xb7f9e0a1 in avfilter_get_by_name () from /usr/lib/libavfilter.so.2
 #2  0x00000006 in ?? ()
 #3  0x00000006 in ?? ()
 #4  0x080bbda0 in ?? ()
 #5  0x080c4eb8 in ?? ()
 Backtrace stopped: previous frame inner to this frame (corrupt stack?)
 (gdb) disass $pc-32,$pc+32
 Dump of assembler code from 0xb7353b67 to 0xb7353ba7:
    0xb7353b67:  nop
    0xb7353b68:  nop
    0xb7353b69:  nop
    0xb7353b6a:  nop
    0xb7353b6b:  nop
    0xb7353b6c:  nop
    0xb7353b6d:  nop
    0xb7353b6e:  nop
    0xb7353b6f:  nop
    0xb7353b70 <strcmp+0>:       push   %ebp
    0xb7353b71 <strcmp+1>:       xor    %eax,%eax
    0xb7353b73 <strcmp+3>:       mov    %esp,%ebp
    0xb7353b75 <strcmp+5>:       push   %edi
    0xb7353b76 <strcmp+6>:       mov    0x8(%ebp),%edi
    0xb7353b79 <strcmp+9>:       push   %esi
    0xb7353b7a <strcmp+10>:      mov    0xc(%ebp),%esi
    0xb7353b7d <strcmp+13>:      jmp    0xb7353b87 <strcmp+23>
    0xb7353b7f <strcmp+15>:      nop
    0xb7353b80 <strcmp+16>:      add    $0x1,%eax
    0xb7353b83 <strcmp+19>:      cmp    %cl,%dl
    0xb7353b85 <strcmp+21>:      jne    0xb7353ba0 <strcmp+48>
 => 0xb7353b87 <strcmp+23>:      movzbl (%edi,%eax,1),%edx
 ---Type <return> to continue, or q <return> to quit---
    0xb7353b8b <strcmp+27>:      movzbl (%esi,%eax,1),%ecx
    0xb7353b8f <strcmp+31>:      test   %dl,%dl
    0xb7353b91 <strcmp+33>:      jne    0xb7353b80 <strcmp+16>
    0xb7353b93 <strcmp+35>:      movzbl %cl,%eax
    0xb7353b96 <strcmp+38>:      neg    %eax
    0xb7353b98 <strcmp+40>:      pop    %esi
    0xb7353b99 <strcmp+41>:      pop    %edi
    0xb7353b9a <strcmp+42>:      pop    %ebp
    0xb7353b9b <strcmp+43>:      ret
    0xb7353b9c <strcmp+44>:      lea    0x0(%esi,%eiz,1),%esi
    0xb7353ba0 <strcmp+48>:      movzbl %dl,%eax
    0xb7353ba3 <strcmp+51>:      movzbl %cl,%ecx
    0xb7353ba6 <strcmp+54>:      sub    %ecx,%eax
 End of assembler dump.
 (gdb) info all-registers
 eax            0x0      0
 ecx            0x62     98
 edx            0x68     104
 ebx            0xb7fce2a0       -1208163680
 esp            0xb4e57180       0xb4e57180
 ebp            0xb4e57188       0xb4e57188
 esi            0x8052634        134555188
 edi            0x0      0
 eip            0xb7353b87       0xb7353b87 <strcmp+23>
 eflags         0x10246  [ PF ZF IF RF ]
 cs             0x73     115
 ss             0x7b     123
 ds             0x7b     123
 es             0x7b     123
 fs             0x0      0
 gs             0x33     51
 st0            -nan(0x8080808080808080) (raw 0xffff8080808080808080)
 st1            -nan(0x80008000800080)   (raw 0xffff0080008000800080)
 st2            0.00430206954479217529296875     (raw
 0x3ff78cf8600000000000)
 st3            0.024543692606170257163581598439106024   (raw
 0x3ff9c90fdaa22168bc6a)
 st4            0.357096850872039794921875       (raw
 0x3ffdb6d5660000000000)
 st5            4000     (raw 0x400afa00000000000000)
 ---Type <return> to continue, or q <return> to quit---
 st6            8000     (raw 0x400bfa00000000000000)
 st7            0.25599999999999999998937481870964206    (raw
 0x3ffd83126e978d4fdf3b)
 fctrl          0x37f    895
 fstat          0x4220   16928
 ftag           0xffff   65535
 fiseg          0x0      0
 fioff          0x0      0
 foseg          0x0      0
 fooff          0x0      0
 fop            0x0      0
 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   [ IM DM ZM OM UM PM ]
 mm0            {uint64 = 0x8080808080808080, v2_int32 = {0x80808080,
     0x80808080}, v4_int16 = {0x8080, 0x8080, 0x8080, 0x8080}, v8_int8 =
 {0x80,
 ---Type <return> to continue, or q <return> to quit---
     0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80}}
 mm1            {uint64 = 0x80008000800080, v2_int32 = {0x800080,
 0x800080},
   v4_int16 = {0x80, 0x80, 0x80, 0x80}, v8_int8 = {0x80, 0x0, 0x80, 0x0,
 0x80,
     0x0, 0x80, 0x0}}
 mm2            {uint64 = 0x8cf8600000000000, v2_int32 = {0x0, 0x8cf86000},
   v4_int16 = {0x0, 0x0, 0x6000, 0x8cf8}, v8_int8 = {0x0, 0x0, 0x0, 0x0,
 0x0,
     0x60, 0xf8, 0x8c}}
 mm3            {uint64 = 0xc90fdaa22168bc6a, v2_int32 = {0x2168bc6a,
     0xc90fdaa2}, v4_int16 = {0xbc6a, 0x2168, 0xdaa2, 0xc90f}, v8_int8 =
 {0x6a,
     0xbc, 0x68, 0x21, 0xa2, 0xda, 0xf, 0xc9}}
 mm4            {uint64 = 0xb6d5660000000000, v2_int32 = {0x0, 0xb6d56600},
   v4_int16 = {0x0, 0x0, 0x6600, 0xb6d5}, v8_int8 = {0x0, 0x0, 0x0, 0x0,
 0x0,
     0x66, 0xd5, 0xb6}}
 mm5            {uint64 = 0xfa00000000000000, v2_int32 = {0x0, 0xfa000000},
   v4_int16 = {0x0, 0x0, 0x0, 0xfa00}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0,
 0x0,
     0x0, 0xfa}}
 mm6            {uint64 = 0xfa00000000000000, v2_int32 = {0x0, 0xfa000000},
   v4_int16 = {0x0, 0x0, 0x0, 0xfa00}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0,
 0x0,
     0x0, 0xfa}}
 mm7            {uint64 = 0x83126e978d4fdf3b, v2_int32 = {0x8d4fdf3b,
     0x83126e97}, v4_int16 = {0xdf3b, 0x8d4f, 0x6e97, 0x8312}, v8_int8 =
 {0x3b,
     0xdf, 0x4f, 0x8d, 0x97, 0x6e, 0x12, 0x83}}
 (gdb)

 }}}

 Thank you

-- 
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/392>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list