|
|
@ -188,6 +188,8 @@ static const MXFLocalTagPair mxf_local_tag_batch[] = { |
|
|
|
{ 0x3D07, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x05,0x04,0x02,0x01,0x01,0x04,0x00,0x00,0x00}}, /* ChannelCount */ |
|
|
|
{ 0x3D07, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x05,0x04,0x02,0x01,0x01,0x04,0x00,0x00,0x00}}, /* ChannelCount */ |
|
|
|
{ 0x3D01, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x04,0x04,0x02,0x03,0x03,0x04,0x00,0x00,0x00}}, /* Quantization bits */ |
|
|
|
{ 0x3D01, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x04,0x04,0x02,0x03,0x03,0x04,0x00,0x00,0x00}}, /* Quantization bits */ |
|
|
|
{ 0x3D06, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x02,0x04,0x02,0x04,0x02,0x00,0x00,0x00,0x00}}, /* Sound Essence Compression */ |
|
|
|
{ 0x3D06, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x02,0x04,0x02,0x04,0x02,0x00,0x00,0x00,0x00}}, /* Sound Essence Compression */ |
|
|
|
|
|
|
|
// MPEG video Descriptor
|
|
|
|
|
|
|
|
{ 0x8000, {0x06,0x0E,0x2B,0x34,0x01,0x01,0x01,0x05,0x04,0x01,0x06,0x02,0x01,0x0B,0x00,0x00}}, /* BitRate */ |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
static void mxf_write_uuid(ByteIOContext *pb, enum MXFMetadataSetType type, int value) |
|
|
|
static void mxf_write_uuid(ByteIOContext *pb, enum MXFMetadataSetType type, int value) |
|
|
@ -595,7 +597,7 @@ static void mxf_write_mpegvideo_desc(AVFormatContext *s, AVStream *st) |
|
|
|
AVRational dar; |
|
|
|
AVRational dar; |
|
|
|
int f1, f2; |
|
|
|
int f1, f2; |
|
|
|
|
|
|
|
|
|
|
|
mxf_write_generic_desc(pb, st, mxf_mpegvideo_descriptor_key, 149); |
|
|
|
mxf_write_generic_desc(pb, st, mxf_mpegvideo_descriptor_key, 157); |
|
|
|
|
|
|
|
|
|
|
|
mxf_write_local_tag(pb, 4, 0x3203); |
|
|
|
mxf_write_local_tag(pb, 4, 0x3203); |
|
|
|
put_be32(pb, st->codec->width); |
|
|
|
put_be32(pb, st->codec->width); |
|
|
@ -609,6 +611,10 @@ static void mxf_write_mpegvideo_desc(AVFormatContext *s, AVStream *st) |
|
|
|
mxf_write_local_tag(pb, 4, 0x3208); |
|
|
|
mxf_write_local_tag(pb, 4, 0x3208); |
|
|
|
put_be32(pb, st->codec->height>>sc->interlaced); |
|
|
|
put_be32(pb, st->codec->height>>sc->interlaced); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// bit rate
|
|
|
|
|
|
|
|
mxf_write_local_tag(pb, 4, 0x8000); |
|
|
|
|
|
|
|
put_be32(pb, st->codec->bit_rate); |
|
|
|
|
|
|
|
|
|
|
|
// frame layout
|
|
|
|
// frame layout
|
|
|
|
mxf_write_local_tag(pb, 1, 0x320C); |
|
|
|
mxf_write_local_tag(pb, 1, 0x320C); |
|
|
|
put_byte(pb, sc->interlaced); |
|
|
|
put_byte(pb, sc->interlaced); |
|
|
|