|
|
@ -72,7 +72,7 @@ typedef enum { |
|
|
|
OPSonyOpt, /* FATE sample, violates the spec in places */ |
|
|
|
OPSonyOpt, /* FATE sample, violates the spec in places */ |
|
|
|
} MXFOP; |
|
|
|
} MXFOP; |
|
|
|
|
|
|
|
|
|
|
|
typedef struct { |
|
|
|
typedef struct MXFPartition { |
|
|
|
int closed; |
|
|
|
int closed; |
|
|
|
int complete; |
|
|
|
int complete; |
|
|
|
MXFPartitionType type; |
|
|
|
MXFPartitionType type; |
|
|
@ -88,13 +88,13 @@ typedef struct { |
|
|
|
int pack_length; |
|
|
|
int pack_length; |
|
|
|
} MXFPartition; |
|
|
|
} MXFPartition; |
|
|
|
|
|
|
|
|
|
|
|
typedef struct { |
|
|
|
typedef struct MXFCryptoContext { |
|
|
|
UID uid; |
|
|
|
UID uid; |
|
|
|
enum MXFMetadataSetType type; |
|
|
|
enum MXFMetadataSetType type; |
|
|
|
UID source_container_ul; |
|
|
|
UID source_container_ul; |
|
|
|
} MXFCryptoContext; |
|
|
|
} MXFCryptoContext; |
|
|
|
|
|
|
|
|
|
|
|
typedef struct { |
|
|
|
typedef struct MXFStructuralComponent { |
|
|
|
UID uid; |
|
|
|
UID uid; |
|
|
|
enum MXFMetadataSetType type; |
|
|
|
enum MXFMetadataSetType type; |
|
|
|
UID source_package_uid; |
|
|
|
UID source_package_uid; |
|
|
@ -104,7 +104,7 @@ typedef struct { |
|
|
|
int source_track_id; |
|
|
|
int source_track_id; |
|
|
|
} MXFStructuralComponent; |
|
|
|
} MXFStructuralComponent; |
|
|
|
|
|
|
|
|
|
|
|
typedef struct { |
|
|
|
typedef struct MXFSequence { |
|
|
|
UID uid; |
|
|
|
UID uid; |
|
|
|
enum MXFMetadataSetType type; |
|
|
|
enum MXFMetadataSetType type; |
|
|
|
UID data_definition_ul; |
|
|
|
UID data_definition_ul; |
|
|
@ -114,7 +114,7 @@ typedef struct { |
|
|
|
uint8_t origin; |
|
|
|
uint8_t origin; |
|
|
|
} MXFSequence; |
|
|
|
} MXFSequence; |
|
|
|
|
|
|
|
|
|
|
|
typedef struct { |
|
|
|
typedef struct MXFTrack { |
|
|
|
UID uid; |
|
|
|
UID uid; |
|
|
|
enum MXFMetadataSetType type; |
|
|
|
enum MXFMetadataSetType type; |
|
|
|
MXFSequence *sequence; /* mandatory, and only one */ |
|
|
|
MXFSequence *sequence; /* mandatory, and only one */ |
|
|
@ -127,7 +127,7 @@ typedef struct { |
|
|
|
int64_t original_duration; /* st->duration in SampleRate/EditRate units */ |
|
|
|
int64_t original_duration; /* st->duration in SampleRate/EditRate units */ |
|
|
|
} MXFTrack; |
|
|
|
} MXFTrack; |
|
|
|
|
|
|
|
|
|
|
|
typedef struct { |
|
|
|
typedef struct MXFDescriptor { |
|
|
|
UID uid; |
|
|
|
UID uid; |
|
|
|
enum MXFMetadataSetType type; |
|
|
|
enum MXFMetadataSetType type; |
|
|
|
UID essence_container_ul; |
|
|
|
UID essence_container_ul; |
|
|
@ -153,7 +153,7 @@ typedef struct { |
|
|
|
enum AVPixelFormat pix_fmt; |
|
|
|
enum AVPixelFormat pix_fmt; |
|
|
|
} MXFDescriptor; |
|
|
|
} MXFDescriptor; |
|
|
|
|
|
|
|
|
|
|
|
typedef struct { |
|
|
|
typedef struct MXFIndexTableSegment { |
|
|
|
UID uid; |
|
|
|
UID uid; |
|
|
|
enum MXFMetadataSetType type; |
|
|
|
enum MXFMetadataSetType type; |
|
|
|
int edit_unit_byte_count; |
|
|
|
int edit_unit_byte_count; |
|
|
@ -168,7 +168,7 @@ typedef struct { |
|
|
|
int nb_index_entries; |
|
|
|
int nb_index_entries; |
|
|
|
} MXFIndexTableSegment; |
|
|
|
} MXFIndexTableSegment; |
|
|
|
|
|
|
|
|
|
|
|
typedef struct { |
|
|
|
typedef struct MXFPackage { |
|
|
|
UID uid; |
|
|
|
UID uid; |
|
|
|
enum MXFMetadataSetType type; |
|
|
|
enum MXFMetadataSetType type; |
|
|
|
UID package_uid; |
|
|
|
UID package_uid; |
|
|
@ -178,13 +178,13 @@ typedef struct { |
|
|
|
UID descriptor_ref; |
|
|
|
UID descriptor_ref; |
|
|
|
} MXFPackage; |
|
|
|
} MXFPackage; |
|
|
|
|
|
|
|
|
|
|
|
typedef struct { |
|
|
|
typedef struct MXFMetadataSet { |
|
|
|
UID uid; |
|
|
|
UID uid; |
|
|
|
enum MXFMetadataSetType type; |
|
|
|
enum MXFMetadataSetType type; |
|
|
|
} MXFMetadataSet; |
|
|
|
} MXFMetadataSet; |
|
|
|
|
|
|
|
|
|
|
|
/* decoded index table */ |
|
|
|
/* decoded index table */ |
|
|
|
typedef struct { |
|
|
|
typedef struct MXFIndexTable { |
|
|
|
int index_sid; |
|
|
|
int index_sid; |
|
|
|
int body_sid; |
|
|
|
int body_sid; |
|
|
|
int nb_ptses; /* number of PTSes or total duration of index */ |
|
|
|
int nb_ptses; /* number of PTSes or total duration of index */ |
|
|
@ -195,7 +195,7 @@ typedef struct { |
|
|
|
AVIndexEntry *fake_index; /* used for calling ff_index_search_timestamp() */ |
|
|
|
AVIndexEntry *fake_index; /* used for calling ff_index_search_timestamp() */ |
|
|
|
} MXFIndexTable; |
|
|
|
} MXFIndexTable; |
|
|
|
|
|
|
|
|
|
|
|
typedef struct { |
|
|
|
typedef struct MXFContext { |
|
|
|
MXFPartition *partitions; |
|
|
|
MXFPartition *partitions; |
|
|
|
unsigned partitions_count; |
|
|
|
unsigned partitions_count; |
|
|
|
MXFOP op; |
|
|
|
MXFOP op; |
|
|
@ -230,7 +230,7 @@ enum MXFWrappingScheme { |
|
|
|
/* NOTE: klv_offset is not set (-1) for local keys */ |
|
|
|
/* NOTE: klv_offset is not set (-1) for local keys */ |
|
|
|
typedef int MXFMetadataReadFunc(void *arg, AVIOContext *pb, int tag, int size, UID uid, int64_t klv_offset); |
|
|
|
typedef int MXFMetadataReadFunc(void *arg, AVIOContext *pb, int tag, int size, UID uid, int64_t klv_offset); |
|
|
|
|
|
|
|
|
|
|
|
typedef struct { |
|
|
|
typedef struct MXFMetadataReadTableEntry { |
|
|
|
const UID key; |
|
|
|
const UID key; |
|
|
|
MXFMetadataReadFunc *read; |
|
|
|
MXFMetadataReadFunc *read; |
|
|
|
int ctx_size; |
|
|
|
int ctx_size; |
|
|
|