С помощью Web Audio API хочу научиться создавать звук и проигрывать его
Накопал код, но не знаю как воспроизвести звук.
// создаем аудио контекст
let context = new window.AudioContext(); //
// переменные для буфера, источника и получателя
let buffer, source, destination;
// функция для подгрузки файла в буфер
let loadSoundFile = function(url) {
// делаем XMLHttpRequest (AJAX) на сервер
let xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.responseType = 'arraybuffer'; // важно
xhr.onload = function(e) {
// декодируем бинарный ответ
context.decodeAudioData(this.response,
function(decodedArrayBuffer) {
// получаем декодированный буфер
buffer = decodedArrayBuffer;
}, function(e) {
console.log('Error decoding file', e);
});
};
xhr.send();
}
// функция начала воспроизведения
let play = function(){
// создаем источник
source = context.createBufferSource();
// подключаем буфер к источнику
source.buffer = buffer;
// дефолтный получатель звука
destination = context.destination;
// подключаем источник к получателю
source.connect(destination);
// воспроизводим
source.start(0);
}
// функция остановки воспроизведения
let stop = function(){
source.stop(0);
}
____, я не хочу тебя обидеть, но смотри, код я этот поставил явно не для того чтобы
через
let a = new Audio();
a.src = 'x';
a.play();
производить звук, это очень тупой способ
так нормальные люди не делают, только хотя бы потому , что в браузере будет уведомление выскакивать "на сайте воспроиз. звук" и оттуда его даже на паузу поставить можно. и там ещё ряд других минусов
понимаешь какой это бред?
________ посл. ред. 23.02.2021 в 17:55; всего 2 раз(а); by Хэйтем