我正在调试一个应用程序,它使用FlashWavRecorder或AudioRecorder来录制音频,然后播放它。问题是该应用程序在桌面 Chrome 上按预期工作,但在 Android 版 Chrome 上无法录制或播放(不确定是哪个)。这是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,根据Can I Use...:
Chrome for Android 不支持将 Web 音频 API 与 getUserMedia 结合使用。
我不熟悉此 API 或getUserMedia
,但我猜getUserMedia
需要请求许可才能使用麦克风。那么如何从麦克风中抓取音频并在不使用的情况下录制呢getUserMedia
?
然而,这两个1.5 年前的 答案表明它受到支持并且应该可以工作。
那么它是哪一个?它只是不受支持,还是代码中有错误?
(如果是前者,使用 Web Audio API 的替代方法是什么getUserMedia
?)