Leadtools.Multimedia Namespace > WMStreamConfig Class : Quality Property |
'Declaration Public Property Quality As Integer
'Usage Dim instance As WMStreamConfig Dim value As Integer instance.Quality = value value = instance.Quality
public int Quality {get; set;}
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"; }