[FFmpeg-trac] #686(avcodec:new): WMV2 crash

FFmpeg trac at avcodec.org
Fri Nov 25 14:20:40 CET 2011


#686: WMV2 crash
---------------------------------+-------------------------------------
             Reporter:  robco5   |                     Type:  defect
               Status:  new      |                 Priority:  important
            Component:  avcodec  |                  Version:  0.8.7
             Keywords:           |               Blocked By:
             Blocking:           |  Reproduced by developer:  0
Analyzed by developer:  0        |
---------------------------------+-------------------------------------
 Particular wmv file crashes ffmpeg.

 Tested on Vista 32 bit, compiled on msys+mingw.

 Tested on version 0.7-rc1, 0.7.8 and 0.8.7.

 '''$ gdb ffmpeg_g.exe'''
 GNU gdb (GDB) 7.0
 Copyright (C) 2009 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 "mingw32".
 For bug reporting instructions, please see:
 <http://www.gnu.org/software/gdb/bugs/>...
 Reading symbols from h:\ffmpeg-eclipse\ffmpeg-0.8.7/ffmpeg_g.exe...done.
 (gdb) r -i crash.wmv out.avi
 Starting program: h:\ffmpeg-eclipse\ffmpeg-0.8.7/ffmpeg_g.exe -i crash.wmv
  out.avi
 [New Thread 5840.0x1edc]
 warning: Can not parse XML library list; XML support was disabled at
 compile tim
 e
 ffmpeg version 0.8.7, Copyright (c) 2000-2011 the FFmpeg developers
   built on Nov 25 2011 13:54:03 with gcc 4.4.0
   configuration: --enable-debug=3 --disable-stripping --enable-gpl
 --enable-swsc
 ale --enable-static --enable-memalign-hack --disable-pthreads --enable-
 libx264 -
 -extra-cflags=-I/h/x264 --extra-ldflags=-L/h/x264 --enable-nonfree -
 -enable-libfaac --extra-cflags=-I/h/faac/include --extra-ldflags=-L/h/Anem
 a/faac/libfaac/.libs
   libavutil    51.  9. 1 / 51.  9. 1
   libavcodec   53.  8. 0 / 53.  8. 0
   libavformat  53.  5. 0 / 53.  5. 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

 Seems stream 0 codec frame rate differs from container frame rate: 1000.00
 (1000
 /1) -> 30.00 (30/1)
 Input #0, asf, from 'crash.wmv':
   Metadata:
     WM/ToolName     : TMPGEnc 4.0 XPress Version. 4.6.3.268
     WMFSDKVersion   : 11.0.5721.5251
     WMFSDKNeeded    : 0.0.0.0000
     IsVBR           : 0
   Duration: 00:00:18.03, start: 0.000000, bitrate: 8878 kb/s
     Stream #0.0(hun): Video: wmv2, yuv420p, 1936x1360, 8000 kb/s, 30 tbr,
 1k tbn
 , 1k tbc
 [buffer @ 081cfc60] w:1936 h:1360 pixfmt:yuv420p tb:1/1000000 sar:0/1
 sws_param:

 Output #0, avi, to 'out.avi':
   Metadata:
     WM/ToolName     : TMPGEnc 4.0 XPress Version. 4.6.3.268
     WMFSDKVersion   : 11.0.5721.5251
     WMFSDKNeeded    : 0.0.0.0000
     IsVBR           : 0
     ISFT            : Lavf53.5.0
     Stream #0.0(hun): Video: mpeg4, yuv420p, 1936x1360, q=2-31, 200 kb/s,
 30 tbn
 , 30 tbc
 Stream mapping:
   Stream #0.0 -> #0.0
 Press [q] to stop, [?] for help
 frame=   14 fps=  0 q=31.0 size=     607kB time=00:00:00.50
 bitrate=9938.7kbits/
 frame=   26 fps= 23 q=31.0 size=     716kB time=00:00:00.90
 bitrate=6520.0kbits/
 frame=   37 fps= 23 q=24.8 size=     837kB time=00:00:01.26
 bitrate=5412.3kbits/
 frame=   48 fps= 22 q=31.0 size=     916kB time=00:00:01.63
 bitrate=4595.6kbits/
 frame=   59 fps= 22 q=31.0 size=    1052kB time=00:00:02.00
 bitrate=4310.5kbits/
 frame=   70 fps= 22 q=31.0 size=    1184kB time=00:00:02.36
 bitrate=4098.1kbits/
 frame=   83 fps= 22 q=31.0 size=    1342kB time=00:00:02.80
 bitrate=3926.5kbits/
 frame=   95 fps= 22 q=31.0 size=    1496kB time=00:00:03.20
 bitrate=3830.4kbits/
 frame=  108 fps= 22 q=31.0 size=    1658kB time=00:00:03.63
 bitrate=3738.8kbits/
 frame=  120 fps= 22 q=31.0 size=    1804kB time=00:00:04.03
 bitrate=3663.2kbits/
 frame=  132 fps= 23 q=31.0 size=    1919kB time=00:00:04.43
 bitrate=3546.0kbits/
 frame=  144 fps= 23 q=31.0 size=    2062kB time=00:00:04.83
 bitrate=3495.1kbits/
 frame=  157 fps= 23 q=24.8 size=    2222kB time=00:00:05.26
 bitrate=3456.6kbits/
 frame=  170 fps= 23 q=31.0 size=    2341kB time=00:00:05.70
 bitrate=3363.9kbits/
 frame=  183 fps= 23 q=31.0 size=    2466kB time=00:00:06.13
 bitrate=3293.1kbits/
 frame=  196 fps= 23 q=31.0 size=    2582kB time=00:00:06.56
 bitrate=3221.1kbits/
 frame=  209 fps= 23 q=31.0 size=    2721kB time=00:00:07.00
 bitrate=3184.3kbits/
 frame=  222 fps= 23 q=31.0 size=    2837kB time=00:00:07.43
 bitrate=3126.6kbits/
 frame=  235 fps= 23 q=31.0 size=    2967kB time=00:00:07.86
 bitrate=3090.2kbits/
 frame=  247 fps= 23 q=31.0 size=    3100kB time=00:00:08.26
 bitrate=3072.1kbits/
 frame=  260 fps= 23 q=31.0 size=    3243kB time=00:00:08.70
 bitrate=3053.4kbits/
 frame=  272 fps= 23 q=31.0 size=    3374kB time=00:00:09.10
 bitrate=3037.5kbits/
 frame=  284 fps= 23 q=31.0 size=    3488kB time=00:00:09.50
 bitrate=3007.5kbits/
 frame=  297 fps= 23 q=31.0 size=    3609kB time=00:00:09.93
 bitrate=2976.0kbits/
 frame=  310 fps= 24 q=31.0 size=    3717kB time=00:00:10.36
 bitrate=2937.0kbits/
 frame=  322 fps= 24 q=31.0 size=    3848kB time=00:00:10.76
 bitrate=2927.7kbits/
 frame=  334 fps= 24 q=31.0 size=    3962kB time=00:00:11.16
 bitrate=2906.3kbits/
 frame=  346 fps= 24 q=31.0 size=    4080kB time=00:00:11.56
 bitrate=2889.4kbits/
 frame=  359 fps= 24 q=31.0 size=    4216kB time=00:00:12.00
 bitrate=2878.0kbits/
 frame=  371 fps= 24 q=31.0 size=    4340kB time=00:00:12.40
 bitrate=2867.1kbits/
 frame=  384 fps= 24 q=31.0 size=    4492kB time=00:00:12.83
 bitrate=2867.7kbits/
 s
 Program received signal SIGSEGV, Segmentation fault.
 wmv2_mspel8_h_lowpass (
     dst=0x22e834
 "¤ĂĎÓÖÔą\203¤ĂĎÓÖÔą\203¤ĂĎÓÖÔą\203¤ĂĎÓÖÔą\203¤ĂĎÓÖÔą\203¤ĂĎÓÖÔą
 \203¤ĂĎÓÖÔą\203¤ĂĎÓÖÔą\203¤ĂĎÓÖÔą\203ËŃÔÖĚ hËŃÔÖĚ hËŃÔÖĚ hËŃÔÖĚ hËŃÔÖĚ
 hËŃÔÖĚ hË
 ŃÔÖĚ hËŃÔÖĚ hŕ-ë\b°\a",
     src=0xb5fd023 <Address 0xb5fd023 out of bounds>, dstStride=8,
     srcStride=1968, h=11) at libavcodec/dsputil.c:1345
 1345            dst[0]= cm[(9*(src[0] + src[1]) - (src[-1] + src[2]) +
 8)>>4];
 '''(gdb) bt'''
 #0  wmv2_mspel8_h_lowpass (
     dst=0x22e834
 "¤ĂĎÓÖÔą\203¤ĂĎÓÖÔą\203¤ĂĎÓÖÔą\203¤ĂĎÓÖÔą\203¤ĂĎÓÖÔą\203¤ĂĎÓÖÔą
 \203¤ĂĎÓÖÔą\203¤ĂĎÓÖÔą\203¤ĂĎÓÖÔą\203ËŃÔÖĚ hËŃÔÖĚ hËŃÔÖĚ hËŃÔÖĚ hËŃÔÖĚ
 hËŃÔÖĚ hË
 ŃÔÖĚ hËŃÔÖĚ hŕ-ë\b°\a",
     src=0xb5fd023 <Address 0xb5fd023 out of bounds>, dstStride=8,
     srcStride=1968, h=11) at libavcodec/dsputil.c:1345
 #1  0x005bc0e8 in put_mspel8_mc32_c (
     dst=0xab817a0
 "AAAACDDDD?Hi-\275Đ×ŢÝÚÚŰŮŘÖÚäŕÖĂŁm?JpŁľĘĐÖÔĚÁĹÍÔÔŃŃĐиyA:[¤»Ę
 ĎÓÖŘÚŃŃÖ×ŐĘŃ׺"e=713:87777899998:79 at _-ľŇŮÖĚÔÝĎÉÍĐÖÝßÔĚ\275¨ź§ÁŘÖÔĐĐ×ÜäÎ×ŃŇ×ŮÍŹF1
 ;AaśżĹĎÔĚŐŘ×ÔĐÔŘŇ×ŐĹŞ"X32>\203«|şÂÎŐŇ´V>@<9w">|¸ÉÓĎ´r>2386/7Mn\210ŻĆĚÍ"...,
 src=
 0xb5f8af3 "DD@>@AB[ŽËŃÔÖĚ hJCA at HDDD>]<«ĽÎÖŐË\241gKC=87688Or
 »Ë×ÓĽ\220_B>><BDBA at B
 J]t"ĐĚŮ<H:4;;:8888888784YšÁŃŐŃĎŐŐ¸mNC?:?BBJD?9:?Y\210źcľÓŮÓ«_>DA:;:?^Ž§¨żÓÚŮ+hBF
 CHD>???HXdmRĎŮÍĆŻś?<ś°ĆÔŇłZ?>;:ZŽť ŻÁĎĐÎ>J47V\201'ź´ÂĎ×Ç"]94"...,
     stride=1968) at libavcodec/dsputil.c:1435
 #2  0x0089054b in ff_mspel_motion (s=0x8eb97e0,
     dest_y=0xab7da20
 "DA?@AAS\201RÇĐÔÖĐ­v|>ŔŃÇş%Q7:<9?>=:9:88<=<>:7778989;==<:9?
 ?A;8>]Ś'|ś-?pM9767<<=68877778888888889986898998:><868<?@@@?>;=Cf?ŞĐ×ĐĂŽ9*.894.,.
 13553232044648<998;:9::BCA9?¶żĆČÍŇĎş\\;8=Bx-\242­ĽĘŇ϶tB7:9:;><>B?<:9"...,
     dest_cb=0x88a3770
 "mmmmmmqw{{yurpnmmoppooppppqqqrtvwwutttrqppoooooponmllmlkk
 mrw{zunnmllnppooqrrpoopq{'\203\200xqn~\177\201'|qnslllmoonmmmmprrqpoonnnnopmomow
 ywy", 'x' <repeats 13 times>, "wwvwwwwvvvvutttttuuvwwww", 'x' <repeats 18
 times>
 , 'w' <repeats 13 times>, "vvwv"...,
     dest_cr=0x8953770
 "ŃŃŃŃŃŇĘŻ"\210Ž§ŔËËČÄż\275ŔĂĹĂÁÂĂĂĹÄ»¬ź¤§\262żĆČÄľ\275ľżżŔ
 ŔÁÁÄČËÎĐĐŃĎÎĚşš<Śť¸Ăľ¸+ąą»ŔĽĽ\275żÁĂČĆż\220\177\203\201šÁ»?~?\201'»ÉÂÇĹĆÇĹĹÄżą»Á
 ĹĹľ»ľÇÇĆĆĆÂľ\275ÁŔżż\230\230\230-\231\230---\230\230\231ťžźźź
 \241\242\242Ł¤ĄĄ||
 §cŞŞŞŞŞŞc¨|¤\242źš\231š>śśťťžź ź \241\241\241\242Ł¤
 \241\241¤|§§§¨¨¨||¨Ş«"..., r
 ef_picture=0x8eb9b48, pix_op=0x8ebac9c, motion_x=7, motion_y=31, h=16)
     at libavcodec/wmv2.c:114
 #3  0x0062589d in MPV_motion_internal (s=0x8eb97e0,
     dest_y=<value optimized out>, dest_cb=<value optimized out>,
     dest_cr=0x8953770
 "ŃŃŃŃŃŇĘŻ"\210Ž§ŔËËČÄż\275ŔĂĹĂÁÂĂĂĹÄ»¬ź¤§\262żĆČÄľ\275ľżżŔ
 ŔÁÁÄČËÎĐĐŃĎÎĚşš<Śť¸Ăľ¸+ąą»ŔĽĽ\275żÁĂČĆż\220\177\203\201šÁ»?~?\201'»ÉÂÇĹĆÇĹĹÄżą»Á
 ĹĹľ»ľÇÇĆĆĆÂľ\275ÁŔżż\230\230\230-\231\230---\230\230\231ťžźźź
 \241\242\242Ł¤ĄĄ||
 §cŞŞŞŞŞŞc¨|¤\242źš\231š>śśťťžź ź \241\241\241\242Ł¤
 \241\241¤|§§§¨¨¨||¨Ş«"..., d
 ir=0, ref_picture=0x8eb9b48, pix_op=0x8ebac9c, qpix_op=0x8ebaefc)
     at libavcodec/mpegvideo_common.h:729
 #4  MPV_motion (s=0x8eb97e0, dest_y=<value optimized out>,
     dest_cb=<value optimized out>,
     dest_cr=0x8953770
 "ŃŃŃŃŃŇĘŻ"\210Ž§ŔËËČÄż\275ŔĂĹĂÁÂĂĂĹÄ»¬ź¤§\262żĆČÄľ\275ľżżŔ
 ŔÁÁÄČËÎĐĐŃĎÎĚşš<Śť¸Ăľ¸+ąą»ŔĽĽ\275żÁĂČĆż\220\177\203\201šÁ»?~?\201'»ÉÂÇĹĆÇĹĹÄżą»Á
 ĹĹľ»ľÇÇĆĆĆÂľ\275ÁŔżż\230\230\230-\231\230---\230\230\231ťžźźź
 \241\242\242Ł¤ĄĄ||
 §cŞŞŞŞŞŞc¨|¤\242źš\231š>śśťťžź ź \241\241\241\242Ł¤
 \241\241¤|§§§¨¨¨||¨Ş«"..., d
 ir=0, ref_picture=0x8eb9b48, pix_op=0x8ebac9c, qpix_op=0x8ebaefc)
     at libavcodec/mpegvideo_common.h:896
 #5  0x00627cf3 in MPV_decode_mb_internal (s=0x8eb97e0, block=0x6fe8360)
     at libavcodec/mpegvideo.c:2140
 #6  MPV_decode_mb (s=0x8eb97e0, block=0x6fe8360)
     at libavcodec/mpegvideo.c:2277
 #7  0x00688176 in decode_slice (s=0x8eb97e0) at libavcodec/h263dec.c:248
 #8  0x0068916d in ff_h263_decode_frame (avctx=0x8106e60, data=0x22ee50,
     data_size=0x22f04c, avpkt=0x22efb0) at libavcodec/h263dec.c:653
 #9  0x00515bdc in avcodec_decode_video2 (avctx=0x8106e60,
 picture=0x22ee50,
     got_picture_ptr=0x22f04c, avpkt=0x22efb0) at libavcodec/utils.c:769
 #10 0x00407097 in output_packet (ist=<value optimized out>,
     ist_index=<value optimized out>, ost_table=DWARF-2 expression error:
 DW_OP_r
 eg operations must be used either alone or in conjuction with DW_OP_piece.
 ) at ffmpeg.c:1611
 #11 0x0040afd0 in transcode (nb_output_files=<value optimized out>,
     input_files=<value optimized out>, nb_input_files=<value optimized
 out>,
     stream_maps=0x0, nb_stream_maps=0, output_files=<value optimized out>)
     at ffmpeg.c:2782
 #12 0x0040c509 in main (argc=4, argv=0x6fe31e0) at ffmpeg.c:4588
 '''(gdb) disass $pc-32,$pc+32'''
 Dump of assembler code for function wmv2_mspel8_h_lowpass:
 0x00536a7c <wmv2_mspel8_h_lowpass+0>:   push   %ebp
 0x00536a7d <wmv2_mspel8_h_lowpass+1>:   push   %edi
 0x00536a7e <wmv2_mspel8_h_lowpass+2>:   push   %esi
 0x00536a7f <wmv2_mspel8_h_lowpass+3>:   push   %ebx
 0x00536a80 <wmv2_mspel8_h_lowpass+4>:   mov    0x18(%esp),%esi
 0x00536a84 <wmv2_mspel8_h_lowpass+8>:   test   %esi,%esi
 0x00536a86 <wmv2_mspel8_h_lowpass+10>:  jle    0x536bfb
 <wmv2_mspel8_h_lowpass+3
 83>
 0x00536a8c <wmv2_mspel8_h_lowpass+16>:  xor    %esi,%esi
 0x00536a8e <wmv2_mspel8_h_lowpass+18>:  xchg   %ax,%ax
 0x00536a90 <wmv2_mspel8_h_lowpass+20>:  movzbl 0x2(%edx),%ebx
 0x00536a94 <wmv2_mspel8_h_lowpass+24>:  neg    %ebx
 0x00536a96 <wmv2_mspel8_h_lowpass+26>:  movzbl -0x1(%edx),%edi
 0x00536a9a <wmv2_mspel8_h_lowpass+30>:  sub    %edi,%ebx
 0x00536a9c <wmv2_mspel8_h_lowpass+32>:  movzbl 0x1(%edx),%ebp
 0x00536aa0 <wmv2_mspel8_h_lowpass+36>:  movzbl (%edx),%edi
 0x00536aa3 <wmv2_mspel8_h_lowpass+39>:  lea    0x0(%ebp,%edi,1),%edi
 0x00536aa7 <wmv2_mspel8_h_lowpass+43>:  lea    (%edi,%edi,8),%edi
 0x00536aaa <wmv2_mspel8_h_lowpass+46>:  lea    0x8(%ebx,%edi,1),%ebx
 0x00536aae <wmv2_mspel8_h_lowpass+50>:  sar    $0x4,%ebx
 0x00536ab1 <wmv2_mspel8_h_lowpass+53>:  mov    0xbd7b00(%ebx),%bl
 0x00536ab7 <wmv2_mspel8_h_lowpass+59>:  mov    %bl,(%eax)
 0x00536ab9 <wmv2_mspel8_h_lowpass+61>:  movzbl (%edx),%ebx
 0x00536abc <wmv2_mspel8_h_lowpass+64>:  mov    $0x8,%edi
 0x00536ac1 <wmv2_mspel8_h_lowpass+69>:  sub    %ebx,%edi
 0x00536ac3 <wmv2_mspel8_h_lowpass+71>:  mov    %edi,%ebx
 0x00536ac5 <wmv2_mspel8_h_lowpass+73>:  movzbl 0x3(%edx),%edi
 0x00536ac9 <wmv2_mspel8_h_lowpass+77>:  sub    %edi,%ebx
 0x00536acb <wmv2_mspel8_h_lowpass+79>:  movzbl 0x2(%edx),%ebp
 0x00536acf <wmv2_mspel8_h_lowpass+83>:  movzbl 0x1(%edx),%edi
 0x00536ad3 <wmv2_mspel8_h_lowpass+87>:  lea    0x0(%ebp,%edi,1),%edi
 0x00536ad7 <wmv2_mspel8_h_lowpass+91>:  lea    (%edi,%edi,8),%edi
 0x00536ada <wmv2_mspel8_h_lowpass+94>:  add    %edi,%ebx
 0x00536adc <wmv2_mspel8_h_lowpass+96>:  sar    $0x4,%ebx
 0x00536adf <wmv2_mspel8_h_lowpass+99>:  mov    0xbd7b00(%ebx),%bl
 0x00536ae5 <wmv2_mspel8_h_lowpass+105>: mov    %bl,0x1(%eax)
 0x00536ae8 <wmv2_mspel8_h_lowpass+108>: movzbl 0x4(%edx),%ebx
 0x00536aec <wmv2_mspel8_h_lowpass+112>: neg    %ebx
 0x00536aee <wmv2_mspel8_h_lowpass+114>: movzbl 0x1(%edx),%edi
 0x00536af2 <wmv2_mspel8_h_lowpass+118>: sub    %edi,%ebx
 0x00536af4 <wmv2_mspel8_h_lowpass+120>: movzbl 0x3(%edx),%ebp
 0x00536af8 <wmv2_mspel8_h_lowpass+124>: movzbl 0x2(%edx),%edi
 0x00536afc <wmv2_mspel8_h_lowpass+128>: lea    0x0(%ebp,%edi,1),%edi
 0x00536b00 <wmv2_mspel8_h_lowpass+132>: lea    (%edi,%edi,8),%edi
 0x00536b03 <wmv2_mspel8_h_lowpass+135>: lea    0x8(%ebx,%edi,1),%ebx
 0x00536b07 <wmv2_mspel8_h_lowpass+139>: sar    $0x4,%ebx
 0x00536b0a <wmv2_mspel8_h_lowpass+142>: mov    0xbd7b00(%ebx),%bl
 0x00536b10 <wmv2_mspel8_h_lowpass+148>: mov    %bl,0x2(%eax)
 0x00536b13 <wmv2_mspel8_h_lowpass+151>: movzbl 0x5(%edx),%ebx
 0x00536b17 <wmv2_mspel8_h_lowpass+155>: neg    %ebx
 0x00536b19 <wmv2_mspel8_h_lowpass+157>: movzbl 0x2(%edx),%edi
 0x00536b1d <wmv2_mspel8_h_lowpass+161>: sub    %edi,%ebx
 0x00536b1f <wmv2_mspel8_h_lowpass+163>: movzbl 0x4(%edx),%ebp
 0x00536b23 <wmv2_mspel8_h_lowpass+167>: movzbl 0x3(%edx),%edi
 0x00536b27 <wmv2_mspel8_h_lowpass+171>: lea    0x0(%ebp,%edi,1),%edi
 0x00536b2b <wmv2_mspel8_h_lowpass+175>: lea    (%edi,%edi,8),%edi
 0x00536b2e <wmv2_mspel8_h_lowpass+178>: lea    0x8(%ebx,%edi,1),%ebx
 0x00536b32 <wmv2_mspel8_h_lowpass+182>: sar    $0x4,%ebx
 0x00536b35 <wmv2_mspel8_h_lowpass+185>: mov    0xbd7b00(%ebx),%bl
 0x00536b3b <wmv2_mspel8_h_lowpass+191>: mov    %bl,0x3(%eax)
 0x00536b3e <wmv2_mspel8_h_lowpass+194>: movzbl 0x6(%edx),%ebx
 0x00536b42 <wmv2_mspel8_h_lowpass+198>: neg    %ebx
 0x00536b44 <wmv2_mspel8_h_lowpass+200>: movzbl 0x3(%edx),%edi
 0x00536b48 <wmv2_mspel8_h_lowpass+204>: sub    %edi,%ebx
 0x00536b4a <wmv2_mspel8_h_lowpass+206>: movzbl 0x5(%edx),%ebp
 0x00536b4e <wmv2_mspel8_h_lowpass+210>: movzbl 0x4(%edx),%edi
 0x00536b52 <wmv2_mspel8_h_lowpass+214>: lea    0x0(%ebp,%edi,1),%edi
 0x00536b56 <wmv2_mspel8_h_lowpass+218>: lea    (%edi,%edi,8),%edi
 0x00536b59 <wmv2_mspel8_h_lowpass+221>: lea    0x8(%ebx,%edi,1),%ebx
 0x00536b5d <wmv2_mspel8_h_lowpass+225>: sar    $0x4,%ebx
 0x00536b60 <wmv2_mspel8_h_lowpass+228>: mov    0xbd7b00(%ebx),%bl
 0x00536b66 <wmv2_mspel8_h_lowpass+234>: mov    %bl,0x4(%eax)
 0x00536b69 <wmv2_mspel8_h_lowpass+237>: movzbl 0x7(%edx),%ebx
 0x00536b6d <wmv2_mspel8_h_lowpass+241>: neg    %ebx
 0x00536b6f <wmv2_mspel8_h_lowpass+243>: movzbl 0x4(%edx),%edi
 0x00536b73 <wmv2_mspel8_h_lowpass+247>: sub    %edi,%ebx
 0x00536b75 <wmv2_mspel8_h_lowpass+249>: movzbl 0x6(%edx),%ebp
 0x00536b79 <wmv2_mspel8_h_lowpass+253>: movzbl 0x5(%edx),%edi
 0x00536b7d <wmv2_mspel8_h_lowpass+257>: lea    0x0(%ebp,%edi,1),%edi
 0x00536b81 <wmv2_mspel8_h_lowpass+261>: lea    (%edi,%edi,8),%edi
 0x00536b84 <wmv2_mspel8_h_lowpass+264>: lea    0x8(%ebx,%edi,1),%ebx
 0x00536b88 <wmv2_mspel8_h_lowpass+268>: sar    $0x4,%ebx
 0x00536b8b <wmv2_mspel8_h_lowpass+271>: mov    0xbd7b00(%ebx),%bl
 0x00536b91 <wmv2_mspel8_h_lowpass+277>: mov    %bl,0x5(%eax)
 0x00536b94 <wmv2_mspel8_h_lowpass+280>: movzbl 0x8(%edx),%ebx
 0x00536b98 <wmv2_mspel8_h_lowpass+284>: neg    %ebx
 0x00536b9a <wmv2_mspel8_h_lowpass+286>: movzbl 0x5(%edx),%edi
 0x00536b9e <wmv2_mspel8_h_lowpass+290>: sub    %edi,%ebx
 0x00536ba0 <wmv2_mspel8_h_lowpass+292>: movzbl 0x7(%edx),%ebp
 0x00536ba4 <wmv2_mspel8_h_lowpass+296>: movzbl 0x6(%edx),%edi
 0x00536ba8 <wmv2_mspel8_h_lowpass+300>: lea    0x0(%ebp,%edi,1),%edi
 0x00536bac <wmv2_mspel8_h_lowpass+304>: lea    (%edi,%edi,8),%edi
 0x00536baf <wmv2_mspel8_h_lowpass+307>: lea    0x8(%ebx,%edi,1),%ebx
 0x00536bb3 <wmv2_mspel8_h_lowpass+311>: sar    $0x4,%ebx
 0x00536bb6 <wmv2_mspel8_h_lowpass+314>: mov    0xbd7b00(%ebx),%bl
 0x00536bbc <wmv2_mspel8_h_lowpass+320>: mov    %bl,0x6(%eax)
 0x00536bbf <wmv2_mspel8_h_lowpass+323>: movzbl 0x9(%edx),%ebx
 0x00536bc3 <wmv2_mspel8_h_lowpass+327>: neg    %ebx
 0x00536bc5 <wmv2_mspel8_h_lowpass+329>: movzbl 0x6(%edx),%edi
 0x00536bc9 <wmv2_mspel8_h_lowpass+333>: sub    %edi,%ebx
 0x00536bcb <wmv2_mspel8_h_lowpass+335>: movzbl 0x8(%edx),%ebp
 0x00536bcf <wmv2_mspel8_h_lowpass+339>: movzbl 0x7(%edx),%edi
 0x00536bd3 <wmv2_mspel8_h_lowpass+343>: lea    0x0(%ebp,%edi,1),%edi
 0x00536bd7 <wmv2_mspel8_h_lowpass+347>: lea    (%edi,%edi,8),%edi
 0x00536bda <wmv2_mspel8_h_lowpass+350>: lea    0x8(%ebx,%edi,1),%ebx
 0x00536bde <wmv2_mspel8_h_lowpass+354>: sar    $0x4,%ebx
 0x00536be1 <wmv2_mspel8_h_lowpass+357>: mov    0xbd7b00(%ebx),%bl
 0x00536be7 <wmv2_mspel8_h_lowpass+363>: mov    %bl,0x7(%eax)
 0x00536bea <wmv2_mspel8_h_lowpass+366>: add    %ecx,%eax
 0x00536bec <wmv2_mspel8_h_lowpass+368>: add    0x14(%esp),%edx
 0x00536bf0 <wmv2_mspel8_h_lowpass+372>: inc    %esi
 0x00536bf1 <wmv2_mspel8_h_lowpass+373>: cmp    0x18(%esp),%esi
 0x00536bf5 <wmv2_mspel8_h_lowpass+377>: jne    0x536a90
 <wmv2_mspel8_h_lowpass+2
 0>
 0x00536bfb <wmv2_mspel8_h_lowpass+383>: pop    %ebx
 0x00536bfc <wmv2_mspel8_h_lowpass+384>: pop    %esi
 0x00536bfd <wmv2_mspel8_h_lowpass+385>: pop    %edi
 0x00536bfe <wmv2_mspel8_h_lowpass+386>: pop    %ebp
 0x00536bff <wmv2_mspel8_h_lowpass+387>: ret
 End of assembler dump.
 '''(gdb) info all-registers'''
 eax            0x22e834 2287668
 ecx            0x8      8
 edx            0xb5fd023        190828579
 ebx            0x74     116
 esp            0x22e7c0 0x22e7c0
 ebp            0x8e     0x8e
 esi            0xa      10
 edi            0x831    2097
 eip            0x536a90 0x536a90 <wmv2_mspel8_h_lowpass+20>
 eflags         0x210297 [ CF PF AF SF IF RF ID ]
 cs             0x1b     27
 ss             0x23     35
 ds             0x23     35
 es             0x23     35
 fs             0x3b     59
 gs             0x0      0
 st0            -nan(0xc4c4c4c4c4c4c4c4) (raw 0xffffc4c4c4c4c4c4c4c4)
 st1            -nan(0xc4c4c4c4c4c4c4c4) (raw 0xffffc4c4c4c4c4c4c4c4)
 st2            -nan(0x96009400930094)   (raw 0xffff0096009400930094)
 st3            -nan(0xb000a7009f0099)   (raw 0xffff00b000a7009f0099)
 st4            -nan(0x12f012a01270127)  (raw 0xffff012f012a01270127)
 st5            -nan(0x165015701460138)  (raw 0xffff0165015701460138)
 st6            -nan(0x2000200020002)    (raw 0xffff0002000200020002)
 st7            -inf     (raw 0xffff0000000000000000)
 fctrl          0xffff037f       -64641
 fstat          0xffff0020       -65504
 ftag           0xffffaaaa       -21846
 fiseg          0x1b     27
 fioff          0x40aaea 4238058
 foseg          0xffff0023       -65501
 fooff          0x0      0
 fop            0x5d8    1496
 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 = {0xff, 0x7, 0xff, 0x7, 0xff, 0x7, 0xff, 0x7, 0xff, 0x7, 0xff,
     0x7, 0xff, 0x7, 0xff, 0x7}, v8_int16 = {0x7ff, 0x7ff, 0x7ff, 0x7ff,
     0x7ff, 0x7ff, 0x7ff, 0x7ff}, v4_int32 = {0x7ff07ff, 0x7ff07ff,
 0x7ff07ff,
     0x7ff07ff}, v2_int64 = {0x7ff07ff07ff07ff, 0x7ff07ff07ff07ff},
   uint128 = 0x07ff07ff07ff07ff07ff07ff07ff07ff}
 xmm2           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
   v16_int8 = {0x10, 0x5a, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x38, 0x2c, 0x2,
 0x0,
     0x0, 0x0, 0x0, 0x0}, v8_int16 = {0x5a10, 0x2, 0x0, 0x0, 0x2c38, 0x2,
 0x0,
     0x0}, v4_int32 = {0x25a10, 0x0, 0x22c38, 0x0}, v2_int64 = {0x25a10,
     0x22c38}, uint128 = 0x0000000000022c380000000000025a10}
 xmm3           {v4_float = {0x0, 0x0, 0x0, 0x0}, v2_double = {0x0, 0x0},
   v16_int8 = {0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0, 0x1, 0x0,
     0x1, 0x0, 0x1, 0x0}, v8_int16 = {0x1, 0x1, 0x1, 0x1, 0x1, 0x1, 0x1,
 0x1},
   v4_int32 = {0x10001, 0x10001, 0x10001, 0x10001}, v2_int64 = {
     0x1000100010001, 0x1000100010001},
   uint128 = 0x00010001000100010001000100010001}
 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 = {0x84, 0x0, 0x84, 0x0, 0x84, 0x0, 0x84, 0x0, 0x84, 0x0, 0x84,
     0x0, 0x84, 0x0, 0x84, 0x0}, v8_int16 = {0x84, 0x84, 0x84, 0x84, 0x84,
     0x84, 0x84, 0x84}, v4_int32 = {0x840084, 0x840084, 0x840084,
 0x840084},
   v2_int64 = {0x84008400840084, 0x84008400840084},
   uint128 = 0x00840084008400840084008400840084}
 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 = 0xc4c4c4c4c4c4c4c4, v2_int32 = {0xc4c4c4c4,
     0xc4c4c4c4}, v4_int16 = {0xc4c4, 0xc4c4, 0xc4c4, 0xc4c4}, v8_int8 = {
     0xc4, 0xc4, 0xc4, 0xc4, 0xc4, 0xc4, 0xc4, 0xc4}}
 mm1            {uint64 = 0xc4c4c4c4c4c4c4c4, v2_int32 = {0xc4c4c4c4,
     0xc4c4c4c4}, v4_int16 = {0xc4c4, 0xc4c4, 0xc4c4, 0xc4c4}, v8_int8 = {
     0xc4, 0xc4, 0xc4, 0xc4, 0xc4, 0xc4, 0xc4, 0xc4}}
 mm2            {uint64 = 0x96009400930094, v2_int32 = {0x930094,
 0x960094},
   v4_int16 = {0x94, 0x93, 0x94, 0x96}, v8_int8 = {0x94, 0x0, 0x93, 0x0,
 0x94,
     0x0, 0x96, 0x0}}
 mm3            {uint64 = 0xb000a7009f0099, v2_int32 = {0x9f0099,
 0xb000a7},
   v4_int16 = {0x99, 0x9f, 0xa7, 0xb0}, v8_int8 = {0x99, 0x0, 0x9f, 0x0,
 0xa7,
     0x0, 0xb0, 0x0}}
 mm4            {uint64 = 0x12f012a01270127, v2_int32 = {0x1270127,
     0x12f012a}, v4_int16 = {0x127, 0x127, 0x12a, 0x12f}, v8_int8 = {0x27,
     0x1, 0x27, 0x1, 0x2a, 0x1, 0x2f, 0x1}}
 mm5            {uint64 = 0x165015701460138, v2_int32 = {0x1460138,
     0x1650157}, v4_int16 = {0x138, 0x146, 0x157, 0x165}, v8_int8 = {0x38,
     0x1, 0x46, 0x1, 0x57, 0x1, 0x65, 0x1}}
 mm6            {uint64 = 0x2000200020002, v2_int32 = {0x20002, 0x20002},
   v4_int16 = {0x2, 0x2, 0x2, 0x2}, v8_int8 = {0x2, 0x0, 0x2, 0x0, 0x2,
 0x0,
     0x2, 0x0}}
 mm7            {uint64 = 0x0, v2_int32 = {0x0, 0x0}, v4_int16 = {0x0, 0x0,
     0x0, 0x0}, v8_int8 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}
 (gdb)

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


More information about the FFmpeg-trac mailing list