2017-10-30 18:25:58 +01:00
|
|
|
|
|
|
|
namespace pxsim.music {
|
|
|
|
export function fromWAV(buf: RefBuffer) {
|
|
|
|
return incr(buf)
|
|
|
|
}
|
2017-12-14 01:31:42 +01:00
|
|
|
|
2017-12-15 19:42:44 +01:00
|
|
|
export function stopAllSounds() {
|
2017-12-14 01:31:42 +01:00
|
|
|
SoundMethods.stop()
|
|
|
|
}
|
2017-10-30 18:25:58 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
namespace pxsim.SoundMethods {
|
2017-12-14 01:31:42 +01:00
|
|
|
let audio: HTMLAudioElement;
|
2017-10-30 18:25:58 +01:00
|
|
|
|
|
|
|
export function buffer(buf: RefBuffer) {
|
|
|
|
return incr(buf)
|
|
|
|
}
|
|
|
|
|
2018-01-18 22:53:33 +01:00
|
|
|
export function play(buf: RefBuffer) {
|
|
|
|
return pxsim.AudioContextManager.playBufferAsync(buf);
|
2017-10-30 18:25:58 +01:00
|
|
|
}
|
2017-12-14 01:31:42 +01:00
|
|
|
|
|
|
|
export function stop() {
|
2017-12-14 18:41:01 +01:00
|
|
|
return new Promise<void>(resolve => {
|
|
|
|
if (audio) {
|
|
|
|
audio.pause();
|
|
|
|
}
|
2018-01-04 21:20:31 +01:00
|
|
|
resolve();
|
2017-12-14 18:41:01 +01:00
|
|
|
})
|
2017-12-14 01:31:42 +01:00
|
|
|
}
|
|
|
|
|
2017-10-30 18:25:58 +01:00
|
|
|
}
|
|
|
|
|