[FFmpeg-devel] [PATCH 3/4] avformat/samidec:do not include trailing sami

Yayoi yayoi.ukai at gmail.com
Mon Aug 10 06:39:32 CEST 2015


footer in the last packet
---
 libavformat/samidec.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/libavformat/samidec.c b/libavformat/samidec.c
index 948e1ed..bc9b745 100644
--- a/libavformat/samidec.c
+++ b/libavformat/samidec.c
@@ -68,11 +68,17 @@ static int sami_read_header(AVFormatContext *s)
     while (!ff_text_eof(&tr)) {
         AVPacket *sub;
         const int64_t pos = ff_text_pos(&tr) - (c != 0);
-        int is_sync, n = ff_smil_extract_next_text_chunk(&tr, &buf, &c);
+        int is_sync, is_body, n = ff_smil_extract_next_text_chunk(&tr, &buf, &c);
 
         if (n == 0)
             break;
 
+        is_body = !av_strncasecmp(buf.str, "</BODY", 6);
+        if (is_body) {
+             av_bprint_clear(&buf);
+             break;
+        }
+
         is_sync = !av_strncasecmp(buf.str, "<SYNC", 5);
         if (is_sync)
             got_first_sync_point = 1;
-- 
1.8.5.2 (Apple Git-48)



More information about the ffmpeg-devel mailing list