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