FFmpeg
Functions | Variables
mxf.c File Reference
#include "libavutil/common.h"
#include "mxf.h"

Go to the source code of this file.

Functions

int ff_mxf_decode_pixel_layout (const char pixel_layout[16], enum AVPixelFormat *pix_fmt)
 
int ff_mxf_get_content_package_rate (AVRational time_base)
 

Variables

const MXFCodecUL ff_mxf_data_definition_uls []
 SMPTE RP224 http://www.smpte-ra.org/mdd/index.html. More...
 
const MXFCodecUL ff_mxf_codec_uls []
 
const MXFCodecUL ff_mxf_pixel_format_uls []
 
const MXFCodecUL ff_mxf_codec_tag_uls []
 
struct {
   enum AVPixelFormat   pix_fmt
 
   const char   data [16]
 
ff_mxf_pixel_layouts []
 
static const int num_pixel_layouts = FF_ARRAY_ELEMS(ff_mxf_pixel_layouts)
 
static const MXFContentPackageRate mxf_content_package_rates []
 See SMPTE 326M-2000 Section 7.2 Content package rate MXFContentPackageRate->rate is bits b5..b0. More...
 

Function Documentation

int ff_mxf_decode_pixel_layout ( const char  pixel_layout[16],
enum AVPixelFormat pix_fmt 
)

Definition at line 120 of file mxf.c.

Referenced by mxf_read_pixel_layout().

int ff_mxf_get_content_package_rate ( AVRational  time_base)

Definition at line 162 of file mxf.c.

Referenced by mxf_init_timecode(), and mxf_write_header().

Variable Documentation

const MXFCodecUL ff_mxf_data_definition_uls[]
Initial value:
= {
{ { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x01,0x03,0x02,0x02,0x01,0x00,0x00,0x00 }, 13, AVMEDIA_TYPE_VIDEO },
{ { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x01,0x03,0x02,0x02,0x02,0x00,0x00,0x00 }, 13, AVMEDIA_TYPE_AUDIO },
{ { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x01,0x03,0x02,0x02,0x03,0x00,0x00,0x00 }, 13, AVMEDIA_TYPE_DATA },
{ { 0x80,0x7D,0x00,0x60,0x08,0x14,0x3E,0x6F,0x6F,0x3C,0x8C,0xE1,0x6C,0xEF,0x11,0xD2 }, 16, AVMEDIA_TYPE_VIDEO },
{ { 0x80,0x7D,0x00,0x60,0x08,0x14,0x3E,0x6F,0x78,0xE1,0xEB,0xE1,0x6C,0xEF,0x11,0xD2 }, 16, AVMEDIA_TYPE_AUDIO },
{ { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 }, 0, AVMEDIA_TYPE_DATA },
}
Opaque data information usually continuous.
Definition: avutil.h:203

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

Definition at line 28 of file mxf.c.

Referenced by mxf_add_metadata_stream(), mxf_get_data_definition_ul(), and mxf_parse_structural_metadata().

const MXFCodecUL ff_mxf_codec_uls[]

Definition at line 37 of file mxf.c.

Referenced by mxf_parse_structural_metadata().

const MXFCodecUL ff_mxf_pixel_format_uls[]
Initial value:
= {
{ { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x0A,0x04,0x01,0x02,0x01,0x01,0x02,0x01,0x01 }, 16, AV_PIX_FMT_UYVY422 },
{ { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x0A,0x04,0x01,0x02,0x01,0x01,0x02,0x01,0x02 }, 16, AV_PIX_FMT_YUYV422 },
{ { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 }, 0, AV_PIX_FMT_NONE },
}
packed YUV 4:2:2, 16bpp, Cb Y0 Cr Y1
Definition: pixfmt.h:81
packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
Definition: pixfmt.h:67

Definition at line 78 of file mxf.c.

Referenced by mxf_parse_structural_metadata().

const MXFCodecUL ff_mxf_codec_tag_uls[]
Initial value:
= {
{ { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x0E,0x04,0x03,0x01,0x01,0x03,0x01,0x00 }, 15, MKTAG('A', 'V', 'u', 'p') },
{ { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 }, 0, 0 },
}
#define MKTAG(a, b, c, d)
Definition: common.h:406

Definition at line 84 of file mxf.c.

Referenced by mxf_parse_structural_metadata().

enum AVPixelFormat pix_fmt

Definition at line 90 of file mxf.c.

const char data[16]

Definition at line 91 of file mxf.c.

const { ... } ff_mxf_pixel_layouts[]
Initial value:
= {
{AV_PIX_FMT_ABGR, {'A', 8, 'B', 8, 'G', 8, 'R', 8 }},
{AV_PIX_FMT_ARGB, {'A', 8, 'R', 8, 'G', 8, 'B', 8 }},
{AV_PIX_FMT_BGR24, {'B', 8, 'G', 8, 'R', 8 }},
{AV_PIX_FMT_BGRA, {'B', 8, 'G', 8, 'R', 8, 'A', 8 }},
{AV_PIX_FMT_RGB24, {'R', 8, 'G', 8, 'B', 8 }},
{AV_PIX_FMT_RGB444BE,{'F', 4, 'R', 4, 'G', 4, 'B', 4 }},
{AV_PIX_FMT_RGB48BE, {'R', 8, 'r', 8, 'G', 8, 'g', 8, 'B', 8, 'b', 8 }},
{AV_PIX_FMT_RGB48BE, {'R', 16, 'G', 16, 'B', 16 }},
{AV_PIX_FMT_RGB48LE, {'r', 8, 'R', 8, 'g', 8, 'G', 8, 'b', 8, 'B', 8 }},
{AV_PIX_FMT_RGB555BE,{'F', 1, 'R', 5, 'G', 5, 'B', 5 }},
{AV_PIX_FMT_RGB565BE,{'R', 5, 'G', 6, 'B', 5 }},
{AV_PIX_FMT_RGBA, {'R', 8, 'G', 8, 'B', 8, 'A', 8 }},
{AV_PIX_FMT_PAL8, {'P', 8 }},
{AV_PIX_FMT_GRAY8, {'A', 8 }},
}
packed RGB 8:8:8, 24bpp, RGBRGB...
Definition: pixfmt.h:68
packed RGB 4:4:4, 16bpp, (msb)4X 4R 4G 4B(lsb), big-endian, X=unused/undefined
Definition: pixfmt.h:140
8 bits with AV_PIX_FMT_RGB32 palette
Definition: pixfmt.h:77
packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as lit...
Definition: pixfmt.h:103
packed RGB 5:6:5, 16bpp, (msb) 5R 6G 5B(lsb), big-endian
Definition: pixfmt.h:105
packed ABGR 8:8:8:8, 32bpp, ABGRABGR...
Definition: pixfmt.h:94
packed BGRA 8:8:8:8, 32bpp, BGRABGRA...
Definition: pixfmt.h:95
packed ARGB 8:8:8:8, 32bpp, ARGBARGB...
Definition: pixfmt.h:92
packed RGBA 8:8:8:8, 32bpp, RGBARGBA...
Definition: pixfmt.h:93
packed RGB 8:8:8, 24bpp, BGRBGR...
Definition: pixfmt.h:69
packed RGB 5:5:5, 16bpp, (msb)1X 5R 5G 5B(lsb), big-endian , X=unused/undefined
Definition: pixfmt.h:107
Y , 8bpp.
Definition: pixfmt.h:74
packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as big...
Definition: pixfmt.h:102

Referenced by ff_mxf_decode_pixel_layout().

const int num_pixel_layouts = FF_ARRAY_ELEMS(ff_mxf_pixel_layouts)
static

Definition at line 118 of file mxf.c.

Referenced by ff_mxf_decode_pixel_layout().

const MXFContentPackageRate mxf_content_package_rates[]
static
Initial value:
= {
{ 2, { 1, 24 } },
{ 3, { 1001, 24000 } },
{ 4, { 1, 25 } },
{ 6, { 1, 30 } },
{ 7, { 1001, 30000 } },
{ 8, { 1 , 48 } },
{ 9, { 1001, 48000 } },
{ 10, { 1, 50 } },
{ 12, { 1, 60 } },
{ 13, { 1001, 60000 } },
{ 14, { 1, 72 } },
{ 15, { 1001, 72000 } },
{ 16, { 1, 75 } },
{ 18, { 1, 90 } },
{ 19, { 1001, 90000 } },
{ 20, { 1, 96 } },
{ 21, { 1001, 96000 } },
{ 22, { 1, 100 } },
{ 24, { 1, 120 } },
{ 25, { 1001, 120000} },
{0}
}

See SMPTE 326M-2000 Section 7.2 Content package rate MXFContentPackageRate->rate is bits b5..b0.

Definition at line 138 of file mxf.c.