[FFmpeg-devel] [PATCH 0/6] dnxhr improvements

Mark Reid mindmark at gmail.com
Tue Jul 5 05:46:01 EEST 2016


On Mon, Jul 4, 2016 at 6:37 PM, Rostislav Pehlivanov
<atomnuker at gmail.com> wrote:
> On 5 July 2016 at 02:20, Rostislav Pehlivanov <atomnuker at gmail.com> wrote:
>
>>
>>
>> On 5 July 2016 at 02:06, Mark Reid <mindmark at gmail.com> wrote:
>>
>>> hi,
>>>
>>> I've been doing some work with dnxhr footage and would like to propose
>>> adding separate codec id for it rather then using the dnxhd codec id.
>>> The following patch series goes ahead and does that.
>>>
>>> fate doesn't have a dnxhr mxf sample yet, so here is one.
>>>
>>> https://dl.dropboxusercontent.com/u/170952/ffmpeg_samples/mxf/UHD/lb_uhd.mxf
>>>
>>> The last patch also adds support for muxing apple quicktime compatible
>>> dnxhr mov files.
>>> ffmpeg -i lb_uhd.mxf -vcodec copy out.mov
>>> This should produce a mov that is playable in apple quicktime
>>> provided you have avid le codecs installed.
>>>
>>> Mark Reid (6):
>>>   libavcodec/avcodec: add AV_CODEC_ID_DNXHR
>>>   libavcodec/dnxhd: add dnxhr parser and decoder
>>>   libavformat/dnxhd: add dnxhr probe and raw muxer
>>>   libavformat/isom: use dnxhr codec id
>>>   libavformat/mxf: add dnxhr codec ul
>>>   libavformat/movenc: add dnxhr compatibility for apple players
>>>
>>>  libavcodec/allcodecs.c    |  2 ++
>>>  libavcodec/avcodec.h      |  1 +
>>>  libavcodec/codec_desc.c   |  7 +++++++
>>>  libavcodec/dnxhd_parser.c |  7 +++++++
>>>  libavcodec/dnxhddec.c     | 14 ++++++++++++++
>>>  libavcodec/version.h      |  2 +-
>>>  libavformat/allformats.c  |  1 +
>>>  libavformat/dnxhddec.c    | 22 ++++++++++++++++++++--
>>>  libavformat/isom.c        |  2 +-
>>>  libavformat/movenc.c      | 34 +++++++++++++++++++++++-----------
>>>  libavformat/mxf.c         |  1 +
>>>  libavformat/mxfdec.c      |  4 ++++
>>>  libavformat/rawenc.c      | 11 +++++++++++
>>>  libavformat/version.h     |  2 +-
>>>  14 files changed, 94 insertions(+), 16 deletions(-)
>>>
>>> --
>>> 2.7.3
>>> _______________________________________________
>>> ffmpeg-devel mailing list
>>> ffmpeg-devel at ffmpeg.org
>>> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
>>>
>>
>> Why would you want to have a separate codec ID for this? If it's handled
>> by the same decoder and there's not way to differentiate it outside the
>> packet it's pointless and makes things difficult for everyone else since
>> they'd have to treat it specially. Take a look at the Dirac decoder - it
>> handles both VC2 and regular Dirac files without having to have a separate
>> codec ID.
>> As for muxing, the FOURCC codes and the mxf identifier for regular dnxhd
>> and dnxhr are identical so it's absolutely insane to have another codec id
>> for the sake of adding another codec id (also the lavc micro must be
>> bumped, on such, but that's another thing).
>> No point in treating dnxhr as special - it's simply not.
>>

Thanks for the quick feedback. I was a little hesitant on submitting
this for precisely that reason.

>
> Just saw the rest of the patches.
> If you want to treat it dnxhr as special for the mov muxer you could
> probably add dnxhr as a profile to the dnxhd code.

that sounds like a much better solution. I'll give that a go and
submit a new patch. thanks!


More information about the ffmpeg-devel mailing list