LEADTOOLS Multimedia (Leadtools.Multimedia assembly)
LEAD Technologies, Inc

IsModeAvailable Method

Example 





Value that specifies which capture mode's availability is being queried.
Specifies whether the specified capture mode is available.
Syntax
public virtual bool IsModeAvailable( 
   CaptureMode mode
)
'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
)
 function Leadtools.Multimedia.CaptureCtrl.IsModeAvailable( 
   mode 
)
public:
virtual bool IsModeAvailable( 
   CaptureMode mode
) 

Parameters

mode
Value that specifies which capture mode's availability is being queried.

Return Value

true if the capture mode is available; otherwise it is false.
Remarks
This method is useful for determining whether all the components, necessary for a particular capture mode, have been initialized. The mode parameter must be one of the CaptureMode enumeration values. If the method fails, an error is raised. For more information, refer to the Error Codes.
Example
Copy CodeCopy Code  
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

               ' subscribte to the compete 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 175\Media";
End Class
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 175\Media";
}
Requirements

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

See Also

Reference

CaptureCtrl Class
CaptureCtrl Members

 

 


Products | Support | Contact Us | Copyright Notices

© 2006-2012 All Rights Reserved. LEAD Technologies, Inc.

Leadtools.Multimedia requires a Multimedia or Multimedia Suite license and unlock key. For more information, refer to: LEADTOOLS Toolkit Features