On Thu, 2022-11-24 at 18:57 +0000, Soft Works wrote:
> > -----Original Message-----
> > From: ffmpeg-devel <[email protected]> On Behalf Of
> > Xiang, Haihao
> > Sent: Thursday, November 24, 2022 10:19 AM
> > To: [email protected]
> > Cc: Chen,Wenbin <[email protected]>
> > Subject: [FFmpeg-devel] [PATCH 1/4] lavfi/qsvvpp: change the output
> > frame's width and height
> > 
> > From: "Chen,Wenbin" <[email protected]>
> > 
> > Make sure the size of the output frame always matches the agreed upon
> > image size.
> > 
> > Signed-off-by: Wenbin Chen <[email protected]>
> > ---
> >  libavfilter/qsvvpp.c | 5 ++---
> >  1 file changed, 2 insertions(+), 3 deletions(-)
> > 
> > diff --git a/libavfilter/qsvvpp.c b/libavfilter/qsvvpp.c
> > index 8428ee89ab..bf719b2a29 100644
> > --- a/libavfilter/qsvvpp.c
> > +++ b/libavfilter/qsvvpp.c
> > @@ -487,15 +487,14 @@ static QSVFrame *query_frame(QSVVPPContext *s,
> > AVFilterLink *outlink)
> >          if (!out_frame->frame)
> >              return NULL;
> > 
> > -        out_frame->frame->width  = outlink->w;
> > -        out_frame->frame->height = outlink->h;
> > -
> >          ret = map_frame_to_surface(out_frame->frame,
> >                                     &out_frame->surface);
> >          if (ret < 0)
> >              return NULL;
> >      }
> > 
> > +    out_frame->frame->width  = outlink->w;
> > +    out_frame->frame->height = outlink->h;
> >      out_frame->surface.Info = s->vpp_param.vpp.Out;
> > 
> >      return out_frame;
> > --
> 
> Which problem case does this address?

av_hwframe_get_buffer() gets a frame with aligned dimension, the filtered_frame
dimension might not be the expected one if don't reset width and height to the
agreed image width and height. E.g. the filtered frame is 1920x1088, not
1920x1080 in the following command

$ ffmpeg -hwaccel qsv -i input.mp4 -vf "vpp_qsv=w=1920:h=1080" -f null -

Thanks
Haihao

_______________________________________________
ffmpeg-devel mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".

Reply via email to