[FFmpeg-trac] #1494(avcodec:open): Assertion fails when encoding wmav2

FFmpeg trac at avcodec.org
Sat Jun 30 21:43:59 CEST 2012


#1494: Assertion fails when encoding wmav2
-------------------------------------+-------------------------------------
             Reporter:  grolschie    |                    Owner:
                 Type:  defect       |                   Status:  open
             Priority:  important    |                Component:  avcodec
              Version:  git-master   |               Resolution:
             Keywords:  wma          |               Blocked By:
  regression                         |  Reproduced by developer:  1
             Blocking:               |
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------

Comment (by cehoyos):

 {{{
 (gdb) b wmaenc.c:389
 Breakpoint 1 at 0x8622106: file libavcodec/wmaenc.c, line 389.
 (gdb) r -i input_stream.flv -ar 48k -vn -acodec wmav2 -f null -
 Starting program: ffmpeg_g -i input_stream.flv -ar 48k -vn -acodec wmav2
 -f null -
 [Thread debugging using libthread_db enabled]
 [New Thread 0xb77ea9c0 (LWP 2617)]
 ffmpeg version N-42075-g7001eee Copyright (c) 2000-2012 the FFmpeg
 developers
   built on Jun 30 2012 21:05:39 with gcc 4.3.2
   configuration: --cc=/usr/local/gcc-4.3.2/bin/gcc --enable-gpl --enable-
 libopenjpeg --enable-libvorbis --enable-libspeex --enable-libmp3lame
 --enable-libtheora --extra-ldflags=-lm --enable-libvpx --enable-libxavs
 --enable-libfaac --enable-nonfree
   libavutil      51. 63.100 / 51. 63.100
   libavcodec     54. 31.100 / 54. 31.100
   libavformat    54. 14.100 / 54. 14.100
   libavdevice    54.  0.100 / 54.  0.100
   libavfilter     3.  0.100 /  3.  0.100
   libswscale      2.  1.100 /  2.  1.100
   libswresample   0. 15.100 /  0. 15.100
   libpostproc    52.  0.100 / 52.  0.100
 Input #0, flv, from 'input_stream.flv':
   Metadata:
     metadatacreator : Yet Another Metadata Injector for FLV - Version 1.4
     hasKeyframes    : true
     hasVideo        : true
     hasAudio        : true
     hasMetadata     : true
     canSeekToEnd    : true
     datasize        : 1978772
     videosize       : 1716367
     audiosize       : 254789
     lasttimestamp   : 30
     lastkeyframetimestamp: 30
     lastkeyframelocation: 1975246
     encoder         : Lavf54.11.100
   Duration: 00:00:30.27, start: 0.000000, bitrate: 366 kb/s
     Stream #0:0: Video: flv1, yuv420p, 450x360, 200 kb/s, 25 tbr, 1k tbn,
 1k tbc
     Stream #0:1: Audio: mp3, 22050 Hz, stereo, s16, 64 kb/s
 [graph 0 input from stream 0:1 @ 0x90c8000] tb:1/1000 samplefmt:s16
 samplerate:22050 chlayout:0x3
 [auto-inserted resampler 0 @ 0x9041f60] chl:stereo fmt:s16 r:22050Hz ->
 chl:stereo fmt:s16 r:48000Hz
 Output #0, null, to 'pipe:':
   Metadata:
     metadatacreator : Yet Another Metadata Injector for FLV - Version 1.4
     hasKeyframes    : true
     hasVideo        : true
     hasAudio        : true
     hasMetadata     : true
     canSeekToEnd    : true
     datasize        : 1978772
     videosize       : 1716367
     audiosize       : 254789
     lasttimestamp   : 30
     lastkeyframetimestamp: 30
     lastkeyframelocation: 1975246
     encoder         : Lavf54.14.100
     Stream #0:0: Audio: wmav2, 48000 Hz, stereo, s16, 127 kb/s
 Stream mapping:
   Stream #0:1 -> #0:0 (mp3 -> wmav2)
 Press [q] to stop, [?] for help
 [Switching to Thread 0xb77ea9c0 (LWP 2617)]

 Breakpoint 1, encode_superframe (avctx=0x9037fa0, avpkt=0xbffd209c,
 frame=0x9059780,
     got_packet_ptr=0xbffd21e0) at libavcodec/wmaenc.c:389
 389         av_assert0(i>=0);
 (gdb) print i
 $2 = -14242
 (gdb) bt
 #0  encode_superframe (avctx=0x9037fa0, avpkt=0xbffd209c, frame=0x9059780,
 got_packet_ptr=0xbffd21e0)
     at libavcodec/wmaenc.c:389
 #1  0x085a0490 in avcodec_encode_audio2 (avctx=0x9037fa0,
 avpkt=0xbffd209c, frame=0x9059780,
     got_packet_ptr=0xffff9bec) at libavcodec/utils.c:1128
 #2  0x08057deb in poll_filters () at ffmpeg.c:1583
 #3  0x0805b2e3 in main (argc=151224224, argv=0x0) at ffmpeg.c:3656
 (gdb) disass $pc-128 $pc+8
 Dump of assembler code from 0x8622086 to 0x862210e:
 0x08622086 <encode_superframe+1782>:    xchg   %eax,%esp
 0x08622087 <encode_superframe+1783>:    add    %eax,(%eax)
 0x08622089 <encode_superframe+1785>:    add    %ch,(%ebx)
 0x0862208b <encode_superframe+1787>:    (bad)
 0x0862208c <encode_superframe+1788>:    nop
 0x0862208d <encode_superframe+1789>:    add    %eax,(%eax)
 0x0862208f <encode_superframe+1791>:    add    %cl,0x20c504(%ebp)
 0x08622095 <encode_superframe+1797>:    add    %al,(%eax)
 0x08622097 <encode_superframe+1799>:    sub    0x18c(%edx),%eax
 0x0862209d <encode_superframe+1805>:    mov    %eax,%edx
 0x0862209f <encode_superframe+1807>:    sar    $0x1f,%edx
 0x086220a2 <encode_superframe+1810>:    shr    $0x1d,%edx
 0x086220a5 <encode_superframe+1813>:    add    %eax,%edx
 0x086220a7 <encode_superframe+1815>:    sar    $0x3,%edx
 0x086220aa <encode_superframe+1818>:    sub    0x1b0(%ecx),%edx
 0x086220b0 <encode_superframe+1824>:    test   %edx,%edx
 0x086220b2 <encode_superframe+1826>:    jg     0x86223b5
 <encode_superframe+2597>
 0x086220b8 <encode_superframe+1832>:    cmp    $0x80,%ebx
 0x086220be <encode_superframe+1838>:    jle    0x86222d0
 <encode_superframe+2368>
 0x086220c4 <encode_superframe+1844>:    mov    0x3c(%esp),%ebx
 0x086220c8 <encode_superframe+1848>:    mov    0x194(%ebx),%edi
 0x086220ce <encode_superframe+1854>:    mov    0x18c(%ebx),%esi
 0x086220d4 <encode_superframe+1860>:    mov    %edi,%eax
 0x086220d6 <encode_superframe+1862>:    sub    0x190(%ebx),%eax
 0x086220dc <encode_superframe+1868>:    lea    0x20(,%eax,8),%eax
 0x086220e3 <encode_superframe+1875>:    sub    %esi,%eax
 0x086220e5 <encode_superframe+1877>:    test   $0x7,%al
 0x086220e7 <encode_superframe+1879>:    jne    0x8622451
 <encode_superframe+2753>
 0x086220ed <encode_superframe+1885>:    lea    0x7(%eax),%edx
 0x086220f0 <encode_superframe+1888>:    mov    %edx,%eax
 0x086220f2 <encode_superframe+1890>:    sar    $0x1f,%eax
 0x086220f5 <encode_superframe+1893>:    shr    $0x1d,%eax
 0x086220f8 <encode_superframe+1896>:    lea    (%eax,%edx,1),%edx
 0x086220fb <encode_superframe+1899>:    sar    $0x3,%edx
 0x086220fe <encode_superframe+1902>:    neg    %edx
 0x08622100 <encode_superframe+1904>:    add    0x1b0(%ebx),%edx
 0x08622106 <encode_superframe+1910>:    cmp    $0x0,%edx
 0x08622109 <encode_superframe+1913>:    jl     0x862246b
 <encode_superframe+2779>
 End of assembler dump.
 (gdb) info register
 eax            0x0      0
 ecx            0x905e4e0        151381216
 edx            0xffffc85e       -14242
 ebx            0x905e4e0        151381216
 esp            0xbffd1b30       0xbffd1b30
 ebp            0x905e668        0x905e668
 esi            0x20     32
 edi            0x90e0c8c        151915660
 eip            0x8622106        0x8622106 <encode_superframe+1910>
 eflags         0x282    [ SF IF ]
 cs             0x73     115
 ss             0x7b     123
 ds             0x7b     123
 es             0x7b     123
 fs             0x0      0
 gs             0x33     51
 }}}

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


More information about the FFmpeg-trac mailing list