media: amphion: remove redundant check of colorspace in venc_s_fmt

record the colorspace set by user.
if it's not supported by h264 vui, then zero will be written to vui,
but don't modify the user setting.

Fixes: 0401e659c1 ("media: amphion: add v4l2 m2m vpu encoder stateful driver")
Signed-off-by: Ming Qian <ming.qian@nxp.com>
Acked-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
This commit is contained in:
Ming Qian 2022-11-29 11:22:17 +01:00 committed by Mauro Carvalho Chehab
parent 7206fcc593
commit 1925665ef4
1 changed files with 4 additions and 14 deletions

View File

@ -250,19 +250,10 @@ static int venc_s_fmt(struct file *file, void *fh, struct v4l2_format *f)
}
if (V4L2_TYPE_IS_OUTPUT(f->type)) {
if (!vpu_color_check_primaries(pix_mp->colorspace)) {
venc->params.color.primaries = pix_mp->colorspace;
vpu_color_get_default(venc->params.color.primaries,
&venc->params.color.transfer,
&venc->params.color.matrix,
&venc->params.color.full_range);
}
if (!vpu_color_check_transfers(pix_mp->xfer_func))
venc->params.color.transfer = pix_mp->xfer_func;
if (!vpu_color_check_matrix(pix_mp->ycbcr_enc))
venc->params.color.matrix = pix_mp->ycbcr_enc;
if (!vpu_color_check_full_range(pix_mp->quantization))
venc->params.color.full_range = pix_mp->quantization;
venc->params.color.primaries = pix_mp->colorspace;
venc->params.color.transfer = pix_mp->xfer_func;
venc->params.color.matrix = pix_mp->ycbcr_enc;
venc->params.color.full_range = pix_mp->quantization;
}
pix_mp->colorspace = venc->params.color.primaries;
@ -1281,7 +1272,6 @@ static void venc_init(struct file *file)
f.fmt.pix_mp.width = 1280;
f.fmt.pix_mp.height = 720;
f.fmt.pix_mp.field = V4L2_FIELD_NONE;
f.fmt.pix_mp.colorspace = V4L2_COLORSPACE_REC709;
venc_s_fmt(file, &inst->fh, &f);
memset(&f, 0, sizeof(f));