[FFmpeg-trac] #594(undetermined:new): Combination of transpose, scale, pad filters results in segfault

FFmpeg trac at avcodec.org
Wed Oct 26 18:33:19 CEST 2011


#594: Combination of transpose, scale, pad filters results in segfault
--------------------------------+----------------------------------------
             Reporter:  ignat   |                    Owner:
                 Type:  defect  |                   Status:  new
             Priority:  normal  |                Component:  undetermined
              Version:  0.8.5   |               Resolution:
             Keywords:          |               Blocked By:
             Blocking:          |  Reproduced by developer:  0
Analyzed by developer:  0       |
--------------------------------+----------------------------------------

Comment (by ignat):

 Please find gdb output below:

 ignat at optiplex-755:~/Videos/rotation$ gdb ~/external_src/ffmpeg/ffmpeg_g
 GNU gdb (Ubuntu/Linaro 7.2-1ubuntu11) 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 "i686-linux-gnu".
 For bug reporting instructions, please see:
 <http://www.gnu.org/software/gdb/bugs/>...
 Reading symbols from /home/ignat/external_src/ffmpeg/ffmpeg_g...done.
 (gdb) r -v 9 -loglevel 99 -i rotate_x.mp4 -vcodec libx264 -r 20 -b 768k
 -bt 768k -vf transpose=3,scale=152:270,pad=480:270:164:0 -s 480x270 -an
 -preset medium -fastfirstpass 1 -profile baseline -pass 1 -passlogfile
 result.mp4.passlogfile -f rawvideo -y /dev/null
 Starting program: /home/ignat/external_src/ffmpeg/ffmpeg_g -v 9 -loglevel
 99 -i rotate_x.mp4 -vcodec libx264 -r 20 -b 768k -bt 768k -vf
 transpose=3,scale=152:270,pad=480:270:164:0 -s 480x270 -an -preset medium
 -fastfirstpass 1 -profile baseline -pass 1 -passlogfile
 result.mp4.passlogfile -f rawvideo -y /dev/null
 [Thread debugging using libthread_db enabled]
 ffmpeg version N-34062-g4416931, Copyright (c) 2000-2011 the FFmpeg
 developers
   built on Oct 26 2011 17:18:28 with gcc 4.5.2
   configuration: --prefix=/usr/local --enable-shared --enable-libx264
 --enable-libfaac --enable-gpl --enable-libmp3lame --enable-pthreads
 --enable-libfaac --enable-libopencore-amrnb --enable-libopencore-amrwb
 --disable-ffserver --disable-ffplay --enable-memalign-hack --disable-
 decoder=amrnb --enable-nonfree --enable-version3
   libavutil    51. 22. 0 / 51. 22. 0
   libavcodec   53. 23. 0 / 53. 23. 0
   libavformat  53. 17. 0 / 53. 17. 0
   libavdevice  53.  4. 0 / 53.  4. 0
   libavfilter   2. 45. 0 /  2. 45. 0
   libswscale    2.  1. 0 /  2.  1. 0
   libpostproc  51.  2. 0 / 51.  2. 0
 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x8068aa0] Format mov,mp4,m4a,3gp,3g2,mj2
 probed with size=2048 and score=100
 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x8068aa0] ISO: File Type Major Brand: 3gp4
 [aac @ 0x806ef00] err{or,}_recognition separate: 1; 1
 [aac @ 0x806ef00] err{or,}_recognition combined: 1; 1
 [aac @ 0x806ef00] Unsupported bit depth: 0
 [h264 @ 0x806fe40] err{or,}_recognition separate: 1; 1
 [h264 @ 0x806fe40] err{or,}_recognition combined: 1; 1
 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x8068aa0] All info found
 rfps: 29.333333 0.017250
     Last message repeated 1 times
 rfps: 29.416667 0.011961
 rfps: 29.500000 0.007650
 rfps: 29.583333 0.004317
 rfps: 29.666667 0.001963
 rfps: 29.750000 0.000586
 rfps: 29.833333 0.000187
 rfps: 29.916667 0.000766
 rfps: 30.000000 0.002323
     Last message repeated 1 times
 rfps: 30.083333 0.004858
     Last message repeated 1 times
 rfps: 30.166667 0.008372
     Last message repeated 1 times
 rfps: 30.250000 0.012863
     Last message repeated 1 times
 rfps: 30.333333 0.018332
     Last message repeated 1 times
 rfps: 59.166667 0.017269
 rfps: 59.250000 0.012071
 rfps: 59.333333 0.007850
 rfps: 59.416667 0.004607
 rfps: 59.500000 0.002343
 rfps: 59.583333 0.001056
 rfps: 59.666667 0.000747
 rfps: 59.750000 0.001417
 rfps: 59.833333 0.003064
 rfps: 59.916667 0.005690
     Last message repeated 1 times
 rfps: 29.970030 0.001651
     Last message repeated 1 times
 rfps: 59.940060 0.006602
     Last message repeated 1 times

 Seems stream 1 codec frame rate differs from container frame rate:
 60000.00 (60000/1) -> 29.83 (179/6)
 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'rotate_x.mp4':
   Metadata:
     major_brand     : 3gp4
     minor_version   : 768
     compatible_brands: 3gp43gp6
   Duration: 00:00:01.17, start: 0.000000, bitrate: 11299 kb/s
     Stream #0:0(eng), 1, 1/16000: Audio: aac (mp4a / 0x6134706D), 16000
 Hz, mono, s16, 27 kb/s
     Stream #0:1(eng), 27, 1/30000: Video: h264 (Baseline) (avc1 /
 0x31637661), yuv420p, 1280x720, 1/60000, 12667 kb/s, 28.85 fps, 29.83 tbr,
 30k tbn, 60k tbc
 Please use -b:a or -b:v, -b is ambiguous
 [buffer @ 0x8070da0] w:1280 h:720 pixfmt:yuv420p tb:1/1000000 sar:0/1
 sws_param:
 [scale @ 0x8070f80] w:1280 h:720 fmt:yuv420p -> w:480 h:270 fmt:yuv420p
 flags:0x4
 [transpose @ 0x806ad00] w:480 h:270 dir:3 -> w:270 h:480
 rotation:clockwise vflip:1
 [scale @ 0x806afa0] w:270 h:480 fmt:yuv420p -> w:152 h:270 fmt:yuv420p
 flags:0x4
 [pad @ 0x806b400] w:152 h:270 -> w:480 h:270 x:164 y:0
 color:0x108080FF[yuva]
 [libx264 @ 0x8069600] err{or,}_recognition separate: 1; 1
 [libx264 @ 0x8069600] err{or,}_recognition combined: 1; 1
 [libx264 @ 0x8069600] using mv_range_thread = 40
 [libx264 @ 0x8069600] using cpu capabilities: MMX2 SSE2Fast SSSE3 Cache64
 [New Thread 0xb69dab70 (LWP 7504)]
 [New Thread 0xb61d9b70 (LWP 7505)]
 [New Thread 0xb59d8b70 (LWP 7506)]
 [New Thread 0xb4cbeb70 (LWP 7507)]
 [libx264 @ 0x8069600] profile Constrained Baseline, level 2.1
 [h264 @ 0x806fe40] err{or,}_recognition separate: 1; 1
 [h264 @ 0x806fe40] err{or,}_recognition combined: 1; 1
 Output #0, rawvideo, to '/dev/null':
   Metadata:
     major_brand     : 3gp4
     minor_version   : 768
     compatible_brands: 3gp43gp6
     encoder         : Lavf53.17.0
     Stream #0:0(eng), 0, 1/90000: Video: h264, yuv420p, 480x270, 1/20,
 q=-1--1, pass 1, 768 kb/s, 90k tbn, 20 tbc
 Stream mapping:
   Stream #0.1 -> #0.0 (h264 -> libx264)
 Press [q] to stop, [?] for help

 Program received signal SIGSEGV, Segmentation fault.
 0xb7222217 in ?? () from /usr/local/lib/libswscale.so.2
 (gdb) bt
 #0  0xb7222217 in ?? () from /usr/local/lib/libswscale.so.2
 #1  0x00000000 in ?? ()
 (gdb) disass $pc-32,$pc+32
 Dump of assembler code from 0xb72221f7 to 0xb7222237:
    0xb72221f7:  pmulhw %xmm0,%xmm2
    0xb72221fb:  pmulhw %xmm0,%xmm5
    0xb72221ff:  paddw  %xmm2,%xmm3
    0xb7222203:  paddw  %xmm5,%xmm4
    0xb7222207:  jne    0xb72221e0
    0xb7222209:  psraw  $0x3,%xmm3
    0xb722220e:  psraw  $0x3,%xmm4
    0xb7222213:  packuswb %xmm4,%xmm3
 => 0xb7222217:  movntdq %xmm3,(%ebx,%ecx,1)
    0xb722221c:  add    $0x10,%ecx
    0xb722221f:  cmp    %eax,%ecx
    0xb7222221:  movdqa %xmm7,%xmm3
    0xb7222225:  movdqa %xmm7,%xmm4
    0xb7222229:  mov    0xc(%esp),%edx
    0xb722222d:  mov    (%edx),%esi
    0xb722222f:  jb     0xb72221e0
    0xb7222231:  mov    (%esp),%ebx
    0xb7222234:  mov    0x4(%esp),%esi
 End of assembler dump.
 (gdb) info all-registers
 eax            0x98     152
 ecx            0x0      0
 edx            0x8292ad8        136915672
 ebx            0x8b23864        145897572
 esp            0xbfffc684       0xbfffc684
 ebp            0x8293a58        0x8293a58
 esi            0x0      0
 edi            0x0      0
 eip            0xb7222217       0xb7222217
 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(0xa6a6a6a6a6a6a6a6) (raw 0xffffa6a6a6a6a6a6a6a6)
 st1            -nan(0xa6a6a6a6a6a6a6a6) (raw 0xffffa6a6a6a6a6a6a6a6)
 st2            -nan(0xa6a6a6a6a6a6a6a6) (raw 0xffffa6a6a6a6a6a6a6a6)
 st3            -nan(0xa6a6a6a6a6a6a6a6) (raw 0xffffa6a6a6a6a6a6a6a6)
 st4            -nan(0xa6a6a6a6a6a6a6a6) (raw 0xffffa6a6a6a6a6a6a6a6)
 st5            -nan(0xa6a6a6a6a6a6a6a6) (raw 0xffffa6a6a6a6a6a6a6a6)
 st6            -nan(0x20002000200020)   (raw 0xffff0020002000200020)
 st7            0        (raw 0x00000000000000000000)
 fctrl          0x37f    895
 fstat          0x20     32
 ftag           0xffff   65535
 fiseg          0x73     115
 fioff          0x80523c4        134554564
 foseg          0x7b     123
 fooff          0xbfffcdac       -1073754708
 fop            0x19c    412
 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,
 0x8000000000000000}, v16_int8 = {0x13, 0xc8, 0xfd, 0xff, 0x41, 0x95, 0x1f,
 0x0,
     0x27, 0xc7, 0xa, 0x0, 0x94, 0xfa, 0xfe, 0xff}, v8_int16 = {0xc813,
 0xfffd, 0x9541, 0x1f, 0xc727, 0xa, 0xfa94, 0xfffe}, v4_int32 =
 {0xfffdc813,
     0x1f9541, 0xac727, 0xfffefa94}, v2_int64 = {0x1f9541fffdc813,
 0xfffefa94000ac727}, uint128 = 0xfffefa94000ac727001f9541fffdc813}
 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}
 xmm3           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double =
 {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0x76, 0x75, 0x73,
 0x6c, 0x6d,
     0x76, 0x79, 0x79, 0x75, 0x74, 0x74, 0x72, 0x75, 0x75, 0x76, 0x74},
 v8_int16 = {0x7576, 0x6c73, 0x766d, 0x7979, 0x7475, 0x7274, 0x7575,
 0x7476},
   v4_int32 = {0x6c737576, 0x7979766d, 0x72747475, 0x74767575}, v2_int64 =
 {0x7979766d6c737576, 0x7476757572747475},
   uint128 = 0x74767575727474757979766d6c737576}
 xmm4           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
 v16_int8 = {0x75, 0x0, 0x74, 0x0, 0x74, 0x0, 0x72, 0x0, 0x75, 0x0, 0x75,
     0x0, 0x76, 0x0, 0x74, 0x0}, v8_int16 = {0x75, 0x74, 0x74, 0x72, 0x75,
 0x75, 0x76, 0x74}, v4_int32 = {0x740075, 0x720074, 0x750075, 0x740076},
   v2_int64 = {0x72007400740075, 0x74007600750075}, uint128 =
 0x00740076007500750072007400740075}
 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 =
 {0x8000000000000000, 0x8000000000000000}, v16_int8 = {0x82, 0x82, 0x82,
 0x82, 0x85,
 ---Type <return> to continue, or q <return> to quit---
     0x83, 0x81, 0x7d, 0x80, 0x7f, 0x7e, 0x7e, 0x7c, 0x7b, 0x7b, 0x7b},
 v8_int16 = {0x8282, 0x8282, 0x8385, 0x7d81, 0x7f80, 0x7e7e, 0x7b7c,
 0x7b7b},
   v4_int32 = {0x82828282, 0x7d818385, 0x7e7e7f80, 0x7b7b7b7c}, v2_int64 =
 {0x7d81838582828282, 0x7b7b7b7c7e7e7f80},
   uint128 = 0x7b7b7b7c7e7e7f807d81838582828282}
 xmm7           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
 v16_int8 = {0x4, 0x0, 0x4, 0x0, 0x4, 0x0, 0x4, 0x0, 0x4, 0x0, 0x4, 0x0,
     0x4, 0x0, 0x4, 0x0}, v8_int16 = {0x4, 0x4, 0x4, 0x4, 0x4, 0x4, 0x4,
 0x4}, v4_int32 = {0x40004, 0x40004, 0x40004, 0x40004}, v2_int64 = {
     0x4000400040004, 0x4000400040004}, uint128 =
 0x00040004000400040004000400040004}
 mxcsr          0x1fa0   [ PE IM DM ZM OM UM PM ]
 mm0            {uint64 = 0xa6a6a6a6a6a6a6a6, v2_int32 = {0xa6a6a6a6,
 0xa6a6a6a6}, v4_int16 = {0xa6a6, 0xa6a6, 0xa6a6, 0xa6a6}, v8_int8 = {0xa6,
     0xa6, 0xa6, 0xa6, 0xa6, 0xa6, 0xa6, 0xa6}}
 mm1            {uint64 = 0xa6a6a6a6a6a6a6a6, v2_int32 = {0xa6a6a6a6,
 0xa6a6a6a6}, v4_int16 = {0xa6a6, 0xa6a6, 0xa6a6, 0xa6a6}, v8_int8 = {0xa6,
     0xa6, 0xa6, 0xa6, 0xa6, 0xa6, 0xa6, 0xa6}}
 mm2            {uint64 = 0xa6a6a6a6a6a6a6a6, v2_int32 = {0xa6a6a6a6,
 0xa6a6a6a6}, v4_int16 = {0xa6a6, 0xa6a6, 0xa6a6, 0xa6a6}, v8_int8 = {0xa6,
     0xa6, 0xa6, 0xa6, 0xa6, 0xa6, 0xa6, 0xa6}}
 mm3            {uint64 = 0xa6a6a6a6a6a6a6a6, v2_int32 = {0xa6a6a6a6,
 0xa6a6a6a6}, v4_int16 = {0xa6a6, 0xa6a6, 0xa6a6, 0xa6a6}, v8_int8 = {0xa6,
     0xa6, 0xa6, 0xa6, 0xa6, 0xa6, 0xa6, 0xa6}}
 mm4            {uint64 = 0xa6a6a6a6a6a6a6a6, v2_int32 = {0xa6a6a6a6,
 0xa6a6a6a6}, v4_int16 = {0xa6a6, 0xa6a6, 0xa6a6, 0xa6a6}, v8_int8 = {0xa6,
     0xa6, 0xa6, 0xa6, 0xa6, 0xa6, 0xa6, 0xa6}}
 mm5            {uint64 = 0xa6a6a6a6a6a6a6a6, v2_int32 = {0xa6a6a6a6,
 0xa6a6a6a6}, v4_int16 = {0xa6a6, 0xa6a6, 0xa6a6, 0xa6a6}, v8_int8 = {0xa6,
     0xa6, 0xa6, 0xa6, 0xa6, 0xa6, 0xa6, 0xa6}}
 mm6            {uint64 = 0x20002000200020, v2_int32 = {0x200020,
 0x200020}, v4_int16 = {0x20, 0x20, 0x20, 0x20}, v8_int8 = {0x20, 0x0,
 0x20, 0x0,
     0x20, 0x0, 0x20, 0x0}}
 mm7            {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0,
 0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}

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


More information about the FFmpeg-trac mailing list