[FFmpeg-devel] [PATCH] lavf/mov.c: Set duration to zero if the duration is UINT_MAX

Yusuke Nakamura muken.the.vfrmaniac at gmail.com
Tue Nov 1 02:16:48 EET 2016


2016-10-27 4:40 GMT+09:00 Sasi Inguva <isasi-at-google.com at ffmpeg.org>:

> Fixes some MP4F files which have duration in mdhd set to UINT_MAX instead
> of zero.
>

What does this patch fix?


>
> Signed-off-by: Sasi Inguva <isasi at google.com>
> ---
>  libavformat/mov.c | 5 +++++
>  1 file changed, 5 insertions(+)
>
> diff --git a/libavformat/mov.c b/libavformat/mov.c
> index 357d800..245e424 100644
> --- a/libavformat/mov.c
> +++ b/libavformat/mov.c
> @@ -1221,6 +1221,11 @@ static int mov_read_mdhd(MOVContext *c, AVIOContext
> *pb, MOVAtom atom)
>      sc->time_scale = avio_rb32(pb);
>      st->duration = (version == 1) ? avio_rb64(pb) : avio_rb32(pb); /*
> duration */
>
> +    if ((version == 1 && st->duration == UINT64_MAX) ||
> +        (version != 1 && st->duration == UINT32_MAX)) {
> +        st->duration = 0;
> +    }
> +
>      lang = avio_rb16(pb); /* language */
>      if (ff_mov_lang_to_iso639(lang, language))
>          av_dict_set(&st->metadata, "language", language, 0);
> --
> 2.8.0.rc3.226.g39d4020
>
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>


More information about the ffmpeg-devel mailing list