summaryrefslogtreecommitdiff
path: root/libavformat/internal.h
diff options
context:
space:
mode:
Diffstat (limited to 'libavformat/internal.h')
-rw-r--r--libavformat/internal.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/libavformat/internal.h b/libavformat/internal.h
index ad300325cb..a434f99633 100644
--- a/libavformat/internal.h
+++ b/libavformat/internal.h
@@ -327,4 +327,22 @@ int ff_framehash_write_header(AVFormatContext *s);
*/
int ff_read_packet(AVFormatContext *s, AVPacket *pkt);
+/**
+ * Interleave a packet per dts in an output media file.
+ *
+ * Packets with pkt->destruct == av_destruct_packet will be freed inside this
+ * function, so they cannot be used after it. Note that calling av_free_packet()
+ * on them is still safe.
+ *
+ * @param s media file handle
+ * @param out the interleaved packet will be output here
+ * @param pkt the input packet
+ * @param flush 1 if no further packets are available as input and all
+ * remaining packets should be output
+ * @return 1 if a packet was output, 0 if no packet could be output,
+ * < 0 if an error occurred
+ */
+int ff_interleave_packet_per_dts(AVFormatContext *s, AVPacket *out,
+ AVPacket *pkt, int flush);
+
#endif /* AVFORMAT_INTERNAL_H */