#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): Hi there Ok, compiled "--prefix=/usr --enable-small" and ffmpeg segfaults, so not just ffplay. {{{ 19032010.mp4 batchrename hottest-guitar-lessons-i-have-ever-seen.wmv "Judas Priest - Breaking The Law".320x240.mp4 narwhals.mp4 nvid testvid "The Angels (Angel City)-Marseilles".320x240.mp4 "The Angels - Dogs Are Talking".640x360.mp4 "The Angels - Let The Night Roll On".640x360.mp4 "The Angels - No Secrets (1980)".640x360.mp4 vid whoisit.amv Who Is It.WMV # ffmpeg -i '"The Angels (Angel City)-Marseilles".320x240.mp4' Marseilles.avi ffmpeg version 0.8.2, Copyright (c) 2000-2011 the FFmpeg developers built on Aug 14 2011 10:08:33 with gcc 4.5.2 configuration: --prefix=/usr --enable-small 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 Seems stream 1 codec frame rate differs from container frame rate: 50000.00 (50000/1) -> 25.00 (25/1) Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '"The Angels (Angel City)-Marseilles".320x240.mp4': Metadata: major_brand : mp42 minor_version : 0 compatible_brands: isomavc1mp42 creation_time : 2008-04-26 03:38:37 Duration: 00:07:44.00, start: 0.000000, bitrate: 359 kb/s Stream #0.0(und): Audio: aac, 44100 Hz, stereo, s16, 125 kb/s Metadata: creation_time : 2008-04-26 03:38:37 Stream #0.1(und): Video: h264, yuv420p, 320x240 [PAR 1:1 DAR 4:3], 231 kb/s, 25 fps, 25 tbr, 25k tbn, 50k tbc Metadata: creation_time : 2008-04-26 03:38:37 Segmentation fault # 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/>... Reading symbols from /usr/bin/ffmpeg_g...done. (gdb) r -i '"The Angels (Angel City)-Marseilles".320x240.mp4' Marseilles.avi Starting program: /usr/bin/ffmpeg_g -i '"The Angels (Angel City)-Marseilles".320x240.mp4' Marseilles.avi [Thread debugging using libthread_db enabled] ffmpeg version 0.8.2, Copyright (c) 2000-2011 the FFmpeg developers built on Aug 14 2011 10:08:33 with gcc 4.5.2 configuration: --prefix=/usr --enable-small 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 Seems stream 1 codec frame rate differs from container frame rate: 50000.00 (50000/1) -> 25.00 (25/1) Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '"The Angels (Angel City)-Marseilles".320x240.mp4': Metadata: major_brand : mp42 minor_version : 0 compatible_brands: isomavc1mp42 creation_time : 2008-04-26 03:38:37 Duration: 00:07:44.00, start: 0.000000, bitrate: 359 kb/s Stream #0.0(und): Audio: aac, 44100 Hz, stereo, s16, 125 kb/s Metadata: creation_time : 2008-04-26 03:38:37 Stream #0.1(und): Video: h264, yuv420p, 320x240 [PAR 1:1 DAR 4:3], 231 kb/s, 25 fps, 25 tbr, 25k tbn, 50k tbc Metadata: creation_time : 2008-04-26 03:38:37 File 'Marseilles.avi' already exists. Overwrite ? [y/N] y Program received signal SIGSEGV, Segmentation fault. 0xb7d3bb87 in strcmp () from /lib/libc.so.6 (gdb) bt #0 0xb7d3bb87 in strcmp () from /lib/libc.so.6 #1 0x080819a7 in avfilter_get_by_name (name=0x8312b17 "buffer") at libavfilter/avfilter.c:638 #2 0x0807a620 in configure_video_filters (nb_output_files=1, input_files=0x8965408, nb_input_files=1, stream_maps=0x0, nb_stream_maps=0, output_files=0x8450a88) at ffmpeg.c:384 #3 transcode (nb_output_files=1, input_files=0x8965408, nb_input_files=1, stream_maps=0x0, nb_stream_maps=0, output_files=0x8450a88) at ffmpeg.c:2340 #4 0x0807c075 in main (argc=<value optimized out>, argv=<value optimized out>) at ffmpeg.c:4583 (gdb) disass $pc-32,$pc+32 Dump of assembler code from 0xb7d3bb67 to 0xb7d3bba7: 0xb7d3bb67: nop 0xb7d3bb68: nop 0xb7d3bb69: nop 0xb7d3bb6a: nop 0xb7d3bb6b: nop 0xb7d3bb6c: nop 0xb7d3bb6d: nop 0xb7d3bb6e: nop 0xb7d3bb6f: nop 0xb7d3bb70 <strcmp+0>: push %ebp 0xb7d3bb71 <strcmp+1>: xor %eax,%eax 0xb7d3bb73 <strcmp+3>: mov %esp,%ebp 0xb7d3bb75 <strcmp+5>: push %edi 0xb7d3bb76 <strcmp+6>: mov 0x8(%ebp),%edi 0xb7d3bb79 <strcmp+9>: push %esi 0xb7d3bb7a <strcmp+10>: mov 0xc(%ebp),%esi 0xb7d3bb7d <strcmp+13>: jmp 0xb7d3bb87 <strcmp+23> 0xb7d3bb7f <strcmp+15>: nop 0xb7d3bb80 <strcmp+16>: add $0x1,%eax 0xb7d3bb83 <strcmp+19>: cmp %cl,%dl 0xb7d3bb85 <strcmp+21>: jne 0xb7d3bba0 <strcmp+48> => 0xb7d3bb87 <strcmp+23>: movzbl (%edi,%eax,1),%edx ---Type <return> to continue, or q <return> to quit--- 0xb7d3bb8b <strcmp+27>: movzbl (%esi,%eax,1),%ecx 0xb7d3bb8f <strcmp+31>: test %dl,%dl 0xb7d3bb91 <strcmp+33>: jne 0xb7d3bb80 <strcmp+16> 0xb7d3bb93 <strcmp+35>: movzbl %cl,%eax 0xb7d3bb96 <strcmp+38>: neg %eax 0xb7d3bb98 <strcmp+40>: pop %esi 0xb7d3bb99 <strcmp+41>: pop %edi 0xb7d3bb9a <strcmp+42>: pop %ebp 0xb7d3bb9b <strcmp+43>: ret 0xb7d3bb9c <strcmp+44>: lea 0x0(%esi,%eiz,1),%esi 0xb7d3bba0 <strcmp+48>: movzbl %dl,%eax 0xb7d3bba3 <strcmp+51>: movzbl %cl,%ecx 0xb7d3bba6 <strcmp+54>: sub %ecx,%eax End of assembler dump. (gdb) info all-registers eax 0x0 0 ecx 0x62 98 edx 0x68 104 ebx 0x843f4cc 138671308 esp 0xbfffe880 0xbfffe880 ebp 0xbfffe888 0xbfffe888 esi 0x8312b17 137440023 edi 0x0 0 eip 0xb7d3bb87 0xb7d3bb87 <strcmp+23> eflags 0x210246 [ PF ZF IF RF ID ] cs 0x73 115 ss 0x7b 123 ds 0x7b 123 es 0x7b 123 fs 0x0 0 gs 0x33 51 st0 -nan(0x7e7e7e7e7e7e7e7e) (raw 0xffff7e7e7e7e7e7e7e7e) st1 -nan(0x7e7e7e7e7e7e7e7e) (raw 0xffff7e7e7e7e7e7e7e7e) st2 -nan(0x7e7f808182838384) (raw 0xffff7e7f808182838384) st3 -2147483648 (raw 0xc01e8000000000000000) st4 123456 (raw 0x400ff120000000000000) st5 123456 (raw 0x400ff120000000000000) st6 0.00099999999999999999995849538558453928 (raw 0x3ff583126e978d4fd---Type <return> to continue, or q <return> to quit--- f3b) st7 0.040000000000000000832667268468867405 (raw 0x3ffaa3d70a3d70a3d800) fctrl 0x37f 895 fstat 0x120 288 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 = {0x23, 0x23, 0x20, 0x17, 0x10 <repeats 12 times>}, v8_int16 = { 0x2323, 0x1720, 0x1010, 0x1010, 0x1010, 0x1010, 0x1010, 0x1010}, v4_int32 = {0x17202323, 0x10101010, 0x10101010, 0x10101010}, v2_int64 = { 0x1010101017202323, 0x1010101010101010}, uint128 = 0x10101010101010101010101017202323} xmm1 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x23, 0x23, 0x20, 0x17, 0x10 <repeats 12 times>}, v8_int16 = { 0x2323, 0x1720, 0x1010, 0x1010, 0x1010, 0x1010, 0x1010, 0x1010}, v4_int32 = {0x17202323, 0x10101010, 0x10101010, 0x10101010}, v2_int64 = { 0x1010101017202323, 0x1010101010101010}, uint128 = 0x10101010101010101010101017202323} ---Type <return> to continue, or q <return> to quit--- xmm2 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x23, 0x23, 0x20, 0x17, 0x10 <repeats 12 times>}, v8_int16 = { 0x2323, 0x1720, 0x1010, 0x1010, 0x1010, 0x1010, 0x1010, 0x1010}, v4_int32 = {0x17202323, 0x10101010, 0x10101010, 0x10101010}, v2_int64 = { 0x1010101017202323, 0x1010101010101010}, uint128 = 0x10101010101010101010101017202323} 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 = {0x80 <repeats 16 times>}, v8_int16 = {0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080}, v4_int32 = {0x80808080, 0x80808080, 0x80808080, 0x80808080}, v2_int64 = {0x8080808080808080, 0x8080808080808080}, uint128 = 0x80808080808080808080808080808080} 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} ---Type <return> to continue, or q <return> to quit--- xmm7 {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0}, v16_int8 = {0x4 <repeats 16 times>}, v8_int16 = {0x404, 0x404, 0x404, 0x404, 0x404, 0x404, 0x404, 0x404}, v4_int32 = {0x4040404, 0x4040404, 0x4040404, 0x4040404}, v2_int64 = {0x404040404040404, 0x404040404040404}, uint128 = 0x04040404040404040404040404040404} mxcsr 0x1f80 [ IM DM ZM OM UM PM ] mm0 {uint64 = 0x7e7e7e7e7e7e7e7e, v2_int32 = {0x7e7e7e7e, 0x7e7e7e7e}, v4_int16 = {0x7e7e, 0x7e7e, 0x7e7e, 0x7e7e}, v8_int8 = {0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e}} mm1 {uint64 = 0x7e7e7e7e7e7e7e7e, v2_int32 = {0x7e7e7e7e, 0x7e7e7e7e}, v4_int16 = {0x7e7e, 0x7e7e, 0x7e7e, 0x7e7e}, v8_int8 = {0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e, 0x7e}} mm2 {uint64 = 0x7e7f808182838384, v2_int32 = {0x82838384, 0x7e7f8081}, v4_int16 = {0x8384, 0x8283, 0x8081, 0x7e7f}, v8_int8 = {0x84, 0x83, 0x83, 0x82, 0x81, 0x80, 0x7f, 0x7e}} mm3 {uint64 = 0x8000000000000000, v2_int32 = {0x0, 0x80000000}, v4_int16 = {0x0, 0x0, 0x0, 0x8000}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x80}} mm4 {uint64 = 0xf120000000000000, v2_int32 = {0x0, 0xf1200000}, v4_int16 = {0x0, 0x0, 0x0, 0xf120}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x20, 0xf1}} mm5 {uint64 = 0xf120000000000000, v2_int32 = {0x0, 0xf1200000}, v4_int16 = {0x0, 0x0, 0x0, 0xf120}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, ---Type <return> to continue, or q <return> to quit--- 0x20, 0xf1}} mm6 {uint64 = 0x83126e978d4fdf3b, v2_int32 = {0x8d4fdf3b, 0x83126e97}, v4_int16 = {0xdf3b, 0x8d4f, 0x6e97, 0x8312}, v8_int8 = {0x3b, 0xdf, 0x4f, 0x8d, 0x97, 0x6e, 0x12, 0x83}} mm7 {uint64 = 0xa3d70a3d70a3d800, v2_int32 = {0x70a3d800, 0xa3d70a3d}, v4_int16 = {0xd800, 0x70a3, 0xa3d, 0xa3d7}, v8_int8 = {0x0, 0xd8, 0xa3, 0x70, 0x3d, 0xa, 0xd7, 0xa3}} (gdb) }}} Hope this helps Regards Michael Amadio -- Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/392#comment:4> FFmpeg <http://ffmpeg.org> FFmpeg issue tracker _______________________________________________ FFmpeg-trac mailing list FFmpeg-trac@avcodec.org http://avcodec.org/mailman/listinfo/ffmpeg-trac