aboutsummaryrefslogtreecommitdiffstats
path: root/libavformat/mov.c
diff options
context:
space:
mode:
authorCarl Eugen Hoyos <cehoyos@ag.or.at>2012-11-15 14:38:19 +0100
committerCarl Eugen Hoyos <cehoyos@ag.or.at>2012-11-15 14:38:19 +0100
commit850e5c041d7e96e23a7ae2b002f244e4e4acda96 (patch)
treef2b01ae90db45d3262b1545c75868de397243df5 /libavformat/mov.c
parentd53f4471308189cf825091bb5ed95843d59affcd (diff)
downloadffmpeg-850e5c041d7e96e23a7ae2b002f244e4e4acda96.tar.gz
Read QuickTime version 1 audio fields in broken mov files.
Matrox XMIO capture boards write files with major brand "JUNK" and compatible brand "qt " that contain QuickTime version 1 audio fields. Fixes ticket #1881.
Diffstat (limited to 'libavformat/mov.c')
-rw-r--r--libavformat/mov.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libavformat/mov.c b/libavformat/mov.c
index 01c9413759..73077eeac2 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -1397,7 +1397,8 @@ int ff_mov_read_stsd_entries(MOVContext *c, AVIOContext *pb, int entries)
//Read QT version 1 fields. In version 0 these do not exist.
av_dlog(c->fc, "version =%d, isom =%d\n",version,c->isom);
- if (!c->isom) {
+ if (!c->isom ||
+ strstr(av_dict_get(c->fc->metadata, "compatible_brands", NULL, AV_DICT_MATCH_CASE)->value, "qt ")) {
if (version==1) {
sc->samples_per_frame = avio_rb32(pb);
avio_rb32(pb); /* bytes per packet */