]> git.sesse.net Git - ffmpeg/blobdiff - libavformat/asf.h
qsv: Default PicStruct to progressive
[ffmpeg] / libavformat / asf.h
index b56345993d82480d69b620ef29080e11ad2b466a..6130e7aaa6fe3b2e77564f14f33f87bc21810fed 100644 (file)
 #include <stdint.h>
 #include "avformat.h"
 #include "metadata.h"
+#include "riff.h"
 
 #define PACKET_SIZE 3200
 
-typedef struct {
-    int num;
-    unsigned char seq;
-    /* use for reading */
-    AVPacket pkt;
-    int frag_offset;
-    int timestamp;
-    int64_t duration;
-
-    int ds_span;                /* descrambling  */
-    int ds_packet_size;
-    int ds_chunk_size;
-
-    int64_t packet_pos;
-
-    uint16_t stream_language_index;
-
-} ASFStream;
-
-typedef uint8_t ff_asf_guid[16];
-
-typedef struct {
+typedef struct ASFMainHeader {
     ff_asf_guid guid;                  ///< generated by client computer
     uint64_t file_size;         /**< in bytes
                                  *   invalid if broadcasting */
@@ -60,7 +40,7 @@ typedef struct {
                                  *   invalid if broadcasting (could be ignored) */
     uint32_t preroll;           /**< timestamp of the first packet, in milliseconds
                                  *   if nonzero - subtract from time */
-    uint32_t ignore;            ///< preroll is 64bit - but let's just ignore it
+    uint32_t ignore;            ///< preroll is 64 bits - but let's just ignore it
     uint32_t flags;             /**< 0x01 - broadcast
                                  *   0x02 - seekable
                                  *   rest is reserved should be 0 */
@@ -74,9 +54,11 @@ typedef struct {
 } ASFMainHeader;
 
 
-typedef struct {
+typedef struct ASFIndex {
     uint32_t packet_number;
     uint16_t packet_count;
+    uint64_t send_time;
+    uint64_t offset;
 } ASFIndex;
 
 extern const ff_asf_guid ff_asf_header;
@@ -101,7 +83,9 @@ extern const ff_asf_guid ff_asf_simple_index_header;
 extern const ff_asf_guid ff_asf_ext_stream_embed_stream_header;
 extern const ff_asf_guid ff_asf_ext_stream_audio_stream;
 extern const ff_asf_guid ff_asf_metadata_header;
+extern const ff_asf_guid ff_asf_metadata_library_header;
 extern const ff_asf_guid ff_asf_marker_header;
+extern const ff_asf_guid ff_asf_reserved_4;
 extern const ff_asf_guid ff_asf_my_guid;
 extern const ff_asf_guid ff_asf_language_guid;
 extern const ff_asf_guid ff_asf_content_encryption;
@@ -173,11 +157,4 @@ extern const AVMetadataConv ff_asf_metadata_conv[];
 
 extern AVInputFormat ff_asf_demuxer;
 
-static av_always_inline int ff_guidcmp(const void *g1, const void *g2)
-{
-    return memcmp(g1, g2, sizeof(ff_asf_guid));
-}
-
-void ff_get_guid(AVIOContext *s, ff_asf_guid *g);
-
 #endif /* AVFORMAT_ASF_H */