mirror of
https://github.com/obsproject/obs-studio.git
synced 2024-09-20 13:08:50 +02:00
Merge pull request #160 from fryshorts/v4l2-input
Fix infinite loop in v4l2 plugin
This commit is contained in:
commit
40566fd411
@ -408,6 +408,9 @@ static bool device_selected(obs_properties_t props, obs_property_t p,
|
|||||||
UNUSED_PARAMETER(p);
|
UNUSED_PARAMETER(p);
|
||||||
int dev = open(obs_data_getstring(settings, "device_id"),
|
int dev = open(obs_data_getstring(settings, "device_id"),
|
||||||
O_RDWR | O_NONBLOCK);
|
O_RDWR | O_NONBLOCK);
|
||||||
|
if (dev == -1)
|
||||||
|
return false;
|
||||||
|
|
||||||
obs_property_t prop = obs_properties_get(props, "pixelformat");
|
obs_property_t prop = obs_properties_get(props, "pixelformat");
|
||||||
v4l2_format_list(dev, prop);
|
v4l2_format_list(dev, prop);
|
||||||
obs_property_modified(prop, settings);
|
obs_property_modified(prop, settings);
|
||||||
@ -424,6 +427,9 @@ static bool format_selected(obs_properties_t props, obs_property_t p,
|
|||||||
UNUSED_PARAMETER(p);
|
UNUSED_PARAMETER(p);
|
||||||
int dev = open(obs_data_getstring(settings, "device_id"),
|
int dev = open(obs_data_getstring(settings, "device_id"),
|
||||||
O_RDWR | O_NONBLOCK);
|
O_RDWR | O_NONBLOCK);
|
||||||
|
if (dev == -1)
|
||||||
|
return false;
|
||||||
|
|
||||||
obs_property_t prop = obs_properties_get(props, "resolution");
|
obs_property_t prop = obs_properties_get(props, "resolution");
|
||||||
v4l2_resolution_list(dev, obs_data_getint(settings, "pixelformat"),
|
v4l2_resolution_list(dev, obs_data_getint(settings, "pixelformat"),
|
||||||
prop);
|
prop);
|
||||||
@ -442,6 +448,9 @@ static bool resolution_selected(obs_properties_t props, obs_property_t p,
|
|||||||
int width, height;
|
int width, height;
|
||||||
int dev = open(obs_data_getstring(settings, "device_id"),
|
int dev = open(obs_data_getstring(settings, "device_id"),
|
||||||
O_RDWR | O_NONBLOCK);
|
O_RDWR | O_NONBLOCK);
|
||||||
|
if (dev == -1)
|
||||||
|
return false;
|
||||||
|
|
||||||
obs_property_t prop = obs_properties_get(props, "framerate");
|
obs_property_t prop = obs_properties_get(props, "framerate");
|
||||||
unpack_tuple(&width, &height, obs_data_getint(settings,
|
unpack_tuple(&width, &height, obs_data_getint(settings,
|
||||||
"resolution"));
|
"resolution"));
|
||||||
|
Loading…
Reference in New Issue
Block a user