diff options
author | Andoni Morales Alastruey <ylatuya@gmail.com> | 2015-02-10 13:32:00 +0100 |
---|---|---|
committer | Andoni Morales Alastruey <ylatuya@gmail.com> | 2015-04-08 18:45:08 +0200 |
commit | 7bc0fa5d705b36f0c22bea7b3b038736ce6fe94b (patch) | |
tree | 0d38a3821c962d542e71a50b72e546ae6416e18a /sys | |
parent | fdae6af7ded0b957a9c13122e994e6ffa177a207 (diff) | |
download | gstreamer-plugins-bad-7bc0fa5d705b36f0c22bea7b3b038736ce6fe94b.tar.gz |
ksvideosrc: only list capture devices
Diffstat (limited to 'sys')
-rw-r--r-- | sys/winks/kshelpers.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/sys/winks/kshelpers.c b/sys/winks/kshelpers.c index b6621dea2..3f7b2d25f 100644 --- a/sys/winks/kshelpers.c +++ b/sys/winks/kshelpers.c @@ -54,6 +54,7 @@ ks_enumerate_devices (const GUID * category) for (i = 0;; i++) { BOOL success; SP_DEVICE_INTERFACE_DATA if_data = { 0, }; + SP_DEVICE_INTERFACE_DATA if_alias_data = { 0,}; SP_DEVICE_INTERFACE_DETAIL_DATA_W *if_detail_data; DWORD if_detail_data_size; SP_DEVINFO_DATA devinfo_data = { 0, }; @@ -66,6 +67,13 @@ ks_enumerate_devices (const GUID * category) if (!success) /* all devices enumerated? */ break; + /* Enumerate only capture devices */ + if_alias_data.cbSize = sizeof (SP_DEVICE_INTERFACE_DATA); + success = SetupDiGetDeviceInterfaceAlias (devinfo, &if_data, &KSCATEGORY_CAPTURE, + &if_alias_data); + if (!success) + continue; + if_detail_data_size = (MAX_PATH - 1) * sizeof (gunichar2); if_detail_data = g_malloc0 (if_detail_data_size); if_detail_data->cbSize = sizeof (SP_DEVICE_INTERFACE_DETAIL_DATA_W); |