FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Functions | Variables
mxfenc.c File Reference
#include <inttypes.h>
#include <math.h>
#include <time.h>
#include "libavutil/opt.h"
#include "libavutil/random_seed.h"
#include "libavutil/timecode.h"
#include "libavutil/avassert.h"
#include "libavcodec/bytestream.h"
#include "libavcodec/dnxhddata.h"
#include "audiointerleave.h"
#include "avformat.h"
#include "avio_internal.h"
#include "internal.h"
#include "mxf.h"
#include "config.h"

Go to the source code of this file.

Data Structures

struct  MXFLocalTagPair
 
struct  MXFIndexEntry
 
struct  MXFStreamContext
 
struct  MXFContainerEssenceEntry
 
struct  MXFContext
 

Macros

#define EDIT_UNITS_PER_BODY   250
 
#define KAG_SIZE   512
 
#define DESCRIPTOR_COUNT(essence_container_count)   (essence_container_count > 1 ? essence_container_count + 1 : essence_container_count)
 

Functions

static void mxf_write_wav_desc (AVFormatContext *s, AVStream *st)
 
static void mxf_write_aes3_desc (AVFormatContext *s, AVStream *st)
 
static void mxf_write_mpegvideo_desc (AVFormatContext *s, AVStream *st)
 
static void mxf_write_cdci_desc (AVFormatContext *s, AVStream *st)
 
static void mxf_write_generic_sound_desc (AVFormatContext *s, AVStream *st)
 
static void mxf_write_uuid (AVIOContext *pb, enum MXFMetadataSetType type, int value)
 
static void mxf_write_umid (AVFormatContext *s, int type)
 
static void mxf_write_refs_count (AVIOContext *pb, int ref_count)
 
static int klv_ber_length (uint64_t len)
 
static int klv_encode_ber_length (AVIOContext *pb, uint64_t len)
 
static void klv_encode_ber4_length (AVIOContext *pb, int len)
 
static int mxf_get_essence_container_ul_index (enum AVCodecID id)
 
static void mxf_write_primer_pack (AVFormatContext *s)
 
static void mxf_write_local_tag (AVIOContext *pb, int size, int tag)
 
static void mxf_write_metadata_key (AVIOContext *pb, unsigned int value)
 
static void mxf_free (AVFormatContext *s)
 
static const MXFCodecULmxf_get_data_definition_ul (int type)
 
static void mxf_write_essence_container_refs (AVFormatContext *s)
 
static void mxf_write_preface (AVFormatContext *s)
 
static void mxf_write_local_tag_utf16 (AVIOContext *pb, int tag, const char *value)
 
static void mxf_write_identification (AVFormatContext *s)
 
static void mxf_write_content_storage (AVFormatContext *s)
 
static void mxf_write_track (AVFormatContext *s, AVStream *st, enum MXFMetadataSetType type)
 
static void mxf_write_common_fields (AVFormatContext *s, AVStream *st)
 
static void mxf_write_sequence (AVFormatContext *s, AVStream *st, enum MXFMetadataSetType type)
 
static void mxf_write_timecode_component (AVFormatContext *s, AVStream *st, enum MXFMetadataSetType type)
 
static void mxf_write_structural_component (AVFormatContext *s, AVStream *st, enum MXFMetadataSetType type)
 
static void mxf_write_multi_descriptor (AVFormatContext *s)
 
static void mxf_write_generic_desc (AVFormatContext *s, AVStream *st, const UID key, unsigned size)
 
static void mxf_write_cdci_common (AVFormatContext *s, AVStream *st, const UID key, unsigned size)
 
static void mxf_write_generic_sound_common (AVFormatContext *s, AVStream *st, const UID key, unsigned size)
 
static void mxf_write_wav_common (AVFormatContext *s, AVStream *st, const UID key, unsigned size)
 
static void mxf_write_package (AVFormatContext *s, enum MXFMetadataSetType type)
 
static int mxf_write_essence_container_data (AVFormatContext *s)
 
static int mxf_write_header_metadata_sets (AVFormatContext *s)
 
static unsigned klv_fill_size (uint64_t size)
 
static void mxf_write_index_table_segment (AVFormatContext *s)
 
static void mxf_write_klv_fill (AVFormatContext *s)
 
static int mxf_write_partition (AVFormatContext *s, int bodysid, int indexsid, const uint8_t *key, int write_metadata)
 
static int mxf_parse_dnxhd_frame (AVFormatContext *s, AVStream *st, AVPacket *pkt)
 
static int mxf_parse_dv_frame (AVFormatContext *s, AVStream *st, AVPacket *pkt)
 
static const UIDmxf_get_mpeg2_codec_ul (AVCodecContext *avctx)
 
static int mxf_parse_mpeg2_frame (AVFormatContext *s, AVStream *st, AVPacket *pkt, MXFIndexEntry *e)
 
static uint64_t mxf_parse_timestamp (time_t timestamp)
 
static void mxf_gen_umid (AVFormatContext *s)
 
static int mxf_write_header (AVFormatContext *s)
 
static void mxf_write_system_item (AVFormatContext *s)
 
static void mxf_write_d10_video_packet (AVFormatContext *s, AVStream *st, AVPacket *pkt)
 
static void mxf_write_d10_audio_packet (AVFormatContext *s, AVStream *st, AVPacket *pkt)
 
static int mxf_write_packet (AVFormatContext *s, AVPacket *pkt)
 
static void mxf_write_random_index_pack (AVFormatContext *s)
 
static int mxf_write_footer (AVFormatContext *s)
 
static int mxf_interleave_get_packet (AVFormatContext *s, AVPacket *out, AVPacket *pkt, int flush)
 
static int mxf_compare_timestamps (AVFormatContext *s, AVPacket *next, AVPacket *pkt)
 
static int mxf_interleave (AVFormatContext *s, AVPacket *out, AVPacket *pkt, int flush)
 

Variables

AVOutputFormat ff_mxf_d10_muxer
 
struct {
   enum AVCodecID   id
 
   int   index
 
mxf_essence_mappings []
 
static const
MXFContainerEssenceEntry 
mxf_essence_container_uls []
 
static const uint8_t uuid_base [] = { 0xAD,0xAB,0x44,0x24,0x2f,0x25,0x4d,0xc7,0x92,0xff,0x29,0xbd }
 
static const uint8_t umid_ul [] = { 0x06,0x0A,0x2B,0x34,0x01,0x01,0x01,0x05,0x01,0x01,0x0D,0x00,0x13 }
 
static const uint8_t op1a_ul [] = { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x0D,0x01,0x02,0x01,0x01,0x01,0x09,0x00 }
 complete key for operation pattern, partitions, and primer pack
 
static const uint8_t footer_partition_key [] = { 0x06,0x0E,0x2B,0x34,0x02,0x05,0x01,0x01,0x0D,0x01,0x02,0x01,0x01,0x04,0x04,0x00 }
 
static const uint8_t primer_pack_key [] = { 0x06,0x0E,0x2B,0x34,0x02,0x05,0x01,0x01,0x0D,0x01,0x02,0x01,0x01,0x05,0x01,0x00 }
 
static const uint8_t index_table_segment_key [] = { 0x06,0x0E,0x2B,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x02,0x01,0x01,0x10,0x01,0x00 }
 
static const uint8_t random_index_pack_key [] = { 0x06,0x0E,0x2B,0x34,0x02,0x05,0x01,0x01,0x0D,0x01,0x02,0x01,0x01,0x11,0x01,0x00 }
 
static const uint8_t header_open_partition_key [] = { 0x06,0x0E,0x2B,0x34,0x02,0x05,0x01,0x01,0x0D,0x01,0x02,0x01,0x01,0x02,0x01,0x00 }
 
static const uint8_t header_closed_partition_key [] = { 0x06,0x0E,0x2B,0x34,0x02,0x05,0x01,0x01,0x0D,0x01,0x02,0x01,0x01,0x02,0x04,0x00 }
 
static const uint8_t klv_fill_key [] = { 0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x01,0x03,0x01,0x02,0x10,0x01,0x00,0x00,0x00 }
 
static const uint8_t body_partition_key [] = { 0x06,0x0E,0x2B,0x34,0x02,0x05,0x01,0x01,0x0D,0x01,0x02,0x01,0x01,0x03,0x04,0x00 }
 
static const uint8_t header_metadata_key [] = { 0x06,0x0E,0x2B,0x34,0x02,0x53,0x01,0x01,0x0D,0x01,0x01,0x01,0x01 }
 partial key for header metadata
 
static const uint8_t multiple_desc_ul [] = { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x03,0x0D,0x01,0x03,0x01,0x02,0x7F,0x01,0x00 }
 
static const MXFLocalTagPair mxf_local_tag_batch []
 SMPTE RP210 http://www.smpte-ra.org/mdd/index.html.
 
static const uint8_t smpte_12m_timecode_track_data_ul [] = { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x01,0x03,0x02,0x01,0x01,0x00,0x00,0x00 }
 
static const UID mxf_mpegvideo_descriptor_key = { 0x06,0x0E,0x2B,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x51,0x00 }
 
static const UID mxf_wav_descriptor_key = { 0x06,0x0E,0x2B,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x48,0x00 }
 
static const UID mxf_aes3_descriptor_key = { 0x06,0x0E,0x2B,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x47,0x00 }
 
static const UID mxf_cdci_descriptor_key = { 0x06,0x0E,0x2B,0x34,0x02,0x53,0x01,0x01,0x0D,0x01,0x01,0x01,0x01,0x01,0x28,0x00 }
 
static const UID mxf_generic_sound_descriptor_key = { 0x06,0x0E,0x2B,0x34,0x02,0x53,0x01,0x01,0x0D,0x01,0x01,0x01,0x01,0x01,0x42,0x00 }
 
static const UID mxf_mpeg2_codec_uls []
 
static const uint8_t system_metadata_pack_key [] = { 0x06,0x0E,0x2B,0x34,0x02,0x05,0x01,0x01,0x0D,0x01,0x03,0x01,0x04,0x01,0x01,0x00 }
 
static const uint8_t system_metadata_package_set_key [] = { 0x06,0x0E,0x2B,0x34,0x02,0x43,0x01,0x01,0x0D,0x01,0x03,0x01,0x04,0x01,0x02,0x01 }
 
static const AVOption d10_options []
 
static const AVClass mxf_d10_muxer_class
 
AVOutputFormat ff_mxf_muxer
 

Macro Definition Documentation

#define EDIT_UNITS_PER_BODY   250

Definition at line 52 of file mxfenc.c.

Referenced by mxf_write_packet().

#define KAG_SIZE   512
#define DESCRIPTOR_COUNT (   essence_container_count)    (essence_container_count > 1 ? essence_container_count + 1 : essence_container_count)

Function Documentation

static void mxf_write_wav_desc ( AVFormatContext s,
AVStream st 
)
static

Definition at line 1049 of file mxfenc.c.

static void mxf_write_aes3_desc ( AVFormatContext s,
AVStream st 
)
static

Definition at line 1054 of file mxfenc.c.

static void mxf_write_mpegvideo_desc ( AVFormatContext s,
AVStream st 
)
static

Definition at line 978 of file mxfenc.c.

static void mxf_write_cdci_desc ( AVFormatContext s,
AVStream st 
)
static

Definition at line 973 of file mxfenc.c.

static void mxf_write_generic_sound_desc ( AVFormatContext s,
AVStream st 
)
static

Definition at line 1059 of file mxfenc.c.

static void mxf_write_uuid ( AVIOContext pb,
enum MXFMetadataSetType  type,
int  value 
)
static
static void mxf_write_umid ( AVFormatContext s,
int  type 
)
static
static void mxf_write_refs_count ( AVIOContext pb,
int  ref_count 
)
static
static int klv_ber_length ( uint64_t  len)
static

Definition at line 435 of file mxfenc.c.

Referenced by mxf_write_partition().

static int klv_encode_ber_length ( AVIOContext pb,
uint64_t  len 
)
static
static void klv_encode_ber4_length ( AVIOContext pb,
int  len 
)
static
static int mxf_get_essence_container_ul_index ( enum AVCodecID  id)
static

Definition at line 473 of file mxfenc.c.

Referenced by mxf_write_header().

static void mxf_write_primer_pack ( AVFormatContext s)
static

Definition at line 482 of file mxfenc.c.

Referenced by mxf_write_partition().

static void mxf_write_local_tag ( AVIOContext pb,
int  size,
int  tag 
)
static
static void mxf_write_metadata_key ( AVIOContext pb,
unsigned int  value 
)
static
static void mxf_free ( AVFormatContext s)
static

Definition at line 513 of file mxfenc.c.

Referenced by mxf_write_footer().

static const MXFCodecUL* mxf_get_data_definition_ul ( int  type)
static

Definition at line 523 of file mxfenc.c.

Referenced by mxf_write_common_fields().

static void mxf_write_essence_container_refs ( AVFormatContext s)
static

Definition at line 538 of file mxfenc.c.

Referenced by mxf_write_partition(), and mxf_write_preface().

static void mxf_write_preface ( AVFormatContext s)
static

Definition at line 555 of file mxfenc.c.

Referenced by mxf_write_header_metadata_sets().

static void mxf_write_local_tag_utf16 ( AVIOContext pb,
int  tag,
const char *  value 
)
static

Definition at line 602 of file mxfenc.c.

Referenced by mxf_write_identification().

static void mxf_write_identification ( AVFormatContext s)
static

Definition at line 610 of file mxfenc.c.

Referenced by mxf_write_header_metadata_sets().

static void mxf_write_content_storage ( AVFormatContext s)
static

Definition at line 649 of file mxfenc.c.

Referenced by mxf_write_header_metadata_sets().

static void mxf_write_track ( AVFormatContext s,
AVStream st,
enum MXFMetadataSetType  type 
)
static

Definition at line 674 of file mxfenc.c.

Referenced by mxf_write_package().

static void mxf_write_common_fields ( AVFormatContext s,
AVStream st 
)
static
static void mxf_write_sequence ( AVFormatContext s,
AVStream st,
enum MXFMetadataSetType  type 
)
static

Definition at line 734 of file mxfenc.c.

Referenced by mxf_write_package().

static void mxf_write_timecode_component ( AVFormatContext s,
AVStream st,
enum MXFMetadataSetType  type 
)
static

Definition at line 762 of file mxfenc.c.

Referenced by mxf_write_package().

static void mxf_write_structural_component ( AVFormatContext s,
AVStream st,
enum MXFMetadataSetType  type 
)
static

Definition at line 790 of file mxfenc.c.

Referenced by mxf_write_package().

static void mxf_write_multi_descriptor ( AVFormatContext s)
static

Definition at line 826 of file mxfenc.c.

Referenced by mxf_write_package().

static void mxf_write_generic_desc ( AVFormatContext s,
AVStream st,
const UID  key,
unsigned  size 
)
static

Definition at line 863 of file mxfenc.c.

Referenced by mxf_write_cdci_common(), and mxf_write_generic_sound_common().

static void mxf_write_cdci_common ( AVFormatContext s,
AVStream st,
const UID  key,
unsigned  size 
)
static

Definition at line 892 of file mxfenc.c.

Referenced by mxf_write_cdci_desc(), and mxf_write_mpegvideo_desc().

static void mxf_write_generic_sound_common ( AVFormatContext s,
AVStream st,
const UID  key,
unsigned  size 
)
static

Definition at line 997 of file mxfenc.c.

Referenced by mxf_write_generic_sound_desc(), and mxf_write_wav_common().

static void mxf_write_wav_common ( AVFormatContext s,
AVStream st,
const UID  key,
unsigned  size 
)
static

Definition at line 1035 of file mxfenc.c.

Referenced by mxf_write_aes3_desc(), and mxf_write_wav_desc().

static void mxf_write_package ( AVFormatContext s,
enum MXFMetadataSetType  type 
)
static

Definition at line 1064 of file mxfenc.c.

Referenced by mxf_write_header_metadata_sets().

static int mxf_write_essence_container_data ( AVFormatContext s)
static

Definition at line 1135 of file mxfenc.c.

Referenced by mxf_write_header_metadata_sets().

static int mxf_write_header_metadata_sets ( AVFormatContext s)
static

Definition at line 1157 of file mxfenc.c.

Referenced by mxf_write_partition().

static unsigned klv_fill_size ( uint64_t  size)
static
static void mxf_write_index_table_segment ( AVFormatContext s)
static

Definition at line 1177 of file mxfenc.c.

Referenced by mxf_write_footer(), and mxf_write_packet().

static void mxf_write_klv_fill ( AVFormatContext s)
static

Definition at line 1310 of file mxfenc.c.

Referenced by mxf_write_footer(), mxf_write_packet(), and mxf_write_partition().

static int mxf_write_partition ( AVFormatContext s,
int  bodysid,
int  indexsid,
const uint8_t key,
int  write_metadata 
)
static

Definition at line 1322 of file mxfenc.c.

Referenced by mxf_write_footer(), and mxf_write_packet().

static int mxf_parse_dnxhd_frame ( AVFormatContext s,
AVStream st,
AVPacket pkt 
)
static

Definition at line 1419 of file mxfenc.c.

Referenced by mxf_write_packet().

static int mxf_parse_dv_frame ( AVFormatContext s,
AVStream st,
AVPacket pkt 
)
static

Definition at line 1497 of file mxfenc.c.

Referenced by mxf_write_packet().

static const UID* mxf_get_mpeg2_codec_ul ( AVCodecContext avctx)
static

Definition at line 1580 of file mxfenc.c.

Referenced by mxf_parse_mpeg2_frame().

static int mxf_parse_mpeg2_frame ( AVFormatContext s,
AVStream st,
AVPacket pkt,
MXFIndexEntry e 
)
static

Definition at line 1600 of file mxfenc.c.

Referenced by mxf_write_packet().

static uint64_t mxf_parse_timestamp ( time_t  timestamp)
static

Definition at line 1658 of file mxfenc.c.

Referenced by mxf_write_header().

static void mxf_gen_umid ( AVFormatContext s)
static

Definition at line 1671 of file mxfenc.c.

Referenced by mxf_write_header().

static int mxf_write_header ( AVFormatContext s)
static

Definition at line 1683 of file mxfenc.c.

static void mxf_write_system_item ( AVFormatContext s)
static

Definition at line 1837 of file mxfenc.c.

Referenced by mxf_write_packet().

static void mxf_write_d10_video_packet ( AVFormatContext s,
AVStream st,
AVPacket pkt 
)
static

Definition at line 1878 of file mxfenc.c.

Referenced by mxf_write_packet().

static void mxf_write_d10_audio_packet ( AVFormatContext s,
AVStream st,
AVPacket pkt 
)
static

Definition at line 1907 of file mxfenc.c.

Referenced by mxf_write_packet().

static int mxf_write_packet ( AVFormatContext s,
AVPacket pkt 
)
static

Definition at line 1939 of file mxfenc.c.

static void mxf_write_random_index_pack ( AVFormatContext s)
static

Definition at line 2031 of file mxfenc.c.

Referenced by mxf_write_footer().

static int mxf_write_footer ( AVFormatContext s)
static

Definition at line 2058 of file mxfenc.c.

static int mxf_interleave_get_packet ( AVFormatContext s,
AVPacket out,
AVPacket pkt,
int  flush 
)
static

Definition at line 2106 of file mxfenc.c.

Referenced by mxf_interleave().

static int mxf_compare_timestamps ( AVFormatContext s,
AVPacket next,
AVPacket pkt 
)
static

Definition at line 2161 of file mxfenc.c.

Referenced by mxf_interleave().

static int mxf_interleave ( AVFormatContext s,
AVPacket out,
AVPacket pkt,
int  flush 
)
static

Definition at line 2170 of file mxfenc.c.

Variable Documentation

AVOutputFormat ff_mxf_d10_muxer
Initial value:
= {
.name = "mxf_d10",
.long_name = NULL_IF_CONFIG_SMALL("MXF (Material eXchange Format) D-10 Mapping"),
.mime_type = "application/mxf",
.priv_data_size = sizeof(MXFContext),
.audio_codec = AV_CODEC_ID_PCM_S16LE,
.video_codec = AV_CODEC_ID_MPEG2VIDEO,
.priv_class = &mxf_d10_muxer_class,
}

Definition at line 2204 of file mxfenc.c.

enum AVCodecID id
int index

Definition at line 91 of file mxfenc.c.

struct { ... } mxf_essence_mappings[]
const MXFContainerEssenceEntry mxf_essence_container_uls[]
static

Definition at line 107 of file mxfenc.c.

const uint8_t uuid_base[] = { 0xAD,0xAB,0x44,0x24,0x2f,0x25,0x4d,0xc7,0x92,0xff,0x29,0xbd }
static

Definition at line 300 of file mxfenc.c.

Referenced by mxf_write_uuid().

const uint8_t umid_ul[] = { 0x06,0x0A,0x2B,0x34,0x01,0x01,0x01,0x05,0x01,0x01,0x0D,0x00,0x13 }
static

Definition at line 301 of file mxfenc.c.

Referenced by mxf_write_umid().

const uint8_t op1a_ul[] = { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x0D,0x01,0x02,0x01,0x01,0x01,0x09,0x00 }
static

complete key for operation pattern, partitions, and primer pack

Definition at line 306 of file mxfenc.c.

Referenced by mxf_write_partition(), and mxf_write_preface().

const uint8_t footer_partition_key[] = { 0x06,0x0E,0x2B,0x34,0x02,0x05,0x01,0x01,0x0D,0x01,0x02,0x01,0x01,0x04,0x04,0x00 }
static

Definition at line 307 of file mxfenc.c.

Referenced by mxf_write_footer(), and mxf_write_partition().

const uint8_t primer_pack_key[] = { 0x06,0x0E,0x2B,0x34,0x02,0x05,0x01,0x01,0x0D,0x01,0x02,0x01,0x01,0x05,0x01,0x00 }
static

Definition at line 308 of file mxfenc.c.

Referenced by mxf_write_primer_pack().

const uint8_t index_table_segment_key[] = { 0x06,0x0E,0x2B,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x02,0x01,0x01,0x10,0x01,0x00 }
static

Definition at line 309 of file mxfenc.c.

Referenced by mxf_write_index_table_segment().

const uint8_t random_index_pack_key[] = { 0x06,0x0E,0x2B,0x34,0x02,0x05,0x01,0x01,0x0D,0x01,0x02,0x01,0x01,0x11,0x01,0x00 }
static

Definition at line 310 of file mxfenc.c.

Referenced by mxf_write_random_index_pack().

const uint8_t header_open_partition_key[] = { 0x06,0x0E,0x2B,0x34,0x02,0x05,0x01,0x01,0x0D,0x01,0x02,0x01,0x01,0x02,0x01,0x00 }
static

Definition at line 311 of file mxfenc.c.

Referenced by mxf_write_packet().

const uint8_t header_closed_partition_key[] = { 0x06,0x0E,0x2B,0x34,0x02,0x05,0x01,0x01,0x0D,0x01,0x02,0x01,0x01,0x02,0x04,0x00 }
static

Definition at line 312 of file mxfenc.c.

Referenced by mxf_write_footer().

const uint8_t klv_fill_key[] = { 0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x01,0x03,0x01,0x02,0x10,0x01,0x00,0x00,0x00 }
static

Definition at line 313 of file mxfenc.c.

Referenced by mxf_write_d10_video_packet(), and mxf_write_klv_fill().

const uint8_t body_partition_key[] = { 0x06,0x0E,0x2B,0x34,0x02,0x05,0x01,0x01,0x0D,0x01,0x02,0x01,0x01,0x03,0x04,0x00 }
static

Definition at line 314 of file mxfenc.c.

Referenced by mxf_write_packet(), and mxf_write_partition().

const uint8_t header_metadata_key[] = { 0x06,0x0E,0x2B,0x34,0x02,0x53,0x01,0x01,0x0D,0x01,0x01,0x01,0x01 }
static

partial key for header metadata

Definition at line 319 of file mxfenc.c.

Referenced by mxf_write_metadata_key().

const uint8_t multiple_desc_ul[] = { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x03,0x0D,0x01,0x03,0x01,0x02,0x7F,0x01,0x00 }
static
const MXFLocalTagPair mxf_local_tag_batch[]
static

SMPTE RP210 http://www.smpte-ra.org/mdd/index.html.

Definition at line 325 of file mxfenc.c.

const uint8_t smpte_12m_timecode_track_data_ul[] = { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x01,0x03,0x02,0x01,0x01,0x00,0x00,0x00 }
static

Definition at line 713 of file mxfenc.c.

Referenced by mxf_write_common_fields().

const UID mxf_mpegvideo_descriptor_key = { 0x06,0x0E,0x2B,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x51,0x00 }
static

Definition at line 886 of file mxfenc.c.

Referenced by mxf_write_mpegvideo_desc().

const UID mxf_wav_descriptor_key = { 0x06,0x0E,0x2B,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x48,0x00 }
static

Definition at line 887 of file mxfenc.c.

Referenced by mxf_write_wav_desc().

const UID mxf_aes3_descriptor_key = { 0x06,0x0E,0x2B,0x34,0x02,0x53,0x01,0x01,0x0d,0x01,0x01,0x01,0x01,0x01,0x47,0x00 }
static

Definition at line 888 of file mxfenc.c.

Referenced by mxf_write_aes3_desc().

const UID mxf_cdci_descriptor_key = { 0x06,0x0E,0x2B,0x34,0x02,0x53,0x01,0x01,0x0D,0x01,0x01,0x01,0x01,0x01,0x28,0x00 }
static

Definition at line 889 of file mxfenc.c.

Referenced by mxf_write_cdci_desc().

const UID mxf_generic_sound_descriptor_key = { 0x06,0x0E,0x2B,0x34,0x02,0x53,0x01,0x01,0x0D,0x01,0x01,0x01,0x01,0x01,0x42,0x00 }
static

Definition at line 890 of file mxfenc.c.

Referenced by mxf_write_generic_sound_desc().

const UID mxf_mpeg2_codec_uls[]
static
Initial value:
= {
{ 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x03,0x04,0x01,0x02,0x02,0x01,0x01,0x10,0x00 },
{ 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x03,0x04,0x01,0x02,0x02,0x01,0x01,0x11,0x00 },
{ 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x03,0x04,0x01,0x02,0x02,0x01,0x02,0x02,0x00 },
{ 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x03,0x04,0x01,0x02,0x02,0x01,0x02,0x03,0x00 },
{ 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x03,0x04,0x01,0x02,0x02,0x01,0x03,0x02,0x00 },
{ 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x03,0x04,0x01,0x02,0x02,0x01,0x03,0x03,0x00 },
{ 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x03,0x04,0x01,0x02,0x02,0x01,0x04,0x02,0x00 },
{ 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x03,0x04,0x01,0x02,0x02,0x01,0x04,0x03,0x00 },
{ 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x03,0x04,0x01,0x02,0x02,0x01,0x05,0x02,0x00 },
{ 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x03,0x04,0x01,0x02,0x02,0x01,0x05,0x03,0x00 },
}

Definition at line 1567 of file mxfenc.c.

Referenced by mxf_get_mpeg2_codec_ul().

const uint8_t system_metadata_pack_key[] = { 0x06,0x0E,0x2B,0x34,0x02,0x05,0x01,0x01,0x0D,0x01,0x03,0x01,0x04,0x01,0x01,0x00 }
static

Definition at line 1834 of file mxfenc.c.

Referenced by mxf_write_system_item().

const uint8_t system_metadata_package_set_key[] = { 0x06,0x0E,0x2B,0x34,0x02,0x43,0x01,0x01,0x0D,0x01,0x03,0x01,0x04,0x01,0x02,0x01 }
static

Definition at line 1835 of file mxfenc.c.

Referenced by mxf_write_system_item().

const AVOption d10_options[]
static
Initial value:
= {
{ "d10_channelcount", "Force/set channelcount in generic sound essence descriptor",
0x42, AV_OPT_TYPE_INT, {.i64 = -1}, -1, 8, AV_OPT_FLAG_ENCODING_PARAM},
{ NULL },
}

Definition at line 2176 of file mxfenc.c.

const AVClass mxf_d10_muxer_class
static
Initial value:
= {
.class_name = "MXF-D10 muxer",
.item_name = av_default_item_name,
.option = d10_options,
}

Definition at line 2182 of file mxfenc.c.

AVOutputFormat ff_mxf_muxer
Initial value:
= {
.name = "mxf",
.long_name = NULL_IF_CONFIG_SMALL("MXF (Material eXchange Format)"),
.mime_type = "application/mxf",
.extensions = "mxf",
.priv_data_size = sizeof(MXFContext),
.audio_codec = AV_CODEC_ID_PCM_S16LE,
.video_codec = AV_CODEC_ID_MPEG2VIDEO,
}

Definition at line 2189 of file mxfenc.c.