Products | Support | Email a link to this topic. | Send comments on this topic. | Back to Introduction | Help Version 19.0.2.9
|
Leadtools.MediaFoundation Namespace > CaptureCtrl Class : CaptureTime Property |
public virtual double CaptureTime {get;}
'Declaration
Public Overridable ReadOnly Property CaptureTime As Double
'Usage
Dim instance As CaptureCtrl Dim value As Double value = instance.CaptureTime
Imports Leadtools Imports Leadtools.MediaFoundation Imports LeadtoolsMediaFoundationExamples.Fixtures Public _result As Boolean = False Public _form As New CaptureCtrlForm() Public _capturectrl As CaptureCtrl Public _totalTime As Double Public Sub ErrorAbortExample() ' reference the capture control _capturectrl = _form.CaptureCtrl ' output file Dim outFile As String = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_ErrorAbortTest.avi") Try ' set a test timer to interrupt the capture _form.TestTimer.Interval = 5000 AddHandler _form.TestTimer.Tick, AddressOf TestTimer_Tick _form.TestTimer.Start() ' initialize the total capture time _totalTime = 0 ' subscribe to the ErrorAbort event AddHandler _capturectrl.ErrorAbort, AddressOf CaptureCtrl_ErrorAbort ' subscribe to the event AddHandler _capturectrl.Progress, AddressOf CaptureCtrl_Progress ' set a video device, use the name of your device here If _capturectrl.VideoDevices("USB") Is Nothing Then Throw New Exception("No USB video device available") End If _capturectrl.VideoDevices("USB").Selected = True ' set an audio device, use the name of your device here _capturectrl.AudioDevices("USB").Selected = True ' set the target output file _capturectrl.TargetFile = outFile ' only 10 seconds of capture time _capturectrl.TimeLimit = 10 _capturectrl.UseTimeLimit = True ' capture it now! _capturectrl.StartCapture(CaptureMode.AutoFramesAndAudio) Catch generatedExceptionName 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. While _capturectrl.State = CaptureState.Running Application.DoEvents() End While End Sub Public Sub TestTimer_Tick(ByVal sender As Object, ByVal e As EventArgs) ' stop the capture _capturectrl.StopCapture() End Sub Public Sub CaptureCtrl_Progress(ByVal sender As Object, ByVal e As ProgressEventArgs) _totalTime = _capturectrl.CaptureTime End Sub Public Sub CaptureCtrl_ErrorAbort(ByVal sender As Object, ByVal e As ErrorAbortEventArgs) ' set result _result = True End Sub Public NotInheritable Class LEAD_VARS Public Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 19\Media" End Class
using Leadtools; using Leadtools.MediaFoundation; using LeadtoolsMediaFoundationExamples.Fixtures; public bool _result = false; public CaptureCtrlForm _form = new CaptureCtrlForm(); public CaptureCtrl _capturectrl; public double _totalTime; public void ErrorAbortExample() { // reference the capture control _capturectrl = _form.CaptureCtrl; // output file string outFile = Path.Combine(LEAD_VARS.MediaDir,"CaptureCtrl_ErrorAbortTest.avi"); try { // set a test timer to interrupt the capture _form.TestTimer.Interval = 5000; _form.TestTimer.Tick += new EventHandler(TestTimer_Tick); _form.TestTimer.Start(); // initialize the total capture time _totalTime = 0; // subscribe to the ErrorAbort event _capturectrl.ErrorAbort += new ErrorAbortEventHandler(CaptureCtrl_ErrorAbort); // subscribe to the event _capturectrl.Progress += new ProgressEventHandler(CaptureCtrl_Progress); // set a video device, use the name of your device here if (_capturectrl.VideoDevices["USB"] == null) throw new Exception("No USB video device available"); _capturectrl.VideoDevices["USB"].Selected = true; // set an audio device, use the name of your device here _capturectrl.AudioDevices["USB"].Selected = true; // set the target output file _capturectrl.TargetFile = outFile; // only 10 seconds of capture time _capturectrl.TimeLimit = 10; _capturectrl.UseTimeLimit = true; // capture it now! _capturectrl.StartCapture(CaptureMode.AutoFramesAndAudio); } 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(); } public void TestTimer_Tick(object sender, EventArgs e) { // stop the capture _capturectrl.StopCapture(); } public void CaptureCtrl_Progress(object sender, ProgressEventArgs e) { _totalTime = _capturectrl.CaptureTime; } public void CaptureCtrl_ErrorAbort(object sender, ErrorAbortEventArgs e) { // set result _result = true; } static class LEAD_VARS { public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 19\Media"; }