summaryrefslogtreecommitdiff
path: root/libavformat/aiffdec.c
diff options
context:
space:
mode:
authorCarl Eugen Hoyos <cehoyos@ag.or.at>2016-10-11 09:49:35 +0200
committerCarl Eugen Hoyos <cehoyos@ag.or.at>2016-10-11 09:49:35 +0200
commit4147d8efe5cc39d18b744a866e0cddd1978a4d00 (patch)
tree11607c0512e59a10cbbb7efb75bd8e1e62146b4b /libavformat/aiffdec.c
parentd0c1b9821aa1c6b8efd27e022ee4aefe9fc989b0 (diff)
downloadffmpeg-4147d8efe5cc39d18b744a866e0cddd1978a4d00.tar.gz
lavf/aiffdec: Default to full rate qcelp as QT does.
Fixes decoding of the output file from ticket #4009.
Diffstat (limited to 'libavformat/aiffdec.c')
-rw-r--r--libavformat/aiffdec.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libavformat/aiffdec.c b/libavformat/aiffdec.c
index 9bff5656f8..cd916f9108 100644
--- a/libavformat/aiffdec.c
+++ b/libavformat/aiffdec.c
@@ -337,7 +337,10 @@ static int aiff_read_header(AVFormatContext *s)
}
got_sound:
- if (!st->codecpar->block_align) {
+ if (!st->codecpar->block_align && st->codecpar->codec_id == AV_CODEC_ID_QCELP) {
+ av_log(s, AV_LOG_WARNING, "qcelp without wave chunk, assuming full rate\n");
+ st->codecpar->block_align = 35;
+ } else if (!st->codecpar->block_align) {
av_log(s, AV_LOG_ERROR, "could not find COMM tag or invalid block_align value\n");
return -1;
}