AudioContext.suspend() - призупиняє відтворення звуку у AudioContext.
AudioContext.suspend();
AudioContext - об'єкт AudioContext.
suspend() метод об'єкта AudioContext який призупиняє відтворення звуку у звуковому контексті, тимчасово зупиняє аудіо доступу до апаратних засобів і зменшення/використання батареї та центрального процесора в цьому процесі.
Для відновлення відтворення використовуйте метод resume(). Метод повертає Promise.
if(window.AudioContext){
var audio=new Audio();
var audioCtx=new AudioContext();
var source=audioCtx.createMediaElementSource(audio);
audio.src='/dani/test.ogg';
source.connect(audioCtx.destination);
audio.play();
audioCtx.suspend(); //зупиняємо відтворення звуку
audioCtx.resume(); //відновлюємо відтвопення звуку
}else alert('Ваш браузер не підтримує Web Audio');
if(window.AudioContext){
var audio2=new Audio();
var audioCtx2=new AudioContext();
var source2=audioCtx2.createMediaElementSource(audio2);
audio2.src='/dani/test.ogg';
source2.connect(audioCtx2.destination);
audio2.play();
audioCtx2.suspend().then(function(){alert('зупиняємо відтворення звуку');}); //зупиняємо відтворення звуку
audioCtx2.resume(); //відновлюємо відтвопення звуку
}else alert('Ваш браузер не підтримує Web Audio');
Приклад відтворення/призупинення звуку відносно стану AudioContext:
<button id="button_test">зупинити/відновити</button>
if(window.AudioContext){
audio3=new Audio('/dani/test.ogg');
audioCtx3=new AudioContext();
source3=audioCtx3.createMediaElementSource(audio3);
source3.connect(audioCtx3.destination);
audio3.play();
document.getElementById('button_test').onclick=function(){
if(audioCtx3.state=='running')audioCtx3.suspend(); //зупиняємо відтворення звуку
if(audioCtx3.state=='suspended')audioCtx3.resume(); //відновлюємо відтвопення звуку
}
}else alert('Ваш браузер не підтримує Web Audio');