tis 2021-12-14 klockan 16:27 +0100 skrev Nicolas Gaullier: > The values for the essence element type were updated in the spec > from 0x05/0x06 (ST2019-4 2008) to 0x0C/0x0D (ST2019-4 2009). > > Fixes ticket #6380. > > Thanks-to: Philip de Nier <philip.den...@bbc.co.uk> > Thanks-to: Matthieu Bouron <matthieu.bou...@gmail.com> > > Signed-off-by: Nicolas Gaullier <nicolas.gaullier@cji.paris> > --- > libavformat/mxfenc.c | 9 ++++++++- > tests/ref/lavf/mxf_opatom | 2 +- > 2 files changed, 9 insertions(+), 2 deletions(-) > > diff --git a/libavformat/mxfenc.c b/libavformat/mxfenc.c > index 512baa45d3..bae41a774d 100644 > --- a/libavformat/mxfenc.c > +++ b/libavformat/mxfenc.c > @@ -32,6 +32,7 @@ > * SMPTE 379M MXF Generic Container > * SMPTE 381M Mapping MPEG Streams into the MXF Generic Container > * SMPTE 422M Mapping JPEG 2000 Codestreams into the MXF Generic > Container > + * SMPTE ST2019-4 (2009 or later) Mapping VC-3 Coding Units into the > MXF Generic Container > * SMPTE RP210: SMPTE Metadata Dictionary > * SMPTE RP224: Registry of SMPTE Universal Labels > */ > @@ -182,7 +183,7 @@ static const MXFContainerEssenceEntry > mxf_essence_container_uls[] = { > mxf_write_cdci_desc }, > // DNxHD > { { > 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x0A,0x0D,0x01,0x03,0x01,0x02,0x11 > ,0x01,0x00 }, > - { > 0x06,0x0E,0x2B,0x34,0x01,0x02,0x01,0x01,0x0D,0x01,0x03,0x01,0x15,0x01 > ,0x05,0x00 }, > + { > 0x06,0x0E,0x2B,0x34,0x01,0x02,0x01,0x01,0x0D,0x01,0x03,0x01,0x15,0x01 > ,0x0C,0x00 }, > { > 0x06,0x0E,0x2B,0x34,0x04,0x01,0x01,0x0A,0x04,0x01,0x02,0x02,0x71,0x01 > ,0x00,0x00 }, > mxf_write_cdci_desc }, > // JPEG2000 > @@ -2674,6 +2675,12 @@ static int mxf_init(AVFormatContext *s) > > memcpy(sc->track_essence_element_key, > mxf_essence_container_uls[sc->index].element_ul, 15); > sc->track_essence_element_key[15] = present[sc->index]; > + if (s->oformat == &ff_mxf_opatom_muxer && st->codecpar- > >codec_id == AV_CODEC_ID_DNXHD) { > + // clip-wrapping requires 0x0D per ST2019-4:2009 or 0x06 > per previous version ST2019-4:2008 > + // we choose to use 0x06 instead 0x0D to be compatible > with AVID systems > + // and produce mxf files with the most relevant flavour > for opatom > + sc->track_essence_element_key[14] = 0x06; > + } > PRINT_KEY(s, "track essence element key", sc- > >track_essence_element_key); > > if (!present[sc->index]) > diff --git a/tests/ref/lavf/mxf_opatom b/tests/ref/lavf/mxf_opatom > index b818f26c36..e34cf2559e 100644 > --- a/tests/ref/lavf/mxf_opatom > +++ b/tests/ref/lavf/mxf_opatom > @@ -1,3 +1,3 @@ > -e558e50a94d88762e07ab8149aced7b9 *tests/data/lavf/lavf.mxf_opatom > +aab6397829bd90f0c77a3f9fde53bb9c *tests/data/lavf/lavf.mxf_opatom > 4717625 tests/data/lavf/lavf.mxf_opatom > tests/data/lavf/lavf.mxf_opatom CRC=0xf55aa22a
Should be fine based on previous discussion, and because Matthieu is fine with it, being the one who added DNxHD support initially /Tomas _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".