diff --git a/libavformat/mov.c b/libavformat/mov.c index 7449925d23e56cf0a9e85c81babf00653b5ebf2c..39ebb8ef56e2947baf9cbcb138c716759b388a86 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -1063,6 +1063,15 @@ static int mov_read_stsd(MOVContext *c, ByteIOContext *pb, MOV_atom_t atom) get_be32(pb); /* bytes per packet */ get_be32(pb); /* bytes per frame */ get_be32(pb); /* bytes per sample */ + } else if(version==2) { + get_be32(pb); /* sizeof struct only */ + st->codec->sample_rate = av_int2dbl(get_be64(pb)); /* float 64 */ + st->codec->channels = get_be32(pb); + get_be32(pb); /* always 0x7F000000 */ + get_be32(pb); /* bits per channel if sound is uncompressed */ + get_be32(pb); /* lcpm format specific flag */ + get_be32(pb); /* bytes per audio packet if constant */ + get_be32(pb); /* lpcm frames per audio packet if constant */ } } else { /* other codec type, just skip (rtp, mp4s, tmcd ...) */