]> git.sesse.net Git - ffmpeg/commitdiff
lavf/movenc: use framerate correctly in mov_write_tmcd_tag
authorAnton Khirnov <anton@khirnov.net>
Sun, 4 Apr 2021 18:07:15 +0000 (20:07 +0200)
committerAnton Khirnov <anton@khirnov.net>
Thu, 8 Apr 2021 09:03:15 +0000 (11:03 +0200)
Current code uses its inverse.

libavformat/movenc.c

index c00e38e72f75b3bc9f1c6f7ab8e49279846de2da..0b620a802de7c1b0b5fa1dee0ee7b348f42abbbc 100644 (file)
@@ -2353,8 +2353,8 @@ static int mov_write_tmcd_tag(AVIOContext *pb, MOVTrack *track)
         return AVERROR(EINVAL);
 #endif
     } else {
-        frame_duration = av_rescale(track->timescale, track->st->avg_frame_rate.num, track->st->avg_frame_rate.den);
-        nb_frames      = ROUNDED_DIV(track->st->avg_frame_rate.den, track->st->avg_frame_rate.num);
+        frame_duration = av_rescale(track->timescale, track->st->avg_frame_rate.den, track->st->avg_frame_rate.num);
+        nb_frames      = ROUNDED_DIV(track->st->avg_frame_rate.num, track->st->avg_frame_rate.den);
     }
 
     if (nb_frames > 255) {
@@ -6234,7 +6234,7 @@ static int mov_create_timecode_track(AVFormatContext *s, int index, int src_inde
         return AVERROR(ENOMEM);
     track->par->codec_type = AVMEDIA_TYPE_DATA;
     track->par->codec_tag  = track->tag;
-    track->st->avg_frame_rate = av_inv_q(rate);
+    track->st->avg_frame_rate = rate;
 
     /* the tmcd track just contains one packet with the frame number */
     pkt->data = data;