diff options
author | Martin Storsjö <martin@martin.st> | 2012-01-18 15:12:10 +0200 |
---|---|---|
committer | Martin Storsjö <martin@martin.st> | 2012-01-31 00:13:31 +0200 |
commit | 75ab1e62d4187c8ad627835ee8fcf38501477caf (patch) | |
tree | 8a5ba6a46dd0e654d08d0b86c03dfdc21acd3334 /libavformat/mov.c | |
parent | 89f6e8a20c07ad779ca374fdc5b16a22a37a6150 (diff) | |
download | ffmpeg-75ab1e62d4187c8ad627835ee8fcf38501477caf.tar.gz |
movdec: Ignore sample_degradation_priority bits when checking first_sample_flags
This makes the first packet of a track fragment run to get
the keyframe flag set properly if sample_degradation_priority
is nonzero.
This makes the keyframes flag be set properly for ismv files
created by Microsoft.
Signed-off-by: Martin Storsjö <martin@martin.st>
Diffstat (limited to 'libavformat/mov.c')
-rw-r--r-- | libavformat/mov.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libavformat/mov.c b/libavformat/mov.c index b7d8a55933..0ce32e0f8e 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -2250,7 +2250,7 @@ static int mov_read_trun(MOVContext *c, AVIOContext *pb, MOVAtom atom) sc->ctts_data[sc->ctts_count].duration = (flags & 0x800) ? avio_rb32(pb) : 0; sc->ctts_count++; if ((keyframe = st->codec->codec_type == AVMEDIA_TYPE_AUDIO || - (flags & 0x004 && !i && !sample_flags) || sample_flags & 0x2000000)) + (flags & 0x004 && !i && !(sample_flags & 0xffff0000)) || sample_flags & 0x2000000)) distance = 0; av_add_index_entry(st, offset, dts, sample_size, distance, keyframe ? AVINDEX_KEYFRAME : 0); |