private void GetAudioMeterInformation() { object obj; Marshal.ThrowExceptionForHR(this.deviceInterface.Activate(ref MMDevice.IID_IAudioMeterInformation, ClsCtx.ALL, IntPtr.Zero, out obj)); this.audioMeterInformation = new AudioMeterInformation(obj as IAudioMeterInformation); }
/// <summary> /// Constructor. /// </summary> /// <param name="audioSessionControl"></param> public AudioSessionControl(IAudioSessionControl audioSessionControl) { audioSessionControlInterface = audioSessionControl; audioSessionControlInterface2 = audioSessionControl as IAudioSessionControl2; if (audioSessionControlInterface is IAudioMeterInformation meters) { AudioMeterInformation = new AudioMeterInformation(meters); } if (audioSessionControlInterface is ISimpleAudioVolume volume) { SimpleAudioVolume = new SimpleAudioVolume(volume); } }