Как записать звук с помощью getUserMedia и API-интерфейса Web Audio на Chrome для Android?

Я отлаживаю приложение, которое использует FlashWavRecorder или AudioRecorder для записи звука, а затем воспроизводит его. Проблема в том, что приложение работает так, как задумано в Desktop Chrome, но не записывает и не воспроизводит (не знаю, какой) в Chrome для Android. Вот заголовки для Android:

Заголовки запроса

URL:blob:http%3A//example.com/8e112ef4-8691-4582-8abb-82da3e312221
Request Method:GET
Status Code:206 Partial Content (from cache)
Range:bytes=0-1
Referer:http://example.com/xyz/MTYwMDc=/abcdefg
User-Agent:Mozilla/5.0 (Linux; Android 4.4.2; LG-E988 Build/KOT49I.E98820a) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/40.0.2214.89 Mobile Safari/537.36

Заголовки ответа

Content-Length:2
Content-Range:bytes 0-1/475180
Content-Type:audio/wav

Сначала приложение проверяет, поддерживается ли Flash, если это так, используется FlashWavRecorder, если не используется AudioRecorder. AudioRecorder требует Web Audio API, который, в соответствии с " Можно ли использовать...":

Chrome для Android не поддерживает API-интерфейс Web Audio в сочетании с getUserMedia.

Я не знаком с этим API или getUserMedia но я догадываюсь getUserMedia требуется запросить разрешение на использование микрофона. Так как же мне взять звук с микрофона и записать его, не используя getUserMedia?

Эти два ответа от 1,5 года назад предполагают, однако, что он поддерживается и должен работать.

Так что это? Это просто не поддерживается, или в коде есть ошибка?

(Если первое, каковы альтернативы использованию Web Audio API или getUserMedia?)

1 ответ

Решение

Это должно работать - получить пользовательские мультимедиа и веб-аудио теперь поддерживаются в Chrome для Android.

Другие вопросы по тегам