public override bool SetAudioDualMonoMode(eAudioDualMonoMode mode) { if (_audioSwitcherFilter == null) { Log.Info("TsReaderPlayer: AudioDualMonoMode switching not available. Audioswitcher filter not loaded"); return(false); } IMPAudioSwitcherFilter mpSwitcher = _audioSwitcherFilter as IMPAudioSwitcherFilter; if (mpSwitcher == null) { Log.Info("TsReaderPlayer: AudioDualMonoMode switching not available. Audioswitcher filter not loaded"); return(false); } int hr = mpSwitcher.SetAudioDualMonoMode((uint)mode); if (hr != 0) { Log.Info("TsReaderPlayer: SetAudioDualMonoMode mode={0} failed 0x{1:X}", mode.ToString(), hr); } else { Log.Info("TsReaderPlayer: SetAudioDualMonoMode mode={0} succeeded", mode.ToString(), hr); } return(hr == 0); }
public override eAudioDualMonoMode GetAudioDualMonoMode() { if (_audioSwitcherFilter == null) { Log.Info("TsReaderPlayer: AudioDualMonoMode switching not available. Audioswitcher filter not loaded"); return(eAudioDualMonoMode.UNSUPPORTED); } IMPAudioSwitcherFilter mpSwitcher = _audioSwitcherFilter as IMPAudioSwitcherFilter; if (mpSwitcher == null) { Log.Info("TsReaderPlayer: AudioDualMonoMode switching not available. Audioswitcher filter not loaded"); return(eAudioDualMonoMode.UNSUPPORTED); } uint iMode = 0; int hr = mpSwitcher.GetAudioDualMonoMode(out iMode); if (hr != 0) { Log.Info("TsReaderPlayer: GetAudioDualMonoMode failed 0x{0:X}", hr); return(eAudioDualMonoMode.UNSUPPORTED); } eAudioDualMonoMode mode = (eAudioDualMonoMode)iMode; Log.Info("TsReaderPlayer: GetAudioDualMonoMode mode={0} succeeded", iMode.ToString(), hr); return(mode); }