Commit 35504c08 authored by bcoudurier's avatar bcoudurier

set wrong dts for iMovie created files which has huge ctts delay, fix ffmpeg_sample.m4v

git-svn-id: file:///var/local/repositories/ffmpeg/trunk@18181 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
parent d4def72d
...@@ -1281,6 +1281,12 @@ static void mov_build_index(MOVContext *mov, AVStream *st) ...@@ -1281,6 +1281,12 @@ static void mov_build_index(MOVContext *mov, AVStream *st)
int rescaled = sc->time_offset < 0 ? av_rescale(sc->time_offset, sc->time_scale, mov->time_scale) : sc->time_offset; int rescaled = sc->time_offset < 0 ? av_rescale(sc->time_offset, sc->time_scale, mov->time_scale) : sc->time_offset;
assert(sc->time_offset % sc->time_rate == 0); assert(sc->time_offset % sc->time_rate == 0);
current_dts = - (rescaled / sc->time_rate); current_dts = - (rescaled / sc->time_rate);
if (sc->ctts_data && sc->ctts_data[0].duration / sc->stts_data[0].duration > 16) {
/* more than 16 frames delay, dts are likely wrong
this happens with files created by iMovie */
sc->wrong_dts = 1;
st->codec->has_b_frames = 1;
}
} }
/* only use old uncompressed audio chunk demuxing when stts specifies it */ /* only use old uncompressed audio chunk demuxing when stts specifies it */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment