У меня есть файл 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
Захват аудио с JavaScript и воспроизводить его сразу же бросает ошибку в Audio ⇐ Html
Программисты Html
1739657405
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));
};
Подробнее здесь: [url]https://stackoverflow.com/questions/79442314/capturing-audio-with-javascript-and-play-it-right-away-throws-error-at-audio[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия