Not sure if this is the right place to post.
My question is regarding the reasoning behind a particular v4l2-compliance
test around VIDIOC_CREATE_BUF
.
I’m looking at 1.18 version of v4l2-utils
I’m new to v4l2
so apologies for my ignorance.
this code block
fmt.s_height(fmt.g_height() / 2);
for (unsigned p = 0; p < fmt.g_num_planes(); p++)
fmt.s_sizeimage(fmt.g_sizeimage(p) / 2, p);
fail_on_test(q.create_bufs(node, 1, &fmt) != EINVAL);
It seems to me it’s expect a fail, EINVAL
when downsizing a fmt
request.
First, I think fmt.g_height()/2
then fmt.s_sizeimage(fmt.g_sizeimage(p) / 2, p);
seems ok to me, as it’s half the height then half the image size too.
Second, it seems the default linux vb2_core_create_bufs
does not have any return of EINVAL
because of the size checking.
So my question is what this test is expecting and is there a reference doc for it?