CaptureTime Property

Summary
Gets the amount of time the capture has been running, in seconds.
Syntax
C#
VB
C++
public virtual double CaptureTime { get; } 
Public Overridable ReadOnly Property CaptureTime As Double 
public: 
virtual property double CaptureTime { 
   double get(); 
} 

Property Value

A value representing the total capture time, in seconds.

Remarks

This value is reset to zero when you start a new capture.

Example
C#
VB
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:\LEADTOOLS21\Media"; 
} 
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:\LEADTOOLS21\Media" 
End Class 
Requirements

Target Platforms

Help Version 21.0.2021.7.2
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2021 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.MediaFoundation Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2021 LEAD Technologies, Inc. All Rights Reserved.