[PATCH v2] clients: teach simple-dmabuf-v4l to deal with flipped input

Micah Fedke micah.fedke at collabora.co.uk
Wed Feb 8 16:33:29 UTC 2017


Bryce,

Here is a branch that uses the legacy VIDIOC_QUERYCTRL to query the 
controls, instead of VIDIOC_QUERY_EXT_CTRL. I believe this will make it 
more compatible with older kernels.  Can you test it?

https://git.collabora.com/cgit/user/fedke.m/weston.git/log/?h=yflip_queryctl_legacy_01


Thanks,

-mf

On 02/07/2017 08:17 PM, Bryce Harrington wrote:
> On Tue, Feb 07, 2017 at 11:48:47AM +0200, Pekka Paalanen wrote:
>> On Mon,  6 Feb 2017 12:57:41 -0500
>> Micah Fedke <micah.fedke at collabora.co.uk> wrote:
>>
>>> The v4l2 API can be queried to detect if the input video image is
>>> horizontally or vertically flipped. If the image is y-flipped, we can
>>> set the ZWP_LINUX_BUFFER_PARAMS_V1_FLAGS_Y_INVERT flag to notify the
>>> compositor.  If the image is h-flipped, we can only print a warning
>>> since linux_buffer_params_v1 does not support horizontal flipping.
>>>
>>> Signed-off-by: Micah Fedke <micah.fedke at collabora.co.uk>
>>> ---
>>> This version addresses Pekka's comments by renaming check_v4l2_control to
>>> check_v4l2_control_bool, removing the len parameter, separating out the logic
>>> tests in check_v4l2_control_bool and fixing spacing issues.
>>>
>>>  clients/simple-dmabuf-v4l.c | 62 +++++++++++++++++++++++++++++++++++++++------
>>>  1 file changed, 54 insertions(+), 8 deletions(-)
>>
>> Hi,
>>
>> looks fine, pushed with my R-b:
>>    9a200d7..0fee977  master -> master
>
> Breaks the build on older linux kernels.
>
>   CC       clients/weston_simple_dmabuf_v4l-simple-dmabuf-v4l.o
> clients/simple-dmabuf-v4l.c:358:25: warning: ‘struct v4l2_query_ext_ctrl’ declared inside parameter list [enabled by default]
>                          const int expected_value)
>                          ^
> clients/simple-dmabuf-v4l.c:358:25: warning: its scope is only this definition or declaration, which is probably not what you want [enabled by default]
> clients/simple-dmabuf-v4l.c: In function ‘check_v4l2_control_bool’:
> clients/simple-dmabuf-v4l.c:363:18: error: dereferencing pointer to incomplete type
>   ctrl.id = qectrl->id;
>                   ^
> et al.
>
> Builds ok with the patch reverted, or with --disable-simple-dmabuf-v4l-client set.
>
>
> Bryce
>
> _______________________________________________
> wayland-devel mailing list
> wayland-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/wayland-devel
>

-- 

Micah Fedke
Collabora Ltd.
+44 1223 362967
https://www.collabora.com/
https://twitter.com/collaboraltd


More information about the wayland-devel mailing list