In order to add a file, use stage.iLoader.addAudio() in the register method:
register() {
this.iLoader.addAudio("audio_key", "./audio.mp3");
...
}
Using AudioInterface:
AudioInterface is a control center for all audio tracks,
default AudioInterface is available via stage.audio,
you could add any other audio interfaces with
this.music = new AudioInterface(this.iLoader);
How to use tracks with AudioInterface
- first, register the added and loaded audio file in the init, or start method:
stage.audio.registerAudio("audio_key");
- then get the audio track:
const track = stage.audio.getAudio("audio_key");
- to play, or pause use:
track.play();
track.pause();
- In order to loop the audio track, set track.loop parameter to true:
const audioTrack = this.audio.getAudio("audio_key");
audioTrack.loop = true;
audioTrack.play();
- If you want to take a copy of the track use getAudioCloned():
this.audio.getAudioCloned("audio_key").play();
- In order to control the volume, set audio.volume from 0 to 1(this will affect only on registered tracks):
this.audio.volume = 0.5;
Live Example
See the Pen JsGE - audio by Arturas-Alfredas Lapinskas (@yaalfred) on CodePen.