22 #include "libavutil/common.h"
29 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x01,0x03,0x02,0x02,0x01,0x00,0x00,0x00 }, 13,
AVMEDIA_TYPE_VIDEO },
30 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x01,0x03,0x02,0x02,0x02,0x00,0x00,0x00 }, 13,
AVMEDIA_TYPE_AUDIO },
31 { { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 }, 0,
AVMEDIA_TYPE_DATA },
36 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x03,0x04,0x01,0x02,0x02,0x01,0x01,0x11,0x00 }, 14,
AV_CODEC_ID_MPEG2VIDEO },
37 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x04,0x01,0x02,0x02,0x01,0x02,0x01,0x01 }, 14,
AV_CODEC_ID_MPEG2VIDEO },
38 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x03,0x04,0x01,0x02,0x02,0x01,0x03,0x03,0x00 }, 14,
AV_CODEC_ID_MPEG2VIDEO },
39 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x03,0x04,0x01,0x02,0x02,0x01,0x04,0x02,0x00 }, 14,
AV_CODEC_ID_MPEG2VIDEO },
40 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x03,0x04,0x01,0x02,0x02,0x01,0x20,0x02,0x03 }, 14,
AV_CODEC_ID_MPEG4 },
41 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x04,0x01,0x02,0x02,0x02,0x01,0x02,0x00 }, 13,
AV_CODEC_ID_DVVIDEO },
42 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x07,0x04,0x01,0x02,0x02,0x03,0x01,0x01,0x00 }, 14,
AV_CODEC_ID_JPEG2000 },
43 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x04,0x01,0x02,0x01,0x7F,0x00,0x00,0x00 }, 13,
AV_CODEC_ID_RAWVIDEO },
44 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x0A,0x04,0x01,0x02,0x01,0x01,0x02,0x01,0x00 }, 15,
AV_CODEC_ID_RAWVIDEO },
45 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x04,0x01,0x02,0x02,0x71,0x00,0x00,0x00 }, 13,
AV_CODEC_ID_DNXHD },
46 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x04,0x01,0x02,0x02,0x03,0x02,0x00,0x00 }, 14,
AV_CODEC_ID_DNXHD },
47 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x0A,0x04,0x01,0x02,0x02,0x01,0x32,0x00,0x00 }, 14,
AV_CODEC_ID_H264 },
48 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x0A,0x04,0x01,0x02,0x01,0x01,0x02,0x02,0x01 }, 16,
AV_CODEC_ID_V210 },
50 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x04,0x02,0x02,0x01,0x00,0x00,0x00,0x00 }, 13,
AV_CODEC_ID_PCM_S16LE },
51 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x04,0x02,0x02,0x01,0x7F,0x00,0x00,0x00 }, 13,
AV_CODEC_ID_PCM_S16LE },
52 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x07,0x04,0x02,0x02,0x01,0x7E,0x00,0x00,0x00 }, 13,
AV_CODEC_ID_PCM_S16BE },
53 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x04,0x04,0x02,0x02,0x02,0x03,0x01,0x01,0x00 }, 15,
AV_CODEC_ID_PCM_ALAW },
54 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x04,0x02,0x02,0x02,0x03,0x02,0x01,0x00 }, 15,
AV_CODEC_ID_AC3 },
55 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x01,0x04,0x02,0x02,0x02,0x03,0x02,0x05,0x00 }, 15,
AV_CODEC_ID_MP2 },
57 { { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 }, 0,
AV_CODEC_ID_NONE },
61 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x0A,0x04,0x01,0x02,0x01,0x01,0x02,0x01,0x01 }, 16,
AV_PIX_FMT_UYVY422 },
62 { { 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x0A,0x04,0x01,0x02,0x01,0x01,0x02,0x01,0x02 }, 16,
AV_PIX_FMT_YUYV422 },
63 { { 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 }, 0,
AV_PIX_FMT_NONE },
85 {
AV_PIX_FMT_RGB48BE, {
'R', 8,
'r', 8,
'G', 8,
'g', 8,
'B', 8,
'b', 8 }},
87 {
AV_PIX_FMT_RGB48LE, {
'r', 8,
'R', 8,
'g', 8,
'G', 8,
'b', 8,
'B', 8 }},
111 { { 1001, 24000 }, { 2002, 0, 0, 0, 0, 0 } },
112 { { 1, 24}, { 2000, 0, 0, 0, 0, 0 } },
113 { { 1001, 30000 }, { 1602, 1601, 1602, 1601, 1602, 0 } },
114 { { 1001, 60000 }, { 801, 801, 801, 801, 800, 0 } },
115 { { 1, 25 }, { 1920, 0, 0, 0, 0, 0 } },
116 { { 1, 50 }, { 960, 0, 0, 0, 0, 0 } },
123 if (!
av_cmp_q(mxf_samples_per_frames[i].time_base, time_base))
124 return &mxf_samples_per_frames[i];
129 if (fabs(
av_q2d(mxf_samples_per_frames[i].time_base) -
av_q2d(time_base)) < 0.0001) {
131 time_base.num, time_base.den,
133 return &mxf_samples_per_frames[i];
static const int num_pixel_layouts
#define AV_LOG_WARNING
Something somehow does not look correct.
packed RGB 5:5:5, 16bpp, (msb)1A 5R 5G 5B(lsb), big-endian, most significant bit to 0 ...
packed RGB 8:8:8, 24bpp, RGBRGB...
void av_log(void *avcl, int level, const char *fmt,...) av_printf_format(3
Send the specified message to the log if the level is less than or equal to the current av_log_level...
static int av_cmp_q(AVRational a, AVRational b)
Compare two rationals.
packed RGB 5:6:5, 16bpp, (msb) 5R 6G 5B(lsb), big-endian
struct AVRational time_base
packed ARGB 8:8:8:8, 32bpp, ARGBARGB...
packed RGB 8:8:8, 24bpp, BGRBGR...
packed RGB 4:4:4, 16bpp, (msb)4A 4R 4G 4B(lsb), big-endian, most significant bits to 0 ...
packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as big...
const MXFSamplesPerFrame * ff_mxf_get_samples_per_frame(AVFormatContext *s, AVRational time_base)
packed ABGR 8:8:8:8, 32bpp, ABGRABGR...
static double av_q2d(AVRational a)
Convert rational to double.
const MXFCodecUL ff_mxf_codec_uls[]
enum AVPixelFormat pix_fmt
AVPixelFormat
Pixel format.
int ff_mxf_decode_pixel_layout(const char pixel_layout[16], enum AVPixelFormat *pix_fmt)
const MXFCodecUL ff_mxf_pixel_format_uls[]
#define FF_ARRAY_ELEMS(a)
Opaque data information usually continuous.
const MXFCodecUL ff_mxf_data_definition_uls[]
SMPTE RP224 http://www.smpte-ra.org/mdd/index.html.
preferred ID for MPEG-1/2 video decoding
static const MXFSamplesPerFrame mxf_samples_per_frames[]
static struct @154 ff_mxf_pixel_layouts[]
packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
rational number numerator/denominator
packed BGRA 8:8:8:8, 32bpp, BGRABGRA...
packed YUV 4:2:2, 16bpp, Cb Y0 Cr Y1
packed RGBA 8:8:8:8, 32bpp, RGBARGBA...
8 bit with PIX_FMT_RGB32 palette
packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as lit...