]> git.sesse.net Git - ffmpeg/commitdiff
avformat/subtitles: make dropping duplicate events optional
authorwm4 <nfxjfg@googlemail.com>
Mon, 21 Sep 2015 11:42:48 +0000 (13:42 +0200)
committerwm4 <nfxjfg@googlemail.com>
Mon, 21 Sep 2015 11:42:48 +0000 (13:42 +0200)
libavformat/subtitles.c
libavformat/subtitles.h

index 192043f91771ebd95f791c26aab80d7b6a56f26d..bb8976682dc27a1a29f3aabea8d421a6253cdb4a 100644 (file)
@@ -204,7 +204,8 @@ void ff_subtitles_queue_finalize(void *log_ctx, FFDemuxSubtitlesQueue *q)
         if (q->subs[i].duration == -1 && i < q->nb_subs - 1)
             q->subs[i].duration = q->subs[i + 1].pts - q->subs[i].pts;
 
-    drop_dups(log_ctx, q);
+    if (!q->keep_duplicates)
+        drop_dups(log_ctx, q);
 }
 
 int ff_subtitles_queue_read_packet(FFDemuxSubtitlesQueue *q, AVPacket *pkt)
index c70f6fffde6a28999bd8d9f78ef9f29dfdff3a90..ca78db224d52f26fa4e8d7dffce68b05df579594 100644 (file)
@@ -105,6 +105,7 @@ typedef struct {
     int allocated_size;     ///< allocated size for subs
     int current_sub_idx;    ///< current position for the read packet callback
     enum sub_sort sort;     ///< sort method to use when finalizing subtitles
+    int keep_duplicates;    ///< set to 1 to keep duplicated subtitle events
 } FFDemuxSubtitlesQueue;
 
 /**