- 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);