]> git.sesse.net Git - ffmpeg/blobdiff - libavformat/oggdec.h
lavr: call mix_function_init() in ff_audio_mix_set_matrix()
[ffmpeg] / libavformat / oggdec.h
index e7d102273435e14e207cf8c7ac83f931b9a9d523..d11ff9f5916188b52ac4dbc63e91de901502746d 100644 (file)
@@ -51,6 +51,11 @@ struct ogg_codec {
      * 0 if granule is the end time of the associated packet.
      */
     int granule_is_start;
+    /**
+     * Number of expected headers
+     */
+    int nb_header;
+    void (*cleanup)(AVFormatContext *s, int idx);
 };
 
 struct ogg_stream {
@@ -63,6 +68,7 @@ struct ogg_stream {
     unsigned int pduration;
     uint32_t serial;
     uint64_t granule;
+    uint64_t start_granule;
     int64_t lastpts;
     int64_t lastdts;
     int64_t sync_pos;   ///< file offset of the first page needed to reconstruct the current packet
@@ -75,6 +81,7 @@ struct ogg_stream {
     int incomplete; ///< whether we're expecting a continuation in the next page
     int page_end;   ///< current packet is the last one completed in the page
     int keyframe_seek;
+    int nb_header; ///< set to the number of parsed headers
     void *private;
 };
 
@@ -98,6 +105,9 @@ struct ogg {
 #define OGG_FLAG_BOS  2
 #define OGG_FLAG_EOS  4
 
+#define OGG_NOGRANULE_VALUE -1ull
+
+extern const struct ogg_codec ff_celt_codec;
 extern const struct ogg_codec ff_dirac_codec;
 extern const struct ogg_codec ff_flac_codec;
 extern const struct ogg_codec ff_ogm_audio_codec;