lavc/srtenc: do not add trailing line breaks with SubRip.
authorClément Bœsch <ubitux@gmail.com>
Sat, 29 Dec 2012 23:56:48 +0000 (00:56 +0100)
committerClément Bœsch <ubitux@gmail.com>
Sun, 30 Dec 2012 20:39:36 +0000 (21:39 +0100)
The SRT muxer is reponsible for separating events with two line breaks,
there is no need to add more than necessary. Similarly, other muxers
(such as Matroska) are not supposed to add line breaks at the end of the
payload.

libavcodec/srtenc.c
tests/ref/fate/sub-subripenc

index 739645b..d72d338 100644 (file)
@@ -218,8 +218,11 @@ static void srt_move_cb(void *priv, int x1, int y1, int x2, int y2,
 
 static void srt_end_cb(void *priv)
 {
+    SRTContext *s = priv;
+
     srt_stack_push_pop(priv, 0, 1);
-    srt_print(priv, "\r\n\r\n");
+    if (s->avctx->codec->id == AV_CODEC_ID_SRT)
+        srt_print(priv, "\r\n\r\n");
 }
 
 static const ASSCodesCallbacks srt_callbacks = {
index 7daa4f5..9666e9b 100644 (file)
@@ -1 +1 @@
-bd520f85238abf9df292374aed54681a
+b7cb0eeb34af0da364e29b238f0634ae