On Thu, Apr 11, 2019 at 4:51 AM Li, Zhong <zhong...@intel.com> wrote:
>
> > From: ffmpeg-devel [mailto:ffmpeg-devel-boun...@ffmpeg.org] On Behalf
> > Of Linjie Fu
> > Sent: Wednesday, April 10, 2019 7:56 PM
> > To: ffmpeg-devel@ffmpeg.org
> > Cc: Fu, Linjie <linjie...@intel.com>
> > Subject: [FFmpeg-devel] [PATCH, v2] lavu/hwcontext_qsv: Fix the realign
> > check for hwupload
> >
> > Fix the aligned check in hwupload, input surface should be 16 aligned too.
> >
> > Fix #7830.
> >
> > Signed-off-by: Linjie Fu <linjie...@intel.com>
> > ---
> >
> >  libavutil/hwcontext_qsv.c | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/libavutil/hwcontext_qsv.c b/libavutil/hwcontext_qsv.c index
> > b6d8bfe2bf..8b000fe636 100644
> > --- a/libavutil/hwcontext_qsv.c
> > +++ b/libavutil/hwcontext_qsv.c
> > @@ -892,7 +892,8 @@ static int
> > qsv_transfer_data_to(AVHWFramesContext *ctx, AVFrame *dst,
> >          return ret;
> >
> >
> > -    if (src->height & 16 || src->linesize[0] & 16) {
> > +    if (src->height & 15 || src->width & 15 ||
> > +                            src->linesize[0] & 15) {
>
> Should be better to use FFALIGN()

Since you are checking alignment here, the manual checks should be
fine. FFALIGN is for creating aligned values. You could use something
like "if (src->height != FFALIGN(src->height, 16))", but that doesn't
really seem clearer to me.

>
> Another question is it really necessary to check width alignment if we 
> already checked linesize to fix this issue?
> (I guess it it not necessary, and if it is needed, many other places probably 
> needed to be changed too.)

I agree, linesize should be enough, and width alignment probably not needed.

- Hendrik
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to