Leadtools.Multimedia Namespace > CaptureCtrl Class : VideoWindow Property |
'Declaration Public Overridable ReadOnly Property VideoWindow As IntPtr
'Usage Dim instance As CaptureCtrl Dim value As IntPtr value = instance.VideoWindow
public virtual IntPtr VideoWindow {get;}
Imports Leadtools Imports Leadtools.Multimedia Imports LeadtoolsMultimediaExamples.Fixtures Public _result As Boolean = False Public _form As CaptureCtrlForm = New CaptureCtrlForm() Public _capturectrl As CaptureCtrl Public Sub VideoWindowExample() ' reference the capture control _capturectrl = _form.CaptureCtrl ' output file Dim outFile As String = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_VideoWindowExample.avi") Try ' set the source video device, select using your device name here If _capturectrl.VideoDevices("USB") Is Nothing Then Throw New Exception("No USB video device available") End If _capturectrl.VideoDevices("USB").Selected = True ' select a video compressor _capturectrl.VideoCompressors.Mpeg4.Selected = True ' set the target output file _capturectrl.TargetFile = outFile If _capturectrl.IsModeAvailable(CaptureMode.Video) Then ' enable the preview _capturectrl.Preview = True ' subscribe to the started event AddHandler _capturectrl.Started, AddressOf CaptureCtrl_Started ' start capture _capturectrl.StartCapture(CaptureMode.Video) ' get the video window handle Dim handle As IntPtr = _capturectrl.VideoWindow ' set the result to what we expect _result = (handle <> Nothing) End If Catch e1 As Exception _result = False End Try ' we'll loop on the state and pump messages for this example. ' but you should not need to if running from a Windows Forms application. Do While _capturectrl.State = CaptureState.Running Application.DoEvents() Loop End Sub Private Sub CaptureCtrl_Started(ByVal sender As Object, ByVal e As EventArgs) ' stop the capture (we don't need a complete capture for this example) _capturectrl.StopCapture() End Sub Public NotInheritable Class LEAD_VARS Public Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 18\Media" End Class
using Leadtools; using Leadtools.Multimedia; using LeadtoolsMultimediaExamples.Fixtures; public bool _result = false; public CaptureCtrlForm _form = new CaptureCtrlForm(); public CaptureCtrl _capturectrl; public void VideoWindowExample() { // reference the capture control _capturectrl = _form.CaptureCtrl; // output file string outFile = Path.Combine(LEAD_VARS.MediaDir,"CaptureCtrl_VideoWindowExample.avi"); try { // set the source video device, select using your device name here if (_capturectrl.VideoDevices["USB"] == null) throw new Exception("No USB video device available"); _capturectrl.VideoDevices["USB"].Selected = true; // select a video compressor _capturectrl.VideoCompressors.Mpeg4.Selected = true; // set the target output file _capturectrl.TargetFile = outFile; if (_capturectrl.IsModeAvailable(CaptureMode.Video)) { // enable the preview _capturectrl.Preview = true; // subscribe to the started event _capturectrl.Started += new EventHandler(CaptureCtrl_Started); // start capture _capturectrl.StartCapture(CaptureMode.Video); // get the video window handle IntPtr handle = _capturectrl.VideoWindow; // set the result to what we expect _result = (handle != null); } } catch (Exception) { _result = false; } // we'll loop on the state and pump messages for this example. // but you should not need to if running from a Windows Forms application. while (_capturectrl.State == CaptureState.Running) Application.DoEvents(); } void CaptureCtrl_Started(object sender, EventArgs e) { // stop the capture (we do not need a complete capture for this example) _capturectrl.StopCapture(); } static class LEAD_VARS { public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 18\Media"; }