Leadtools.MediaFoundation Namespace > PlayCtrl Class : GetSubObject Method |
'Declaration Public Overridable Function GetSubObject( _ ByVal objType As PlayObject _ ) As Object
'Usage Dim instance As PlayCtrl Dim objType As PlayObject Dim value As Object value = instance.GetSubObject(objType)
public virtual object GetSubObject( PlayObject objType )
public: virtual Object^ GetSubObject( PlayObject objType )
Imports Leadtools Imports Leadtools.MediaFoundation Imports LeadtoolsMediaFoundationExamples.Fixtures Public _result As Boolean = False Public _form As PlayCtrlForm = New PlayCtrlForm() Public _playctrl As PlayCtrl = Nothing Public Sub GetSubObjectExample() ' input and output file names Dim inFile As String = Path.Combine(LEAD_VARS.MediaDir, "PlayCtrl_Source.avi") Try ' reference the convert control _playctrl = _form.PlayCtrl ' get index of LEAD MF Volume Transform Dim nIndex As Integer = _playctrl.AudioProcessors.IndexOf("{E2B7DC41-38C5-11D5-91F6-00104BDB8FF9}") ' add the LEAD MF Volume Transform to the selected audio processors _playctrl.SelectedAudioProcessors.Add(_playctrl.AudioProcessors(nIndex)) ' access the processor directly Dim lmfVolumePro As LMFAVolume = TryCast(_playctrl.GetSubObject(PlayObject.SelAudioProcessor), LMFAVolume) If Not lmfVolumePro Is Nothing Then ' change some settings lmfVolumePro.Mute = True Marshal.ReleaseComObject(lmfVolumePro) End If ' set the source and target files _playctrl.SourceFile = inFile 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 _result = True End Sub 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.MediaFoundation; using LeadtoolsMediaFoundationExamples.Fixtures; public bool _result = false; public PlayCtrlForm _form = new PlayCtrlForm(); public PlayCtrl _playctrl = null; public void GetSubObjectExample() { // input and output file names string inFile = Path.Combine(LEAD_VARS.MediaDir, "PlayCtrl_Source.avi"); try { // reference the convert control _playctrl = _form.PlayCtrl; // get index of LEAD MF Volume Transform int nIndex = _playctrl.AudioProcessors.IndexOf("{E2B7DC41-38C5-11D5-91F6-00104BDB8FF9}"); // add the LEAD MF Volume Transform to the selected audio processors _playctrl.SelectedAudioProcessors.Add(_playctrl.AudioProcessors[nIndex]); // <!--access the processor directly //LMFAVolume lmfVolumePro = _playctrl.GetSubObject(PlayObject.SelAudioProcessor) as LMFAVolume; //if (lmfVolumePro != null) //{ // change some settings // lmfVolumePro.Mute = true; // Marshal.ReleaseComObject(lmfVolumePro); // } --> // set the source file _playctrl.SourceFile = inFile; } 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(); _result = true; } static class LEAD_VARS { public const string MediaDir = @"C:\Program Files (x86)\LEAD Technologies\LEADTOOLS 18\Media"; }