mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-13 21:28:01 +02:00
ffmpeg: allow using the r_frame_rate as fundamental timebase for stream copy in avi
Fixes Ticket1434 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
157f956973
commit
3adc9c9996
10
ffmpeg.c
10
ffmpeg.c
@ -2988,7 +2988,15 @@ static int transcode_init(void)
|
|||||||
* overhead
|
* overhead
|
||||||
*/
|
*/
|
||||||
if(!strcmp(oc->oformat->name, "avi")) {
|
if(!strcmp(oc->oformat->name, "avi")) {
|
||||||
if ( copy_tb<0 && av_q2d(icodec->time_base)*icodec->ticks_per_frame > 2*av_q2d(ist->st->time_base)
|
if ( copy_tb<0 && av_q2d(ist->st->r_frame_rate) >= av_q2d(ist->st->avg_frame_rate)
|
||||||
|
&& 0.5/av_q2d(ist->st->r_frame_rate) > av_q2d(ist->st->time_base)
|
||||||
|
&& 0.5/av_q2d(ist->st->r_frame_rate) > av_q2d(icodec->time_base)
|
||||||
|
&& av_q2d(ist->st->time_base) < 1.0/500 && av_q2d(icodec->time_base) < 1.0/500
|
||||||
|
|| copy_tb==2){
|
||||||
|
codec->time_base.num = ist->st->r_frame_rate.den;
|
||||||
|
codec->time_base.den = 2*ist->st->r_frame_rate.num;
|
||||||
|
codec->ticks_per_frame = 2;
|
||||||
|
} else if ( copy_tb<0 && av_q2d(icodec->time_base)*icodec->ticks_per_frame > 2*av_q2d(ist->st->time_base)
|
||||||
&& av_q2d(ist->st->time_base) < 1.0/500
|
&& av_q2d(ist->st->time_base) < 1.0/500
|
||||||
|| copy_tb==0){
|
|| copy_tb==0){
|
||||||
codec->time_base = icodec->time_base;
|
codec->time_base = icodec->time_base;
|
||||||
|
Loading…
Reference in New Issue
Block a user