Opened 8 years ago
Last modified 8 years ago
#6430 open enhancement
Ogg audio file not detected
Reported by: | cgbug | Owned by: | |
---|---|---|---|
Priority: | wish | Component: | avformat |
Version: | git-master | Keywords: | ogg wav |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | yes |
Description
Sample:
http://www.datafilehost.com/d/1c2c88bf
MediaInfo correctly detects it as an Ogg file.
FFmpeg output:
ffmpeg version N-86310-g220b24c Copyright (c) 2000-2017 the FFmpeg developers built with gcc 7.1.0 (GCC) configuration: --enable-gpl --enable-version3 --enable-cuda --enable-cuvid --enable-d3d11va --enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-zlib libavutil 55. 63.100 / 55. 63.100 libavcodec 57. 96.101 / 57. 96.101 libavformat 57. 72.101 / 57. 72.101 libavdevice 57. 7.100 / 57. 7.100 libavfilter 6. 90.100 / 6. 90.100 libswscale 4. 7.101 / 4. 7.101 libswresample 2. 8.100 / 2. 8.100 libpostproc 54. 6.100 / 54. 6.100 Taking_Damage_3.SoundNodeWave: Invalid data found when processing input
And after renaming to .ogg:
[ogg @ 00000000002d72c0] Format ogg detected only with low score of 1, misdetection possible! Input #0, ogg, from 'Taking_Damage_3.SoundNodeWave.ogg': Duration: 00:00:01.43, start: 0.000000, bitrate: 416 kb/s Stream #0:0: Audio: vorbis, 22050 Hz, mono, fltp, 37 kb/s Metadata: ENCODER : UnrealEngine3
Attachments (1)
Change History (4)
by , 8 years ago
Attachment: | Taking_Damage_3.SoundNodeWave added |
---|
comment:1 by , 8 years ago
Keywords: | ogg added |
---|---|
Priority: | normal → wish |
Status: | new → open |
Type: | defect → enhancement |
comment:2 by , 8 years ago
Analyzed by developer: | set |
---|---|
Keywords: | wav added |
comment:3 by , 8 years ago
Thanks for the analysis.
Perhaps that custom header information could be used (after reverse engineering)? I don't know how common this custom format is used in games. Maybe not worth the effort.
Note:
See TracTickets
for help on using tickets.
This file is a pcm WAV file and a Vorbis OGG file stitched together with some custom header at the beginning, probably telling whatever handles this file (XCom it seems) where to look for either of them.
ffmpeg is able to parse the ogg part if you force the ogg demuxer because ogg_read_header() will search the whole file until it finds the first OggS tag, something ogg_probe() does not.
The chances for this kind of file to ever be properly supported are low to null. The ogg probe function could perhaps parse the entire probe buffer until it finds the first OggS tag, but even then the pcm WAV part comes first so you'd need a big probe buffer for it.
Just force the ogg demuxer for these files.