[FFmpeg-devel] [PATCH 19/20] avformat/lrcenc: Unify writing timestamps
Andreas Rheinhardt
andreas.rheinhardt at outlook.com
Sat Oct 2 00:08:36 EEST 2021
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
---
libavformat/lrcenc.c | 21 ++++++++-------------
1 file changed, 8 insertions(+), 13 deletions(-)
diff --git a/libavformat/lrcenc.c b/libavformat/lrcenc.c
index 21cb3860ab..4fa14ea427 100644
--- a/libavformat/lrcenc.c
+++ b/libavformat/lrcenc.c
@@ -111,19 +111,14 @@ static int lrc_write_packet(AVFormatContext *s, AVPacket *pkt)
"Subtitle starts with '[', may cause problems with LRC format.\n");
}
- if(pkt->pts >= 0) {
- avio_printf(s->pb, "[%02"PRId64":%02"PRId64".%02"PRId64"]",
- (pkt->pts / 6000),
- ((pkt->pts / 100) % 60),
- (pkt->pts % 100));
- } else {
- /* Offset feature of LRC can easily make pts negative,
- * we just output it directly and let the player drop it. */
- avio_printf(s->pb, "[-%02"PRId64":%02"PRId64".%02"PRId64"]",
- (-pkt->pts) / 6000,
- ((-pkt->pts) / 100) % 60,
- (-pkt->pts) % 100);
- }
+ /* Offset feature of LRC can easily make pts negative,
+ * we just output it directly and let the player drop it. */
+ avio_write(s->pb, "[-", 1 + (pkt->pts < 0));
+ avio_printf(s->pb, "%02"PRIu64":%02"PRIu64".%02"PRIu64"]",
+ (FFABS64U(pkt->pts) / 6000),
+ ((FFABS64U(pkt->pts) / 100) % 60),
+ (FFABS64U(pkt->pts) % 100));
+
avio_write(s->pb, line, size);
avio_w8(s->pb, '\n');
line = next_line;
--
2.30.2
More information about the ffmpeg-devel
mailing list