]> git.sesse.net Git - ffmpeg/blobdiff - libavformat/internal.h
4xm: prevent overflow during block alignment calculation
[ffmpeg] / libavformat / internal.h
index 49244faf238071f97a5fd8ae6d330938bb443db8..63a1724cfaa4f0dc372b70ce039466ba7a785584 100644 (file)
@@ -130,6 +130,21 @@ struct AVFormatInternal {
      * Timestamp of the end of the shortest stream.
      */
     int64_t shortest_end;
+
+    /**
+     * Whether or not avformat_init_output has already been called
+     */
+    int initialized;
+
+    /**
+     * Whether or not avformat_init_output fully initialized streams
+     */
+    int streams_initialized;
+
+    /**
+     * ID3v2 tag useful for MP3 demuxing
+     */
+    AVDictionary *id3v2_meta;
 };
 
 struct AVStreamInternal {
@@ -647,14 +662,13 @@ int ff_bprint_to_codecpar_extradata(AVCodecParameters *par, struct AVBPrint *buf
 
 /**
  * Find the next packet in the interleaving queue for the given stream.
- * The packet is not removed from the interleaving queue, but only
- * a pointer to it is returned.
- *
- * @param ts_offset the ts difference between packet in the que and the muxer.
+ * The pkt parameter is filled in with the queued packet, including
+ * references to the data (which the caller is not allowed to keep or
+ * modify).
  *
- * @return a pointer to the next packet, or NULL if no packet is queued
- *         for this stream.
+ * @return 0 if a packet was found, a negative value if no packet was found
  */
-const AVPacket *ff_interleaved_peek(AVFormatContext *s, int stream, int64_t *ts_offset);
+int ff_interleaved_peek(AVFormatContext *s, int stream,
+                        AVPacket *pkt, int add_offset);
 
 #endif /* AVFORMAT_INTERNAL_H */