[FFmpeg-devel] [PATCH] avutil/frame: Remove requirements to use accessors for AVFrame

wm4 nfxjfg at googlemail.com
Mon Jan 9 15:48:19 EET 2017


On Mon, 9 Jan 2017 08:17:08 -0500
"Ronald S. Bultje" <rsbultje at gmail.com> wrote:

> Hi,
> 
> On Mon, Jan 9, 2017 at 7:15 AM, wm4 <nfxjfg at googlemail.com> wrote:
> 
> >     /**
> >      * Not to be accessed directly from outside libavutil
> >      */
> >     AVBufferRef *qp_table_buf;
> >
> > The comment should be adjusted and allow direct access. Also,
> > it should be moved out of the FF_API_FRAME_QP ifdef (why was
> > it under it anyway).  
> 
> 
> I disagree. FF_API_FRAME_QP is not something that exists or is useful
> outside a handful of codecs (basically mpeg-1/2/4). If we want this to be
> public API, it should exist in a way that makes it useful to the majority
> of codecs that use quantization. I'm speaking codecs not developed by
> people that implemented qp_table_buf, for example vp3/5/6/8/9 etc.
> 
> This also means we need a useful way to normalization the quantizer to a
> universal scale. Exporting it as SCALE_MPEG, SCALE_H264 etc. is not useful.
> We need a universal Q so -sameq has some kind of meaning when re-encoding
> mpeg-4 to vp9. Also, aq visualization in libavfilter would suddenly be
> meaningful across codecs. Etc.

Ah, I thought the QP API survived, but now I see that the accessors are
within FF_API_FRAME_QP as well. So this is not a bug like I thought,
but intentional, and all QP retrieval will be removed after the API
bump. Just strange that the accessors have no attribute_deprecated.


More information about the ffmpeg-devel mailing list