0
0
mirror of https://github.com/obsproject/obs-studio.git synced 2024-09-20 13:08:50 +02:00
obs-studio/plugins/linux-v4l2
Alexis King 08d4456339 v4l2: Ignore menu controls with no permissible values
At least one V4L2 device reports a menu control when queried with
QUERYCTRL yet does not report supporting a single value in its legal
range when queried with QUERYMENU. Such devices are arguably
ill-behaved, but the Linux UVC driver takes no special care to ignore
such pathological controls, so we have to do it ourselves.

Without this patch, a menu control with no valid values would cause
v4l2_control_changed to go into an infinite loop, since every S_CTRL
request on such pathological control properties would always fail,
triggering an additional modification event. By ignoring these
properties altogether, we avoid that problem, and the user benefits by
not having the UI cluttered by a confusing and useless menu control.
2021-10-16 15:24:20 -07:00
..
data/locale Update translations from Crowdin 2021-09-24 09:42:08 -07:00
CMakeLists.txt linux-v4l2: Add virtual camera output 2020-10-30 02:00:14 -07:00
linux-v4l2.c linux-v4l2: Improve module detection 2021-01-25 04:14:29 -08:00
v4l2-controls.c v4l2: Ignore menu controls with no permissible values 2021-10-16 15:24:20 -07:00
v4l2-controls.h linux-v4l2: Add support for controls 2019-12-18 09:22:05 -08:00
v4l2-helpers.c linux-v4l2: Add auto reset on timeout option 2021-01-20 16:45:05 -08:00
v4l2-helpers.h linux-v4l2: Add auto reset on timeout option 2021-01-20 16:45:05 -08:00
v4l2-input.c libobs, linux-v4l2: Set thread names 2021-01-25 04:13:24 -08:00
v4l2-output.c linux-v4l2: Use flatpak-spawn when inside a Flatpak sandbox 2021-04-18 17:27:33 -07:00
v4l2-udev.c clang-format: Apply formatting 2019-06-23 23:49:10 -07:00
v4l2-udev.h linux-v4l2: Replace custom udev callbacks 2015-04-23 21:50:36 +02:00