PreferredMPEG2Splitter Property

Summary

Gets or sets the preferred MPEG2 splitter, by display name.

Syntax
C#
VB
C++
public virtual string PreferredMPEG2Splitter { get; set; } 
Public Overridable Property PreferredMPEG2Splitter As String 
public: 
virtual property String^ PreferredMPEG2Splitter { 
   String^ get(); 
   void set (    String^ ); 
} 

Property Value

Constants.Filter_MPEG2_Splitter

Constants.Filter_MPEG2_Demux

Constants.Filter_MPEG2_Program_Demux

Constants.Filter_MPEG2_Transport_Demux

True Microsoft MPEG-2 Splitter.
False Microsoft MPEG-2 Demultiplexer.
False LEAD MPEG-2 Program Demultiplexer.
False LEAD MPEG-2 Transport Demultiplexer.
Remarks

The MPEG2 Splitter is a demultiplexer that takes an MPEG2 stream as input and breaks out the available streams as output pins. Possible outputs are Video, Audio, CC, etc. A display name uniquely identifies the splitter (or any filter). Different splitters can offer additional interfaces and functionality based on their design. Display names for software splitters have the following format: @device:sw:GUID\\GUID. For example, the display name for Microsoft's 'MPEG-2 Splitter is: @device:sw:{083863F1-70DE-11D0-BD40-00A0C911CE86}\\{3AE86B20-7BE8-11D1-ABE6-00A0C905F375}

Example
C#
VB
using Leadtools; 
using Leadtools.Multimedia; 
using LeadtoolsMultimediaExamples.Fixtures; 
 
public bool _result = false; 
public PlayCtrlForm _form = new PlayCtrlForm(); 
 
public void PreferredMPEG2SplitterExample() 
{ 
   // reference the play control 
   PlayCtrl playctrl = _form.PlayCtrl; 
 
   // input file name 
   string inFile = Path.Combine(LEAD_VARS.MediaDir, "PlayCtrl_Source.mpeg"); 
 
   try 
   { 
      // turn off auto start 
      playctrl.AutoStart = false; 
 
      // set the source file 
      playctrl.SourceFile = inFile; 
 
      // set the preferred MPEG2 splitter to be the LEAD MPEG2 Transport Demultiplexer. 
      // this avoids a rogue filter with a higher merit from being used to play MPEG2 files. 
      playctrl.PreferredMPEG2Splitter = Constants.Filter_MPEG2_Transport_Demux; 
 
      // play it! 
      playctrl.Run(); 
 
      // set the result 
      _result = true; 
   } 
   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 (playctrl.State == PlayState.Running) 
      Application.DoEvents(); 
} 
 
static class LEAD_VARS 
{ 
   public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 20\Media"; 
} 
Imports Leadtools 
Imports Leadtools.Multimedia 
Imports LeadtoolsMultimediaExamples.Fixtures 
 
Public _result As Boolean = False 
Public _form As PlayCtrlForm = New PlayCtrlForm() 
 
Public Sub PreferredMPEG2SplitterExample() 
   ' reference the play control 
   Dim playctrl As PlayCtrl = _form.PlayCtrl 
 
   ' input file name 
   Dim inFile As String = Path.Combine(LEAD_VARS.MediaDir, "PlayCtrl_Source.mpeg") 
 
   Try 
      ' turn off auto start 
      playctrl.AutoStart = False 
 
      ' set the source file 
      playctrl.SourceFile = inFile 
 
      ' set the preferred MPEG2 splitter to be the LEAD MPEG2 Transport Demultiplexer. 
      ' this avoids a rogue filter with a higher merit from being used to play MPEG2 files. 
      playctrl.PreferredMPEG2Splitter = Leadtools.Multimedia.Constants.Filter_MPEG2_Transport_Demux 
 
      ' play it! 
      playctrl.Run() 
 
      ' set the result 
      _result = True 
   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 playctrl.State = PlayState.Running 
      Application.DoEvents() 
   Loop 
End Sub 
 
Public NotInheritable Class LEAD_VARS 
   Public Const MediaDir As String = "C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 20\Media" 
End Class 
Requirements

Target Platforms

See Also

Reference

PlayCtrl Class

PlayCtrl Members

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

Leadtools.Multimedia Assembly