Interface IAudioEngine
audioContext: Nullable<AudioContext>;
canUseWebAudio: boolean;
isMP3supported: boolean;
isOGGsupported: boolean;
masterGain: GainNode;
onAudioLockedObservable: Observable<IAudioEngine>;
onAudioUnlockedObservable: Observable<IAudioEngine>;
unlocked: boolean;
useCustomUnlockedButton: boolean;
WarnedWebAudioUnsupported: boolean;
connectToAnalyser(analyser: Analyser): void;
dispose(): void;
getGlobalVolume(): number;
lock(): void;
setGlobalVolume(newVolume: number): void;
unlock(): void;
}
Hierarchy (View Summary)
- IDisposable
- IAudioEngine
Implemented by
Properties
Readonlyaudio Context
Gets the current AudioContext if available.
Readonlycan Use Web Audio
Gets whether the current host supports Web Audio and thus could create AudioContexts.
Readonlyis MP3supported
Gets whether or not mp3 are supported by your browser.
Readonlyis OG Gsupported
Gets whether or not ogg are supported by your browser.
Readonlymaster Gain
The master gain node defines the global audio volume of your audio engine.
on Audio Locked Observable
Event raised when audio has been locked on the browser.
on Audio Unlocked Observable
Event raised when audio has been unlocked on the browser.
Readonlyunlocked
Gets whether or not the audio engine is unlocked (require first a user gesture on some browser).
use Custom Unlocked Button
Defines if the audio engine relies on a custom unlocked button. In this case, the embedded button will not be displayed.
Warned Web Audio Unsupported
Defines if Babylon should emit a warning if WebAudio is not supported.
Methods
connect To Analyser
-
Connect the audio engine to an audio analyser allowing some amazing synchronization between the sounds/music and your visualization (VuMeter for instance).
Parameters
- analyser: Analyser
The analyser to connect to the engine
Returns void
- analyser: Analyser
dispose
-
Releases all held resources
Returns void
get Global Volume
-
Gets the global volume sets on the master gain.
Returns number
the global volume if set or -1 otherwise
lock
-
Flags the audio engine in Locked state. This happens due to new browser policies preventing audio to autoplay.
Returns void
set Global Volume
-
Sets the global volume of your experience (sets on the master gain).
Parameters
- newVolume: number
Defines the new global volume of the application
Returns void
- newVolume: number
unlock
-
Unlocks the audio engine once a user action has been done on the dom. This is helpful to resume play once browser policies have been satisfied.
Returns void
This represents an audio engine and it is responsible to play, synchronize and analyse sounds throughout the application.
See
https://doc.babylonjs.com/features/featuresDeepDive/audio/playingSoundsMusic