#392: ffplay segfaults trying any video format ----------------------------+--------------------------- Reporter: 01micko | Owner: michael Type: defect | Status: open Priority: normal | Component: undetermined Version: unspecified | Resolution: Keywords: segfault, video | Blocked By: Blocking: | Reproduced: 0 Analyzed: 0 | ----------------------------+---------------------------
Comment (by 01micko): Replying to [ticket:392 01micko]: > 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 Ok, if I just use "--prefix=/usr" it works but I have massive binaries. Inefficient I feel. Similar compile options have been used successfully in the 0.7 and 0.6 series. Thanks -- Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/392#comment:2> FFmpeg <http://ffmpeg.org> FFmpeg issue tracker _______________________________________________ FFmpeg-trac mailing list FFmpeg-trac@avcodec.org http://avcodec.org/mailman/listinfo/ffmpeg-trac