[FFmpeg-devel] [PATCH] lavc/libx264: support AV_CODEC_CAP_ENCODER_RECON_FRAME

Michael Niedermayer michael at niedermayer.cc
Tue Jul 19 14:44:56 EEST 2022


On Mon, Jul 18, 2022 at 08:29:56PM +0200, Anton Khirnov wrote:
> Quoting James Almer (2022-07-18 20:18:16)
> > 
> > 
> > On 7/18/2022 3:15 PM, Anton Khirnov wrote:
> > > Quoting James Almer (2022-07-18 14:23:58)
> > >> On 7/18/2022 4:12 AM, Anton Khirnov wrote:
> > >>> ---
> > >>>    libavcodec/libx264.c | 52 +++++++++++++++++++++++++++++++++++++++++++-
> > >>>    1 file changed, 51 insertions(+), 1 deletion(-)
> > >>>
> > >>> diff --git a/libavcodec/libx264.c b/libavcodec/libx264.c
> > >>> index 98ec030865..5e360682e6 100644
> > >>> --- a/libavcodec/libx264.c
> > >>> +++ b/libavcodec/libx264.c
> > >>> @@ -311,6 +311,25 @@ static void free_picture(AVCodecContext *ctx)
> > >>>        pic->extra_sei.num_payloads = 0;
> > >>>    }
> > >>>    
> > >>> +static enum AVPixelFormat csp_to_pixfmt(int csp)
> > >>> +{
> > >>> +    switch (csp) {
> > >>> +#ifdef X264_CSP_I400
> > >>> +    case X264_CSP_I400:                         return AV_PIX_FMT_GRAY8;
> > >>> +    case X264_CSP_I400 | X264_CSP_HIGH_DEPTH:   return AV_PIX_FMT_GRAY10;
> > >>> +#endif
> > >>> +    case X264_CSP_I420:                         return AV_PIX_FMT_YUV420P;
> > >>> +    case X264_CSP_I420 | X264_CSP_HIGH_DEPTH:   return AV_PIX_FMT_YUV420P10;
> > >>> +    case X264_CSP_I422:                         return AV_PIX_FMT_YUV422P;
> > >>> +    case X264_CSP_I422 | X264_CSP_HIGH_DEPTH:   return AV_PIX_FMT_YUV422P10;
> > >>> +    case X264_CSP_I444:                         return AV_PIX_FMT_YUV444P;
> > >>> +    case X264_CSP_I444 | X264_CSP_HIGH_DEPTH:   return AV_PIX_FMT_YUV444P10;
> > >>
> > >> We're still supporting old x264 versions, so you should add some
> > >> considerations for 9 bit pixfmts. On X264_BUILD < 153, just check the
> > >> value of x264_bit_depth.
> > > 
> > > Is there much point in continuing to support 5.5 year old x264? We could
> > > drop a lot of ugliness, including the abominable X264_init_static().
> > 
> > Afaik we tend to support what's shipped with not yet EOL'd big distros 
> > like Debian and Ubuntu. I assume Michael's Ubuntu setup is one of those, 
> > and it has a libx264 without X264_CSP_I400, for example.
> 
> Debian oldstable has libx264 155 at least.

Ubuntu 18.04LTS has 152
https://packages.ubuntu.com/search?keywords=x264&searchon=names&suite=bionic&section=all

[...]

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

I have never wished to cater to the crowd; for what I know they do not
approve, and what they approve I do not know. -- Epicurus
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20220719/e2367d9f/attachment.sig>


More information about the ffmpeg-devel mailing list