Пример #1
0
        private void GetAudioMeterInformation()
        {
            object result;

            Marshal.ThrowExceptionForHR(_RealDevice.Activate(ref IID_IAudioMeterInformation, CLSCTX.ALL, IntPtr.Zero, out result));
            _AudioMeterInformation = new AudioMeterInformation(result as IAudioMeterInformation);
        }
Пример #2
0
 internal AudioSessionControl(IAudioSessionControl2 realAudioSessionControl)
 {
     IAudioMeterInformation _meters = realAudioSessionControl as IAudioMeterInformation;
     ISimpleAudioVolume _volume = realAudioSessionControl as ISimpleAudioVolume;
     if (_meters != null)
         _AudioMeterInformation = new CoreAudioApi.AudioMeterInformation(_meters);
     if (_volume != null)
         _SimpleAudioVolume = new SimpleAudioVolume(_volume);
     _AudioSessionControl = realAudioSessionControl;
 }
Пример #3
0
        internal AudioSessionControl(IAudioSessionControl2 realAudioSessionControl)
        {
            IAudioMeterInformation _meters = realAudioSessionControl as IAudioMeterInformation;
            ISimpleAudioVolume     _volume = realAudioSessionControl as ISimpleAudioVolume;

            if (_meters != null)
            {
                _AudioMeterInformation = new CoreAudioApi.AudioMeterInformation(_meters);
            }
            if (_volume != null)
            {
                _SimpleAudioVolume = new SimpleAudioVolume(_volume);
            }
            _AudioSessionControl = realAudioSessionControl;
        }
Пример #4
0
        internal AudioSessionControl(IAudioSessionControl2 realAudioSessionControl)
        {
            IAudioMeterInformation _meters = realAudioSessionControl as IAudioMeterInformation;
            ISimpleAudioVolume _volume = realAudioSessionControl as ISimpleAudioVolume; 
            if (_meters != null)
                _AudioMeterInformation = new CoreAudioApi.AudioMeterInformation(_meters);
            if (_volume != null)
                _SimpleAudioVolume = new SimpleAudioVolume(_volume);
            _AudioSessionControl = realAudioSessionControl;

            /* added -> */
            _audioSessionEvents = new AudioSessionEvents(this);
            Marshal.ThrowExceptionForHR(_AudioSessionControl.RegisterAudioSessionNotification(_audioSessionEvents));
            /* <- added */
        }
Пример #5
0
        internal AudioSessionControl(IAudioSessionControl2 realAudioSessionControl)
        {
            IAudioMeterInformation _meters = realAudioSessionControl as IAudioMeterInformation;
            ISimpleAudioVolume     _volume = realAudioSessionControl as ISimpleAudioVolume;

            if (_meters != null)
            {
                _AudioMeterInformation = new CoreAudioApi.AudioMeterInformation(_meters);
            }
            if (_volume != null)
            {
                _SimpleAudioVolume = new SimpleAudioVolume(_volume);
            }
            _AudioSessionControl = realAudioSessionControl;

            /* added -> */
            _audioSessionEvents = new AudioSessionEvents(this);
            Marshal.ThrowExceptionForHR(_AudioSessionControl.RegisterAudioSessionNotification(_audioSessionEvents));
            /* <- added */
        }
Пример #6
0
 private void GetAudioMeterInformation()
 {
     object result;
     Marshal.ThrowExceptionForHR( _RealDevice.Activate(ref IID_IAudioMeterInformation, CLSCTX.ALL, IntPtr.Zero, out result));
     _AudioMeterInformation = new AudioMeterInformation( result as IAudioMeterInformation);
 }