/// <summary> /// Initializes a new XAudio2SoundProvider class /// <param name="xaudio2">The XAudio2 Instance.</param> /// <param name="soundInitializer">The ISoundInitializer.</param> /// </summary> internal XAudio2SoundProvider(CSCore.XAudio2.XAudio2 xaudio2, ISoundInitializer soundInitializer) { SoundInitializer = soundInitializer; _xaudio2 = xaudio2; _xaudio2.CreateMasteringVoice(); }
/// <summary> /// Initializes a new CSCoreSoundProvider class. /// </summary> /// <param name="soundInitializer">The SoundInitializer.</param> internal DirectSoundProvider(ISoundInitializer soundInitializer) { _directSoundOut = new DirectSoundOut(); SoundInitializer = soundInitializer; _directSoundOut.Stopped += DirectSoundOutStopped; }
/// <summary> /// Initializes a new WasapiSoundProvider class. /// </summary> /// <param name="soundInitializer">The SoundInitializer.</param> internal WasapiSoundProvider(ISoundInitializer soundInitializer) { _wasapiOut = new WasapiOut(false, AudioClientShareMode.Shared, 100); SoundInitializer = soundInitializer; _wasapiOut.Stopped += DirectSoundOutStopped; }