mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-18 02:46:06 +00:00
media: coda: fix default JPEG colorimetry
Set default colorspace to SRGB for JPEG encoder and decoder devices, to fix the following v4l2-compliance test failure: test VIDIOC_TRY_FMT: OK fail: v4l2-test-formats.cpp(818): fmt_raw.g_colorspace() != V4L2_COLORSPACE_SRGB Also explicitly set transfer function, YCbCr encoding and quantization range, as required by v4l2-compliance for the JPEG encoded side. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
This commit is contained in:
parent
d83d2e0881
commit
e223d45b53
@ -1653,13 +1653,18 @@ static void set_default_params(struct coda_ctx *ctx)
|
||||
csize = coda_estimate_sizeimage(ctx, usize, max_w, max_h);
|
||||
|
||||
ctx->params.codec_mode = ctx->codec->mode;
|
||||
if (ctx->cvd->src_formats[0] == V4L2_PIX_FMT_JPEG)
|
||||
ctx->colorspace = V4L2_COLORSPACE_JPEG;
|
||||
else
|
||||
if (ctx->cvd->src_formats[0] == V4L2_PIX_FMT_JPEG ||
|
||||
ctx->cvd->dst_formats[0] == V4L2_PIX_FMT_JPEG) {
|
||||
ctx->colorspace = V4L2_COLORSPACE_SRGB;
|
||||
ctx->xfer_func = V4L2_XFER_FUNC_SRGB;
|
||||
ctx->ycbcr_enc = V4L2_YCBCR_ENC_601;
|
||||
ctx->quantization = V4L2_QUANTIZATION_FULL_RANGE;
|
||||
} else {
|
||||
ctx->colorspace = V4L2_COLORSPACE_REC709;
|
||||
ctx->xfer_func = V4L2_XFER_FUNC_DEFAULT;
|
||||
ctx->ycbcr_enc = V4L2_YCBCR_ENC_DEFAULT;
|
||||
ctx->quantization = V4L2_QUANTIZATION_DEFAULT;
|
||||
ctx->xfer_func = V4L2_XFER_FUNC_DEFAULT;
|
||||
ctx->ycbcr_enc = V4L2_YCBCR_ENC_DEFAULT;
|
||||
ctx->quantization = V4L2_QUANTIZATION_DEFAULT;
|
||||
}
|
||||
ctx->params.framerate = 30;
|
||||
|
||||
/* Default formats for output and input queues */
|
||||
|
Loading…
x
Reference in New Issue
Block a user