Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.116.63.248] |
|
Сообщ.
#1
,
|
|
|
Добрый вечер!
Функция OnDataAvailable принимает blob от медиарекордера (с микрофона). На входе (event.data) audio blob действительно появляется. Далее я хочу сразу же вывести этот blob в динамик. Вариант 1 (закомментирован) работает - по нему вопросов нет. Он не подходит, т.к. при создании Audio самого blob-a еще не будет, появится позже (этот вариант только для тестирования). А почему не работает вариант 2 ? В документации написано, что srcObject'у может присваиваться blob. Подскажите, пожалуйста, как исправить. function OnDataAvailable(event) { // Обработчик событий от mediarecoder'a. // Здесь event.data - это Blob с типом audio. let size = event.data.size; let type = event.data.type; let msg = "АудиоДанные доступны. Тип = " + type + " Размер = " + size; appendMessageText(msg, 2); // --------- Вариант1 - работает --------------- //let url = URL.createObjectURL(event.data); //let pl = new Audio(url); //---------------------------- // =============Вариант2 - не работает ============ let pl = new Audio(); pl.srcObject = event.data; // здесь ошибка // Uncaught TypeError: HTMLMediaElement.srcObject setter: // Value being assigned does not implement interface MediaStream. // ======================================== pl.play(); } |