[FFmpeg-devel] [PATCH] lavc/amfenc: Reference to input AVFrame (hwaccel) is retained during the encoding process

Kravchenko, Alexander AAKravchenko at luxoft.com
Tue Mar 27 01:34:49 EEST 2018


>
> Put email comments on a patch below the "---" line (otherwise they end up in the commit message when applied).
>
Sorry, I am not sure I understand you correctly here


> > +#define AMF_AV_GET_PROPERTY_INTERFACE(res, pThis, name, TargetType, val) \
> > +    { \
> > +        AMFVariantStruct var; \
> > +        res = AMFVariantInit(&var); \
> > +        if (res != AMF_OK) \
> > +            return res; \
> > +        res = pThis->pVtbl->GetProperty(pThis, name, &var); \
> > +        if (res == AMF_OK) { \
> > +            if (var.type == AMF_VARIANT_INTERFACE && AMFVariantInterface(&var)) { \
> > +                AMF_AV_QUERY_INTERFACE(res, AMFVariantInterface(&var), TargetType, val); \
> > +            } else { \
> > +                res = AMF_INVALID_DATA_TYPE; \
> > +            } \
> > +        } \
> > +        AMFVariantClear(&var); \
> > +    }
>
> These look even more like they should be functions rather than macros now?  In particular, the returns in them interact badly with the
> code below.

I'd also prefer function here, but it works with different types (TargetType parameter is type name)
I am going to discuss propose such macros to AMF headers near future.


> > +            if (res != AMF_OK)
> > +            {
>
> { on the previous line.
>
> > +                av_log(avctx, AV_LOG_WARNING, "failed to attach av_frame_ref to surface\n");
>
> And keep going anyway, corrupting the output?
>
Ok, agree, I will return error here



Thanks,
Alexander

________________________________

This e-mail and any attachment(s) are intended only for the recipient(s) named above and others who have been specifically authorized to receive them. They may contain confidential information. If you are not the intended recipient, please do not read this email or its attachment(s). Furthermore, you are hereby notified that any dissemination, distribution or copying of this e-mail and any attachment(s) is strictly prohibited. If you have received this e-mail in error, please immediately notify the sender by replying to this e-mail and then delete this e-mail and any attachment(s) or copies thereof from your system. Thank you.


More information about the ffmpeg-devel mailing list