[FFmpeg-devel] [PATCH] lavu/hwcontext_vaapi: provide detailed warning if directly mapping fails

Li, Zhong zhong.li at intel.com
Wed Aug 14 17:36:50 EEST 2019


> From: ffmpeg-devel [mailto:ffmpeg-devel-bounces at ffmpeg.org] On Behalf
> Of Linjie Fu
> Sent: Wednesday, August 14, 2019 5:25 PM
> To: ffmpeg-devel at ffmpeg.org
> Cc: Fu, Linjie <linjie.fu at intel.com>
> Subject: [FFmpeg-devel] [PATCH] lavu/hwcontext_vaapi: provide detailed
> warning if directly mapping fails
> 
> Detailed message could be helpful when using
> hwmap=mode=direct,format=xxx for both qsv and vaapi.
> 
> Signed-off-by: Linjie Fu <linjie.fu at intel.com>
> ---
>  libavutil/hwcontext_vaapi.c | 9 ++++++---
>  1 file changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/libavutil/hwcontext_vaapi.c b/libavutil/hwcontext_vaapi.c index
> cf117640f2..30c42e4385 100644
> --- a/libavutil/hwcontext_vaapi.c
> +++ b/libavutil/hwcontext_vaapi.c
> @@ -747,19 +747,22 @@ static int vaapi_map_frame(AVHWFramesContext
> *hwfc,
>      av_log(hwfc, AV_LOG_DEBUG, "Map surface %#x.\n", surface_id);
> 
>      if (!ctx->derive_works && (flags & AV_HWFRAME_MAP_DIRECT)) {
> -        // Requested direct mapping but it is not possible.
> +        av_log(hwfc, AV_LOG_WARNING, "Requested direct mapping but
> "
> +                                            "it is not
> possible.\n");
>          return AVERROR(EINVAL);
>      }
>      if (dst->format == AV_PIX_FMT_NONE)
>          dst->format = hwfc->sw_format;
>      if (dst->format != hwfc->sw_format && (flags &
> AV_HWFRAME_MAP_DIRECT)) {
> -        // Requested direct mapping but the formats do not match.
> +        av_log(hwfc, AV_LOG_WARNING, "Requested direct mapping but
> "
> +                                        "the formats do not
> match.\n");
>          return AVERROR(EINVAL);
>      }
> 
>      err = vaapi_get_image_format(hwfc->device_ctx, dst->format,
> &image_format);
>      if (err < 0) {
> -        // Requested format is not a valid output format.
> +        av_log(hwfc, AV_LOG_WARNING, "Requested format is "
> +                                        "not a valid output
> + format.\n");
>          return AVERROR(EINVAL);
>      }
> 
> --
> 2.17.1

Why just give a warning message when you need to return an error? 


More information about the ffmpeg-devel mailing list