/// <summary> /// Based on compilation setting, returns the proper instance of sounds. /// </summary> /// <returns>A platform specific instance of <see cref="AudioEngine"/></returns> public static AudioEngine NewAudioEngine(AudioDevice device = null, AudioLayer.DeviceFlags deviceFlags = AudioLayer.DeviceFlags.None) { var engine = new AudioEngine(device); engine.InitializeAudioEngine(deviceFlags); return(engine); }
/// <summary> /// Initialize audio engine /// </summary> internal virtual void InitializeAudioEngine(AudioLayer.DeviceFlags flags) { AudioDevice = AudioLayer.Create(audioDevice.Name == "default" ? null : audioDevice.Name, flags); if (AudioDevice.Ptr == IntPtr.Zero) { State = AudioEngineState.Invalidated; } DefaultListener = new AudioListener(this); }
/// <summary> /// Based on compilation setting, returns the proper instance of sounds. /// </summary> /// <returns>A platform specific instance of <see cref="AudioEngine"/></returns> public static AudioEngine NewAudioEngine(AudioDevice device = null, AudioLayer.DeviceFlags deviceFlags = AudioLayer.DeviceFlags.None) { AudioEngine engine = null; #if XENKO_PLATFORM_IOS engine = new AudioEngineIos(); #else engine = new AudioEngine(device); #endif engine.InitializeAudioEngine(deviceFlags); return(engine); }
internal override void InitializeAudioEngine(AudioLayer.DeviceFlags flags) { ActivateAudioSession(); base.InitializeAudioEngine(flags); }