[FFmpeg-trac] #3432(avcodec:new): Incorrect decoding of Vorbis files extracted from a game

FFmpeg trac at avcodec.org
Mon Mar 3 11:35:30 CET 2014


#3432: Incorrect decoding of Vorbis files extracted from a game
------------------------------------+--------------------------------------
             Reporter:  Case        |                     Type:  defect
               Status:  new         |                 Priority:  normal
            Component:  avcodec     |                  Version:  git-master
             Keywords:  ogg vorbis  |               Blocked By:
             Blocking:              |  Reproduced by developer:  0
Analyzed by developer:  0           |
------------------------------------+--------------------------------------
 Summary of the bug:
 FFmpeg decodes the file with wrong duration and bad sound. File is over 2
 minutes and 16 seconds long but the decoded file is 1 minute and 30
 seconds long. And it sounds completely different from libvorbis decode.
 The decoder reports no errors or issues.

 How to reproduce:
 Sample file 'vorbis_too_short_and_bad_sound.ogg' that shows the problem
 can be found on the FTP.

 {{{
 % ffmpeg -v 9 -loglevel 99 -i vorbis_too_short_and_bad_sound.ogg out.wav
 ffmpeg version N-61050-g2dcaa1b Copyright (c) 2000-2014 the FFmpeg
 developers
   built on Mar  3 2014 10:26:09 with gcc 4.8.2 (GCC)
   configuration: --arch=x86_64 --target-os=mingw32 --cross-
 prefix=/home/jmh/ffmpeg/sandbox/mingw-w64-x86_64/bin/x86_64-w64-mingw32-
 --pkg-config=pkg-config --enable-gpl --enable-libx264 --enable-avisynth
 --enable-libxvid --enable-libmp3lame --enable-versio
 n3 --enable-zlib --enable-librtmp --enable-libvorbis --enable-libtheora
 --enable-libspeex --enable-libopenjpeg --enable-gnutls --enable-libgsm
 --enable-libfreetype --enable-libopus --disable-w32threads --enable-frei0r
 --enable-filter=frei0r --enable-libvo-
 aacenc --enable-bzlib --enable-libxavs --extra-cflags=-DPTW32_STATIC_LIB
 --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvo-
 amrwbenc --enable-libschroedinger --enable-libvpx --enable-libilbc
 --prefix=/home/jmh/ffmpeg/sandbox/mingw-w64-x86
 _64/x86_64-w64-mingw32 --enable-static --disable-shared --enable-libsoxr
 --enable-fontconfig --enable-libass --enable-libutvideo --enable-libbluray
 --enable-iconv --enable-libtwolame --extra-cflags=-DLIBTWOLAME_STATIC
 --enable-libzvbi --enable-libcaca --en
 able-libmodplug --extra-libs=-lstdc++ --extra-libs=-lpng --enable-
 libvidstab --extra-cflags= --extra-cflags= --enable-nonfree --enable-
 libfdk-aac --enable-libfaac --enable-runtime-cpudetect
   libavutil      52. 66.100 / 52. 66.100
   libavcodec     55. 52.102 / 55. 52.102
   libavformat    55. 33.100 / 55. 33.100
   libavdevice    55. 10.100 / 55. 10.100
   libavfilter     4.  2.100 /  4.  2.100
   libswscale      2.  5.101 /  2.  5.101
   libswresample   0. 18.100 /  0. 18.100
   libpostproc    52.  3.100 / 52.  3.100
 Splitting the commandline.
 Reading option '-v' ... matched as option 'v' (set logging level) with
 argument '9'.
 Reading option '-loglevel' ... matched as option 'loglevel' (set logging
 level) with argument '99'.
 Reading option '-i' ... matched as input file with argument
 'vorbis_too_short_and_bad_sound.ogg'.
 Reading option 'out.wav' ... matched as output file.
 Finished splitting the commandline.
 Parsing a group of options: global .
 Applying option v (set logging level) with argument 9.
 Successfully parsed a group of options.
 Parsing a group of options: input file vorbis_too_short_and_bad_sound.ogg.
 Successfully parsed a group of options.
 Opening an input file: vorbis_too_short_and_bad_sound.ogg.
 [ogg @ 000000000404e540] Format ogg probed with size=2048 and score=100
 [ogg @ 000000000404e540] 2048 bytes of comment header remain
 [ogg @ 000000000404e540] Before avformat_find_stream_info() pos: 10886
 bytes read:130843 seeks:3
 [ogg @ 000000000404e540] All info found
 [ogg @ 000000000404e540] After avformat_find_stream_info() pos: 10886
 bytes read:130843 seeks:3 frames:1
 Input #0, ogg, from 'vorbis_too_short_and_bad_sound.ogg':
   Duration: 00:02:16.59, start: 0.000000, bitrate: 132 kb/s
     Stream #0:0, 1, 1/48000: Audio: vorbis, 48000 Hz, stereo, fltp, 130
 kb/s
     Metadata:
       ARTIST          : Nick Arundel & Ron Fish
       TITLE           : BAC012
       ALBUM           : Batman: Arkham City
       GENRE           : Soundtrack
       TRACKTOTAL      : 325
       REPLAYGAIN_ALBUM_GAIN: -2.55 dB
       REPLAYGAIN_ALBUM_PEAK: 1.164773
       REPLAYGAIN_TRACK_GAIN: -0.45 dB
       REPLAYGAIN_TRACK_PEAK: 0.959958
       DATE            : 2011
       track           : 12
 Successfully opened the file.
 Parsing a group of options: output file out.wav.
 Successfully parsed a group of options.
 Opening an output file: out.wav.
 Successfully opened the file.
 detected 8 logical cores
 [graph 0 input from stream 0:0 @ 000000000407b180] Setting 'time_base' to
 value '1/48000'
 [graph 0 input from stream 0:0 @ 000000000407b180] Setting 'sample_rate'
 to value '48000'
 [graph 0 input from stream 0:0 @ 000000000407b180] Setting 'sample_fmt' to
 value 'fltp'
 [graph 0 input from stream 0:0 @ 000000000407b180] Setting
 'channel_layout' to value '0x3'
 [graph 0 input from stream 0:0 @ 000000000407b180] tb:1/48000
 samplefmt:fltp samplerate:48000 chlayout:0x3
 [audio format for output stream 0:0 @ 000000000407b540] Setting
 'sample_fmts' to value 's16'
 [audio format for output stream 0:0 @ 000000000407b540] auto-inserting
 filter 'auto-inserted resampler 0' between the filter 'Parsed_anull_0' and
 the filter 'audio format for output stream 0:0'
 [AVFilterGraph @ 000000000410a060] query_formats: 4 queried, 6 merged, 3
 already done, 0 delayed
 [auto-inserted resampler 0 @ 000000000407bcc0] ch:2 chl:stereo fmt:fltp
 r:48000Hz -> ch:2 chl:stereo fmt:s16 r:48000Hz
 Output #0, wav, to 'out.wav':
   Metadata:
     ISFT            : Lavf55.33.100
     Stream #0:0, 0, 1/48000: Audio: pcm_s16le ([1][0][0][0] / 0x0001),
 48000 Hz, stereo, s16, 1536 kb/s
     Metadata:
       ARTIST          : Nick Arundel & Ron Fish
       TITLE           : BAC012
       ALBUM           : Batman: Arkham City
       GENRE           : Soundtrack
       TRACKTOTAL      : 325
       REPLAYGAIN_ALBUM_GAIN: -2.55 dB
       REPLAYGAIN_ALBUM_PEAK: 1.164773
       REPLAYGAIN_TRACK_GAIN: -0.45 dB
       REPLAYGAIN_TRACK_PEAK: 0.959958
       DATE            : 2011
       track           : 12
 Stream mapping:
   Stream #0:0 -> #0:0 (vorbis -> pcm_s16le)
 Press [q] to stop, [?] for help
 [output stream 0:0 @ 000000000407b6c0] EOF on sink link output stream
 0:0:default.
 No more output streams to write to, finishing.
 size=   16799kB time=00:02:16.44 bitrate=1008.6kbits/s
 video:0kB audio:16798kB subtitle:0 data:0 global headers:0kB muxing
 overhead 0.000465%
 13816 frames successfully decoded, 0 decoding errors
 [AVIOContext @ 0000000004048020] Statistics: 4 seeks, 13818 writeouts
 [AVIOContext @ 0000000002916c60] Statistics: 2353119 bytes read, 3 seeks

 }}}

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


More information about the FFmpeg-trac mailing list