Commit 7929e22b authored by Anton Khirnov's avatar Anton Khirnov

lavf: don't guess r_frame_rate from either stream or codec timebase.

Neither of those is guaranteed to be connected to framerate in any way
(if it even exists).

Fixes bug 56.
parent 13f6917c
...@@ -2390,17 +2390,6 @@ int avformat_find_stream_info(AVFormatContext *ic, AVDictionary **options) ...@@ -2390,17 +2390,6 @@ int avformat_find_stream_info(AVFormatContext *ic, AVDictionary **options)
if (num && (!st->r_frame_rate.num || (double)num/(12*1001) < 1.01 * av_q2d(st->r_frame_rate))) if (num && (!st->r_frame_rate.num || (double)num/(12*1001) < 1.01 * av_q2d(st->r_frame_rate)))
av_reduce(&st->r_frame_rate.num, &st->r_frame_rate.den, num, 12*1001, INT_MAX); av_reduce(&st->r_frame_rate.num, &st->r_frame_rate.den, num, 12*1001, INT_MAX);
} }
if (!st->r_frame_rate.num){
if( st->codec->time_base.den * (int64_t)st->time_base.num
<= st->codec->time_base.num * st->codec->ticks_per_frame * (int64_t)st->time_base.den){
st->r_frame_rate.num = st->codec->time_base.den;
st->r_frame_rate.den = st->codec->time_base.num * st->codec->ticks_per_frame;
}else{
st->r_frame_rate.num = st->time_base.den;
st->r_frame_rate.den = st->time_base.num;
}
}
}else if(st->codec->codec_type == AVMEDIA_TYPE_AUDIO) { }else if(st->codec->codec_type == AVMEDIA_TYPE_AUDIO) {
if(!st->codec->bits_per_coded_sample) if(!st->codec->bits_per_coded_sample)
st->codec->bits_per_coded_sample= av_get_bits_per_sample(st->codec->codec_id); st->codec->bits_per_coded_sample= av_get_bits_per_sample(st->codec->codec_id);
......
...@@ -118,4 +118,4 @@ ...@@ -118,4 +118,4 @@
0, 48750000, 48750000, 0, 37440, 0xf0fe8c1c 0, 48750000, 48750000, 0, 37440, 0xf0fe8c1c
0, 49170000, 49170000, 0, 37440, 0xc0036222 0, 49170000, 49170000, 0, 37440, 0xc0036222
0, 49590000, 49590000, 0, 37440, 0x3058385c 0, 49590000, 49590000, 0, 37440, 0x3058385c
0, 50006672, 50006672, 0, 37440, 0x68141016 0, 49798332, 49798332, 0, 37440, 0x68141016
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