Захват аудио с JavaScript и воспроизводить его сразу же бросает ошибку в AudioHtml

Программисты Html
Ответить Пред. темаСлед. тема
Anonymous
 Захват аудио с JavaScript и воспроизводить его сразу же бросает ошибку в Audio

Сообщение Anonymous »

У меня есть файл JavaScript, который должен захватить аудио, а затем сохранить его. Когда я начал работать над его сохранением на сервере, первый файл был в порядке, но все после того, как были повреждены. Поэтому я решил проверить браузер, что я посылаю. Затем я выяснил то же самое: первый аудиоклип в порядке, но это похоже на то, что второй файл поврежден. Я решил проверить другое устройство, чтобы проверить, может ли мой ноутбук вызвать проблему, но та же проблема. Ошибка, которую я получаю, очень неясна для меня: notsupportedError: не удалось загрузить, потому что не было найдено никакого поддерживаемого источника. . Я использовал Chrome и Safari, но оба браузера и оба ноутбука бросают одинаковую ошибку. < /P>
Ошибка из консоли: < /p>
untitled.html:40 Blob {size: 81199, type: 'audio/webm'}
untitled.html:46 Playback failed: NotSupportedError: Failed to load because no supported source was found.
(anonymous) @ untitled.html:46
Promise.catch
playAudio @ untitled.html:46
mediaRecorder.ondataavailable @ untitled.html:27Understand this errorAI
untitled.html:40 Blob {size: 81536, type: 'audio/webm'}
untitled.html:46 Playback failed: NotSupportedError: Failed to load because no supported source was found.
< /code>
html (чтобы протестировать, сохранить его как .html) < /h2>


Example




let audioStream;
let mediaRecorder;

navigator.mediaDevices.getUserMedia({
video: true,
audio: true
})
.then(stream => {
audioStream = new MediaStream(stream.getAudioTracks());
mediaRecorder = new MediaRecorder(audioStream, {
mimeType: "audio/webm"
});

mediaRecorder.ondataavailable = (event) => {

if (event.data.size > 0) {
playAudio(event.data);
}
};

mediaRecorder.start(5000);
})
.catch(err => {
console.error(err);
});

const playAudio = (audioChunk) => {
const audioBlob = new Blob([audioChunk], { type: "audio/webm" }); // Ensure correct MIME type
const audioUrl = URL.createObjectURL(audioBlob);
console.log(audioBlob);

const audioElement = document.createElement("audio");
audioElement.src = audioUrl;
audioElement.controls = true;
document.body.appendChild(audioElement);
audioElement.play().catch((e) => console.error("Playback failed:", e));
};




Подробнее здесь: https://stackoverflow.com/questions/794 ... r-at-audio
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Html»