LEADTOOLS Multimedia (Leadtools.Multimedia assembly)

GetMediaType Method (WMStreamConfig)

Show in webframe
Example 



Gets the media type of the stream in the form of a MediaType object.
Syntax
'Declaration
 
Public Function GetMediaType() As MediaType
'Usage
 
Dim instance As WMStreamConfig
Dim value As MediaType
 
value = instance.GetMediaType()
public MediaType GetMediaType()
public:
MediaType^ GetMediaType(); 
Remarks
For more information, refer to the Microsoft documentation for IWMMediaProps.GetMediaType.
Example
Copy Code  
Imports Leadtools
Imports Leadtools.Multimedia
Imports LeadtoolsMultimediaExamples.Fixtures

Public _result As Boolean = False
Public _form As CaptureCtrlForm = New CaptureCtrlForm()
Public Sub StreamTypeExample()
   ' reference the capture control
   Dim capturectrl As CaptureCtrl = _form.CaptureCtrl
   Dim inFile As String = Path.Combine(LEAD_VARS.MediaDir, "CaptureCtrl_Source.avi")

   Try
      ' reference the profile if available
      Dim CurrentProfile As WMProfile = capturectrl.WMProfile

      ' if we have a profile display the info
      If Not CurrentProfile Is Nothing Then
         MessageBox.Show(GetStreamInfo(CurrentProfile), "Stream Info", MessageBoxButtons.OK)
      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

' discovering streams 
Private Function GetStreamInfo(ByVal Profile As WMProfile) As String
   Dim streamConfig As WMStreamConfig
   Dim streamInfo As String = String.Empty

   ' show all the information regarding the streams
   Dim i As Integer = 0
   Do While i < Profile.StreamCount - 1
      streamConfig = Profile.GetStream(0)
      streamInfo &= "[[ Stream " & (i + 1).ToString() & " ]]"

      ' get the major type of the stream
      streamInfo &= Microsoft.VisualBasic.Constants.vbLf & " type: " & streamConfig.StreamType

      ' get Stream number
      streamInfo &= Microsoft.VisualBasic.Constants.vbLf & " number: " & streamConfig.StreamNumber.ToString()

      ' get Stream name
      streamInfo &= Microsoft.VisualBasic.Constants.vbLf & " name: " & streamConfig.StreamName

      ' get connection name
      streamInfo &= Microsoft.VisualBasic.Constants.vbLf & " connection name: " & streamConfig.ConnectionName

      ' get Bitrate
      streamInfo &= Microsoft.VisualBasic.Constants.vbLf & " bitrate: " & streamConfig.Bitrate.ToString()

      ' get the maximum latency (time in milliseconds) between stream reception and display
      streamInfo &= Microsoft.VisualBasic.Constants.vbLf & " buffer window: " & streamConfig.BufferWindow.ToString()

      ' get the major type of the media in the stream
      streamInfo &= Microsoft.VisualBasic.Constants.vbLf & " majortype: " & streamConfig.Type

      ' get the maximum key frame time interval (in 100-nano seconds) 
      streamInfo &= Microsoft.VisualBasic.Constants.vbLf & " max keyframe spacing: " & streamConfig.MaxKeyFrameSpacing.ToString()

      ' get the Quality, range from 0 to 100
      ' where zero denotes maximum frame rate and 100 denotes maximum quality. 
      streamInfo &= Microsoft.VisualBasic.Constants.vbLf & " stream quality: "

      If streamConfig.Quality > -1 Then
         streamInfo &= streamConfig.Quality.ToString()
      Else
         streamInfo &= "(unknown)"
      End If
      i += 1
   Loop

   Return streamInfo
End Function

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 StreamTypeExample()
{
   // reference the capture control
   CaptureCtrl capturectrl = _form.CaptureCtrl;
   string inFile = Path.Combine(LEAD_VARS.MediaDir,"CaptureCtrl_Source.avi");

   try
   {
      // reference the profile if available
      WMProfile CurrentProfile = capturectrl.WMProfile;

      // if we have a profile display the info
      if (CurrentProfile != null)
         MessageBox.Show(GetStreamInfo(CurrentProfile), "Stream Info", MessageBoxButtons.OK);
   }
   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();
}

// discovering streams 
private string GetStreamInfo(WMProfile Profile)
{
   WMStreamConfig streamConfig;
   string streamInfo = string.Empty;

   // show all the information regarding the streams
   for (int i = 0; i < Profile.StreamCount -1; i++)
   {
      streamConfig = Profile.GetStream(0);
      streamInfo += "[[ Stream " + (i + 1).ToString() + " ]]";

      // get the major type of the stream
      streamInfo += "\n type: " + streamConfig.StreamType;

      // get Stream number
      streamInfo += "\n number: " + streamConfig.StreamNumber.ToString();

      // get Stream name
      streamInfo += "\n name: " + streamConfig.StreamName;

      // get connection name
      streamInfo += "\n connection name: " + streamConfig.ConnectionName;

      // get Bitrate
      streamInfo += "\n bitrate: " + streamConfig.Bitrate.ToString();

      // get the maximum latency (time in milliseconds) between stream reception and display
      streamInfo += "\n buffer window: " + streamConfig.BufferWindow.ToString();

      // get the major type of the media in the stream
      streamInfo += "\n majortype: " + streamConfig.Type;

      // get the maximum key frame time interval (in 100-nano seconds) 
      streamInfo += "\n max keyframe spacing: " + streamConfig.MaxKeyFrameSpacing.ToString();

      // get the Quality, range from 0 to 100
      // where zero denotes maximum frame rate and 100 denotes maximum quality. 
      streamInfo += "\n stream quality: ";

      if (streamConfig.Quality > -1)
         streamInfo += streamConfig.Quality.ToString();
      else
         streamInfo += "(unknown)";
   }

   return streamInfo;
}

static class LEAD_VARS
{
public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 18\Media";
}
Requirements

Target Platforms

See Also

Reference

WMStreamConfig Class
WMStreamConfig Members

 

 


Products | Support | Contact Us | Copyright Notices
© 2006-2014 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