I've not seen a smpte spec that contains the DNXHR mxf ULs. The mxf UL definitions can be looked up at registry.smpte-ra.org search for "VC-3", CIDs 1270-1274 are DNXHR.
DNXHR in already supported in mov and mkv. -Jason -----Original Message----- From: "Tomas Härdin" <tjop...@acc.umu.se> Sent: Friday, September 7, 2018 1:54am To: "FFmpeg development discussions and patches" <ffmpeg-devel@ffmpeg.org> Cc: "Jason Stevens" <j...@wizardofthenet.com> Subject: Re: [FFmpeg-devel] [PATCH v3 2/2] libavformat/mxfenc: add missing dnxhr mxfcontainer essence ULs fre 2018-09-07 klockan 01:03 -0700 skrev Jason Stevens: > Add missing dnxhr mxf container essence ULs to the mxf encoder. > set proper mxf frame size for dnxhr using libavformat/dnxhd's get dnxhr size > function. > > This fixes dnxhr mxf files being quarantined by Avid Media Composer. > > > Signed-off-by: Jason Stevens <j...@wizardofthenet.com> > --- > libavformat/mxfenc.c | 53 +++++++++++++++++++++++++++++++++++++++++++- > 1 file changed, 52 insertions(+), 1 deletion(-) > > @@ -1959,7 +1989,11 @@ AVPacket *pkt) > header_cid = pkt->data + 0x28; > cid = header_cid[0] << 24 | header_cid[1] << 16 | header_cid[2] << 8 | > header_cid[3]; > > - if ((frame_size = avpriv_dnxhd_get_frame_size(cid)) < 0) > + if ((frame_size = avpriv_dnxhd_get_frame_size(cid)) == DNXHD_VARIABLE) { > + frame_size = avpriv_dnxhd_get_hr_frame_size(cid, > st->codecpar->width, st->codecpar->height); > + } > + > + if (frame_size < 0) > return -1; > if ((sc->interlaced = avpriv_dnxhd_get_interlaced(cid)) < 0) > return AVERROR_INVALIDDATA; > @@ -1998,6 +2032,23 @@ AVPacket *pkt) > case 1253: > sc->index = INDEX_DNXHD_720p_8bit_LOW; > break; > + case 1274: > + sc->index = INDEX_DNXHR_LB; > + break; > + case 1273: > + sc->index = INDEX_DNXHR_SQ; > + break; > + case 1272: > + sc->index = INDEX_DNXHR_HQ; > + break; > + case 1271: > + sc->index = INDEX_DNXHR_HQX; > + sc->component_depth = 10; > + break; > + case 1270: > + sc->index = INDEX_DNXHR_444; > + sc->component_depth = 10; > + break; Is there some spec one can reference to for these magic constants? Perhaps this has been mentioned already, but mxf_parse_dnxhd_frame() seems like something that could be useful for other muxers, assuming DNxHR can be muxed into anything beyond MXF /Tomas _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-devel