lavfi/framesync: use av_gcd_q().

This commit is contained in:
Nicolas George 2020-04-16 21:36:35 +02:00
parent 6b65c4ec54
commit 2a52f19a91
1 changed files with 2 additions and 12 deletions

View File

@ -117,7 +117,6 @@ static void framesync_sync_level_update(FFFrameSync *fs)
int ff_framesync_configure(FFFrameSync *fs)
{
unsigned i;
int64_t gcd, lcm;
if (!fs->opt_repeatlast || fs->opt_eof_action == EOF_ACTION_PASS) {
fs->opt_repeatlast = 0;
@ -142,17 +141,8 @@ int ff_framesync_configure(FFFrameSync *fs)
for (i = 0; i < fs->nb_in; i++) {
if (fs->in[i].sync) {
if (fs->time_base.num) {
gcd = av_gcd(fs->time_base.den, fs->in[i].time_base.den);
lcm = (fs->time_base.den / gcd) * fs->in[i].time_base.den;
if (lcm < AV_TIME_BASE / 2) {
fs->time_base.den = lcm;
fs->time_base.num = av_gcd(fs->time_base.num,
fs->in[i].time_base.num);
} else {
fs->time_base.num = 1;
fs->time_base.den = AV_TIME_BASE;
break;
}
fs->time_base = av_gcd_q(fs->time_base, fs->in[i].time_base,
AV_TIME_BASE / 2, AV_TIME_BASE_Q);
} else {
fs->time_base = fs->in[i].time_base;
}