Leadtools.Multimedia Namespace > CaptureCtrl Class : IsModeAvailable Method |
'Declaration Public Overridable Function IsModeAvailable( _ ByVal mode As CaptureMode _ ) As Boolean
'Usage Dim instance As CaptureCtrl Dim mode As CaptureMode Dim value As Boolean value = instance.IsModeAvailable(mode)
public virtual bool IsModeAvailable( CaptureMode mode )
public: virtual bool IsModeAvailable( CaptureMode mode )
Imports Leadtools Imports Leadtools.Multimedia Imports LeadtoolsMultimediaExamples.Fixtures Public _result As Boolean = False Public _form As CaptureCtrlForm = New CaptureCtrlForm() Public Sub IsModeAvailableExample() ' reference the capture control Dim capturectrl As CaptureCtrl = _form.CaptureCtrl ' output file for processor settings Dim outFile As String = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_IsModeAvailableExample.avi") Try ' try to find a USB camera If capturectrl.VideoDevices("USB") Is Nothing Then Throw New Exception("No USB video device available") End If capturectrl.VideoDevices("USB").Selected = True ' try to find a USB audio device If capturectrl.AudioDevices("USB") Is Nothing Then Throw New Exception("No USB audio device available") End If capturectrl.AudioDevices("USB").Selected = True ' set MPEG2 as the video compressor capturectrl.VideoCompressors.Mpeg2.Selected = True ' set AC3 as the audio compressor capturectrl.AudioCompressors.AC3.Selected = True ' set the target output file capturectrl.TargetFile = outFile ' set the target output format capturectrl.TargetFormat = TargetFormatType.AVI ' check if we have can capture video If capturectrl.IsModeAvailable(CaptureMode.VideoAndAudio) Then capturectrl.FrameRate = 5 ' 5 frames per second capturectrl.UseFrameRate = True capturectrl.TimeLimit = 10 ' just 10 seconds of capture time capturectrl.UseTimeLimit = True ' check to see if we can preview compressed output If capturectrl.IsPreviewTapSupported(CapturePreview.Video, CapturePreviewTap.Compressor) Then ' enable preview capturectrl.Preview = True ' enable preview video capturectrl.PreviewSource = CapturePreview.Video ' set the preview tap location capturectrl.PreviewTap = CapturePreviewTap.Compressor End If ' subscribe to the complete event AddHandler capturectrl.Complete, AddressOf CaptureCtrl_Complete ' start the capture process capturectrl.StartCapture(CaptureMode.VideoAndAudio) ' 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 If Catch e1 As Exception _result = False End Try End Sub Private Sub CaptureCtrl_Complete(ByVal sender As Object, ByVal e As EventArgs) _result = True 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 void IsModeAvailableExample() { // reference the capture control CaptureCtrl capturectrl = _form.CaptureCtrl; // output file for processor settings string outFile = Path.Combine(LEAD_VARS.MediaDir,"CaptureCtrl_IsModeAvailableExample.avi"); try { // try to find a USB camera if (capturectrl.VideoDevices["USB"] == null) throw new Exception("No USB video device available"); capturectrl.VideoDevices["USB"].Selected = true; // try to find a USB audio device if (capturectrl.AudioDevices["USB"] == null) throw new Exception("No USB audio device available"); capturectrl.AudioDevices["USB"].Selected = true; // set MPEG2 as the video compressor capturectrl.VideoCompressors.Mpeg2.Selected = true; // set AC3 as the audio compressor capturectrl.AudioCompressors.AC3.Selected = true; // set the target output file capturectrl.TargetFile = outFile; // set the target output format capturectrl.TargetFormat = TargetFormatType.AVI; // check whether we can capture video if (capturectrl.IsModeAvailable(CaptureMode.VideoAndAudio)) { capturectrl.FrameRate = 5; // 5 frames per second capturectrl.UseFrameRate = true; capturectrl.TimeLimit = 10; // just 10 seconds of capture time capturectrl.UseTimeLimit = true; // check to see if we can preview compressed output if (capturectrl.IsPreviewTapSupported(CapturePreview.Video, CapturePreviewTap.Compressor)) { // enable preview capturectrl.Preview = true; // enable preview video capturectrl.PreviewSource = CapturePreview.Video; // set the preview tap location capturectrl.PreviewTap = CapturePreviewTap.Compressor; } // subscribe to the complete event capturectrl.Complete += new EventHandler(CaptureCtrl_Complete); // start the capture process capturectrl.StartCapture(CaptureMode.VideoAndAudio); // 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(); } } catch (Exception) { _result = false; } } void CaptureCtrl_Complete(object sender, EventArgs e) { _result = true; } static class LEAD_VARS { public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 18\Media"; }