Ticket #204 (closed enhancement: fixed)
AIFF QDesign2 - decodes incorretly
| Reported by: | ami_stuff | Owned by: | |
|---|---|---|---|
| Priority: | wish | Component: | undetermined |
| Version: | git-master | Keywords: | qdm2 |
| Cc: | Blocked By: | ||
| Blocking: | Reproduced by developer: | yes | |
| Analyzed by developer: | no |
Description
QDesign2, mono, 16bit, 11127 Hz
decodec incorrectly, plays fine with QT player
C:\>ffmpeg -i C:\QDesign2.aif out.wav
ffmpeg version git-N-29815-gde545d2, Copyright (c) 2000-2011 the FFmpeg develope
rs
built on May 11 2011 14:36:19 with gcc 4.5.3
configuration: --enable-gpl --enable-version3 --enable-memalign-hack --enable-
runtime-cpudetect --enable-avisynth --enable-bzlib --enable-frei0r --enable-libo
pencore-amrnb --enable-libopencore-amrwb --enable-libfreetype --enable-libgsm --
enable-libmp3lame --enable-libopenjpeg --enable-librtmp --enable-libschroedinger
--enable-libspeex --enable-libtheora --enable-libvorbis --enable-libvpx --enabl
e-libx264 --enable-libxavs --enable-libxvid --enable-zlib --pkg-config=pkg-confi
g
libavutil 51. 2. 1 / 51. 2. 1
libavcodec 53. 5. 0 / 53. 5. 0
libavformat 53. 0. 3 / 53. 0. 3
libavdevice 53. 0. 0 / 53. 0. 0
libavfilter 2. 5. 0 / 2. 5. 0
libswscale 0. 14. 0 / 0. 14. 0
Input #0, aiff, from 'C:\QDesign2.aif':
Duration: 00:00:00.00, start: 0.000000, bitrate: 24792 kb/s
Stream #0.0: Audio: qdm2, 11127 Hz, 1 channels, s16, 24 kb/s
Output #0, wav, to 'out.wav':
Metadata:
encoder : Lavf53.0.3
Stream #0.0: Audio: pcm_s16le, 11127 Hz, 1 channels, s16, 178 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Press [q] to stop encoding
Multiple frames in a packet from stream 0
Error while decoding stream #0.0
bad superblock type
Error while decoding stream #0.0es
Error while decoding stream #0.0es
Error while decoding stream #0.0es
Error while decoding stream #0.0
Last message repeated 39 times
size= 112kB time=5.15 bitrate= 178.1kbits/s
video:0kB audio:112kB global headers:0kB muxing overhead 0.038365%
Attachments
Change History
comment:1 Changed 2 years ago by cehoyos
- Priority changed from normal to wish
- Status changed from new to open
- Version changed from unspecified to git-master
- Type changed from defect to enhancement
- Reproduced by developer set
Not a regression, afaict.
comment:3 Changed 12 months ago by ami_stuff
more samples
maybe the problem have something to do with:
aiffdec.c:
if (version != AIFF_C_VERSION1 || codec->codec_id == CODEC_ID_PCM_S16BE) {
codec->codec_id = aiff_codec_get_id(codec->bits_per_coded_sample);
codec->bits_per_coded_sample = av_get_bits_per_sample(codec->codec_id);
aiff->block_duration = 1;
} else {
switch (codec->codec_id) {
case CODEC_ID_PCM_F32BE:
case CODEC_ID_PCM_F64BE:
case CODEC_ID_PCM_S16LE:
case CODEC_ID_PCM_ALAW:
case CODEC_ID_PCM_MULAW:
aiff->block_duration = 1;
break;
case CODEC_ID_ADPCM_IMA_QT:
codec->block_align = 34*codec->channels;
break;
case CODEC_ID_MACE3:
codec->block_align = 2*codec->channels;
break;
case CODEC_ID_MACE6:
codec->block_align = 1*codec->channels;
break;
case CODEC_ID_GSM:
codec->block_align = 33;
break;
case CODEC_ID_QCELP:
codec->block_align = 35;
break;
default:
aiff->block_duration = 1;
break;
}
if (codec->block_align > 0)
aiff->block_duration = av_get_audio_frame_duration(codec,
codec->block_align);
?
Note: See
TracTickets for help on using
tickets.



