[FFmpeg-devel] [PATCH] lavc/vaapi_encode_av1: Fix ref_order_hint value for second slot

Michael Niedermayer michael at niedermayer.cc
Mon Aug 4 01:26:18 EEST 2025


Hi Ruijing, David

it seems theres no active maintainer for this

To move this patch forward, maybe you know someone who wants to
help with maintaince.

Or maybe AMD might be interrested in having one of their employees
officially maintain AMD related hw accelleration in ffmpeg ?

thx

On Wed, Jul 30, 2025 at 08:01:36PM +0000, Dong, Ruijing via ffmpeg-devel wrote:
> [AMD Official Use Only - AMD Internal Distribution Only]
> 
> Without this fix, av1 vaapi encoding on navi3x (vcn4) is broken.
> 
> Thanks,
> Ruijing
> 
> -----Original Message-----
> From: ffmpeg-devel <ffmpeg-devel-bounces at ffmpeg.org> On Behalf Of David Rosca
> Sent: Thursday, July 24, 2025 6:04 AM
> To: ffmpeg-devel at ffmpeg.org
> Subject: Re: [FFmpeg-devel] [PATCH] lavc/vaapi_encode_av1: Fix ref_order_hint value for second slot
> 
> On Thu, Jun 5, 2025 at 2:17 PM David Rosca <nowrep at gmail.com> wrote:
> >
> > On Mon, Apr 14, 2025 at 4:00 PM David Rosca <nowrep at gmail.com> wrote:
> > >
> > > We always use two slots, even when only one L0 reference is
> > > supported by the driver. However we still need to set the correct
> > > value for the ref_order_hint of the second slot.
> > >
> > > Fixes bf9f921ef7 ("avcodec/hw_base_encode: restrict size of
> > > next_prev")
> >
> > Ping
> 
> Ping again, this should go in before 8.0 release to fix the regression.
> 
> Thanks,
> David
> >
> > > ---
> > >  libavcodec/vaapi_encode_av1.c | 3 +++
> > >  1 file changed, 3 insertions(+)
> > >
> > > diff --git a/libavcodec/vaapi_encode_av1.c
> > > b/libavcodec/vaapi_encode_av1.c index 1b350cd936..cf0ff53edc 100644
> > > --- a/libavcodec/vaapi_encode_av1.c
> > > +++ b/libavcodec/vaapi_encode_av1.c
> > > @@ -476,6 +476,7 @@ static int vaapi_encode_av1_init_picture_params(AVCodecContext *avctx,
> > >      AV1RawFrameHeader                *fh = &fh_obu->obu.frame.header;
> > >      VAEncPictureParameterBufferAV1 *vpic = vaapi_pic->codec_picture_params;
> > >      CodedBitstreamFragment          *obu = &priv->current_obu;
> > > +    CodedBitstreamAV1Context      *cbctx = priv->cbc->priv_data;
> > >      FFHWBaseEncodePicture *ref;
> > >      VAAPIEncodeAV1Picture *href;
> > >      int slot, i;
> > > @@ -523,6 +524,8 @@ static int vaapi_encode_av1_init_picture_params(AVCodecContext *avctx,
> > >              fh->ref_frame_idx[3] = href->slot;
> > >              fh->ref_order_hint[href->slot] = ref->display_order - href->last_idr_frame;
> > >              vpic->ref_frame_ctrl_l0.fields.search_idx1 =
> > > AV1_REF_FRAME_GOLDEN;
> > > +        } else {
> > > +            fh->ref_order_hint[!href->slot] =
> > > + cbctx->ref[!href->slot].order_hint;
> > >          }
> > >          break;
> > >      case FF_HW_PICTURE_TYPE_B:
> > > --
> > > 2.49.0
> > >
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel at ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request at ffmpeg.org with subject "unsubscribe".

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

it is not once nor twice but times without number that the same ideas make
their appearance in the world. -- Aristotle
-------------- 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/20250804/be1671f6/attachment.sig>


More information about the ffmpeg-devel mailing list