[FFmpeg-devel] [PATCH v12 5/9] libavcodec/dnxucdec: DNxUncompressed decoder

Anton Khirnov anton at khirnov.net
Tue Oct 22 22:11:56 EEST 2024


Quoting Marton Balint (2024-10-22 20:35:52)
> 
> 
> On Tue, 22 Oct 2024, Anton Khirnov wrote:
> 
> > Quoting Martin Schitter (2024-10-21 21:57:18)
> >> +static int pass_through(AVCodecContext *avctx, AVFrame *frame, const AVPacket *avpkt)
> >> +{
> >> +    /* there is no need to copy as the data already match
> >> +     * a known pixel format */
> >> +
> >> +    frame->buf[0] = av_buffer_ref(avpkt->buf);
> >
> > I said this twice before already - every single format that uses
> > pass_through() should instead be exported by the demuxer as
> > AV_CODEC_ID_RAWVIDEO, because that's what it is.
> 
> I don't really want the MXF demuxer/muxer to do DNXUC parsing 

What parsing is there to do? You just compare against the codec tag.

> Also I might want to wrap DNXUC essence to another container, or remux
> it to MXF again.

And where is the problem here?

> So I am not convinced that the current approach is bad.

It is bad because it introduces a completely pointless and arbitrary
distinction between "rawvideo" and "rawvideo, but EXTRACTED FROM MXF".

And also because of the two points I mentioned:
> > * decoding these formats won't pointlessly waste resources and add
> >  latency using frame threading, which is useless for them
> > * your decoder can be marked as AV_CODEC_CAP_DR1

-- 
Anton Khirnov


More information about the ffmpeg-devel mailing list