Как записать звук с помощью 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.