summaryrefslogtreecommitdiff
path: root/libavfilter
diff options
context:
space:
mode:
authorWenbin Chen <wenbin.chen-at-intel.com@ffmpeg.org>2022-07-07 11:12:52 +0800
committerHaihao Xiang <haihao.xiang@intel.com>2022-07-20 12:35:23 +0800
commit636a629ff63ef60c9b31ba87e8e0a90e1f277c97 (patch)
treeec4701cb4b5d812e0693ab964ee4d53fe0bed58d /libavfilter
parent52ad617af56e5bd009f488a26ceb4f73595b2477 (diff)
libavfilter/vf_overlay_qsv: Use format of first input to set output format for overlay_qsv
overlay_qsv hard coded to use nv12 as output format. Now use the format of the first input to set output format. For detailed information of supported format on different platform, please see the "composition" rows in "Video Processing Features" at below link: https://www.intel.com/content/www/us/en/develop/documentation/media-capabilities-of-intel-hardware/top.html Signed-off-by: Wenbin Chen <wenbin.chen@intel.com> Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
Diffstat (limited to 'libavfilter')
-rw-r--r--libavfilter/vf_overlay_qsv.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libavfilter/vf_overlay_qsv.c b/libavfilter/vf_overlay_qsv.c
index 7e76b39aa9..d947a1faa1 100644
--- a/libavfilter/vf_overlay_qsv.c
+++ b/libavfilter/vf_overlay_qsv.c
@@ -276,6 +276,7 @@ static int config_output(AVFilterLink *outlink)
int ret;
av_log(ctx, AV_LOG_DEBUG, "Output is of %s.\n", av_get_pix_fmt_name(outlink->format));
+ vpp->qsv_param.out_sw_format = in0->format;
if ((in0->format == AV_PIX_FMT_QSV && in1->format != AV_PIX_FMT_QSV) ||
(in0->format != AV_PIX_FMT_QSV && in1->format == AV_PIX_FMT_QSV)) {
av_log(ctx, AV_LOG_ERROR, "Mixing hardware and software pixel formats is not supported.\n");
@@ -288,6 +289,7 @@ static int config_output(AVFilterLink *outlink)
av_log(ctx, AV_LOG_ERROR, "Inputs with different underlying QSV devices are forbidden.\n");
return AVERROR(EINVAL);
}
+ vpp->qsv_param.out_sw_format = hw_frame0->sw_format;
}
outlink->w = vpp->var_values[VAR_MW];