[FFmpeg-cvslog] avformat/movenc: initialize pts/dts of timecode packet
Limin Wang
git at videolan.org
Tue Mar 22 17:07:20 EET 2022
ffmpeg | branch: master | Limin Wang <lance.lmwang at gmail.com> | Mon Mar 14 10:05:42 2022 +0800| [fc8a6a6f4cc3d9b5ca278d181bba97297dd8ee6a] | committer: Limin Wang
avformat/movenc: initialize pts/dts of timecode packet
Fix below error message when timecode packet is written.
"Application provided duration: -9223372036854775808 / timestamp: -9223372036854775808 is out of range for mov/mp4 format"
try to reproduce by:
ffmpeg -y -f lavfi -i color -metadata "timecode=00:00:00:00" -t 1 test.mov
Note although error message is printed, the timecode packet will be written anyway. So
the patch 2/2 will try to change the log level to warning.
Fixes ticket #9488
Signed-off-by: Limin Wang <lance.lmwang at gmail.com>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=fc8a6a6f4cc3d9b5ca278d181bba97297dd8ee6a
---
libavformat/movenc.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/libavformat/movenc.c b/libavformat/movenc.c
index 2d521cb362..4e9ce1b952 100644
--- a/libavformat/movenc.c
+++ b/libavformat/movenc.c
@@ -6359,6 +6359,7 @@ static int mov_create_timecode_track(AVFormatContext *s, int index, int src_inde
pkt->data = data;
pkt->stream_index = index;
pkt->flags = AV_PKT_FLAG_KEY;
+ pkt->pts = pkt->dts = av_rescale_q(tc.start, av_inv_q(rate), (AVRational){1,mov->movie_timescale});
pkt->size = 4;
AV_WB32(pkt->data, tc.start);
ret = ff_mov_write_packet(s, pkt);
More information about the ffmpeg-cvslog
mailing list