07-04-2017 05:50 AM
Hello,
we are working on a LabVIEW Vi which uses the rear camera of a Windows 10 Pro tablet. The control of the camera works so far, but we can not find a way to access the flash ligth. The camera is listed in the Measurement & Automation Explorer, but there is no camera attribute for controlling the flash light.
When searching for a solution we found out that a system component named "Flash LM3554", which can be found in the system control, might be the driver for the flash light. How can this part be accessed from within LabVIEW?
It doesn't seem that there is a .dll available for this component, only a LM3554.sys file is located in the System32/Drivers directory. Can this be used somehow?
Thank you.
Sincerly
Hannes Preßler
07-05-2017 08:35 AM
Based on this link: https://stackoverflow.com/questions/13454422/reflection-failure-when-attempting-to-access-microsoft-...
it seems you should be able to activate a CameraTorch-property.
/Y
07-07-2017 04:04 AM
Thank you for your help.
Can you please give advice how I can activate this property in LabVIEW?
Does this property even exist on a Windows 10 Pro machine, because the article is about Windows Mobile?
07-07-2017 04:40 AM - edited 07-07-2017 04:42 AM
According to this link the AudioVideoCaptureDevice class is a Windows Phone 8 class only, so not available on the standard Windows .Net implementation.
I'm sure there would be some way of handling this through calls into some Windows DLL but information about that seems very scarce.
The Microsoft sanctioned way to do this is through Windows.Media.Devices.VideoDeviceController but that seems an UWP API so not available in a normal Win32 process.
UWP API means it's only accessible in an UWP (Universal Windows Platform) app and that means an app compiled for and as full platform independent .Net app that only can be installed through the Microsoft app store. LabVIEW can not create such apps as it compiles the code directly to x86 or x64 binary object code instead of an .Net IL code.
It's another clever Microsoft way to create new APIs mainly as UWP classes, supposedly to make the life of developers easy, but at the same time grabbing back as much of control they can get over the platform.