Как я могу воспроизвести аудио-поток JavaScript getUserMedia только для пользовательского агента? - PullRequest
1 голос
/ 16 октября 2019

Я не могу понять, как получить поток только для аудио (из navigator.mediaDevices.getUserMedia) в реальное, работающее воспроизведение звука для моих пользователей. Я бы предпочел делать все на родном JavaScript (без HTML), но библиотеки в порядке. Итак, что бы я использовал? Буду ли я просто выполнять

new Audio(stream);

или это будет не то, что я хочу? Очень смущен, похоже, я делаю простую ошибку. Я знаю, как это сделать с видео! Опять же, предпочитайте только аудио JS или аудиоэлементы, в этом случае мы не можем показать видео в хорошем месте. Поток всегда будет в аудио только из-за наших ограничений. Спасибо за попытку помочь!

1 Ответ

1 голос
/ 19 октября 2019

Я провел некоторые эксперименты;вот как вы это делаете.

const main = async () => {
    let audio = new Audio();
    audio.srcObject = await navigator.mediaDevices.getUserMedia({audio: true, video: false});
    audio.play();
};
main().then(() => {console.log("Done")});

ПРЕДУПРЕЖДЕНИЕ. Очевидно, этот код будет воспроизводить звук с вашего собственного микрофона;поэтому используйте удаленный поток, чтобы избежать очень раздражающей обратной связи (поверьте мне, я слышал).

...