Leadtools.MediaFoundation Namespace > CaptureCtrl Class : CaptureDIB Method |
'Declaration Public Overridable Function CaptureDIB() As IntPtr
'Usage Dim instance As CaptureCtrl Dim value As IntPtr value = instance.CaptureDIB()
public virtual IntPtr CaptureDIB()
public: virtual IntPtr CaptureDIB();
Note: Internally this method calls StartCapture with the capture mode set to CaptureMode.Still. It then waits for the current capture delay setting specified by CaptureStillDelay before capturing the still DIB. Finally, it stops the session by calling StopCapture.
Imports Leadtools Imports Leadtools.MediaFoundation Imports LeadtoolsMediaFoundationExamples.Fixtures Public _result As Boolean = False Public _form As New CaptureCtrlForm() Public Sub CaptureDIBExample() ' reference the capture control Dim capturectrl As CaptureCtrl = _form.CaptureCtrl Try ' set the video capture device, use your capture device name here If capturectrl.VideoDevices("Logitech") Is Nothing Then Throw New Exception("No Logitech video device available") End If capturectrl.VideoDevices("Logitech").Selected = True ' let's set a delay of 1 second to insure that some capture devices ' have time to adjust their gain capturectrl.CaptureStillDelay = 1000 ' capture device independent bitmap Dim dib As IntPtr = capturectrl.CaptureDIB() _result = (dib <> Nothing) 'free allocated global memory Marshal.FreeHGlobal(dib) Catch generatedExceptionName As COMException _result = False Catch generatedExceptionName As Exception _result = False End Try End Sub
using Leadtools; using Leadtools.MediaFoundation; using LeadtoolsMediaFoundationExamples.Fixtures; public bool _result = false; public CaptureCtrlForm _form = new CaptureCtrlForm(); public void CaptureDIBExample() { // reference the capture control CaptureCtrl capturectrl = _form.CaptureCtrl; try { // set the video capture device, use your capture device name here if (capturectrl.VideoDevices["Logitech"] == null) throw new Exception("No Logitech video device available"); capturectrl.VideoDevices["Logitech"].Selected = true; // let's set a delay of 1 second to insure that some capture devices // have time to adjust their gain capturectrl.CaptureStillDelay = 1000; // capture device independent bitmap IntPtr dib = capturectrl.CaptureDIB(); _result = (dib != null); //free allocated global memory Marshal.FreeHGlobal(dib); } catch (COMException) { _result = false; } catch (Exception) { _result = false; } }