diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2021-12-06 11:38:39 +0100 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2021-12-16 22:31:13 +0100 |
commit | bf1e93bdc9aaa4fd5c231030b5368aae0df018ee (patch) | |
tree | 3bc75143d5eff0ad0ea85a5b7b66b3716577ff26 /libavformat/vivo.c | |
parent | 7b24615565fd488e7e3a435102979a5ea85fe2fe (diff) | |
download | ffmpeg-bf1e93bdc9aaa4fd5c231030b5368aae0df018ee.tar.gz |
avformat/vivo: Favor setting fps from explicit fractions
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavformat/vivo.c')
-rw-r--r-- | libavformat/vivo.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/libavformat/vivo.c b/libavformat/vivo.c index 6447ec7ee8..2a08e1df03 100644 --- a/libavformat/vivo.c +++ b/libavformat/vivo.c @@ -121,7 +121,7 @@ static int vivo_get_packet_header(AVFormatContext *s) static int vivo_read_header(AVFormatContext *s) { VivoContext *vivo = s->priv_data; - AVRational fps = { 1, 25}; + AVRational fps = { 0 }; AVStream *ast, *vst; unsigned char *line, *line_end, *key, *value; long value_int; @@ -212,13 +212,16 @@ static int vivo_read_header(AVFormatContext *s) return AVERROR_INVALIDDATA; value_used = 1; - fps = av_inv_q(av_d2q(d, 10000)); + if (!fps.num && !fps.den) + fps = av_inv_q(av_d2q(d, 10000)); } if (!value_used) av_dict_set(&s->metadata, key, value, 0); } } + if (!fps.num || !fps.den) + fps = (AVRational){ 1, 25 }; avpriv_set_pts_info(ast, 64, 1, ast->codecpar->sample_rate); avpriv_set_pts_info(vst, 64, fps.num, fps.den); |