【发布时间】:2015-01-27 05:17:47
【问题描述】:
我正在调试一个使用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 Audio API 与 getUserMedia 结合使用。
我不熟悉这个 API 或getUserMedia,但我猜想getUserMedia 需要请求使用麦克风的权限。那么如何在不使用getUserMedia的情况下从麦克风中抓取音频并录制呢?
这些来自 1.5 年前的 two answers 表明它受到支持并且应该可以工作。
那是什么?是根本不支持,还是代码有错误?
(如果是前者,使用 Web Audio API 或 getUserMedia 的替代方法是什么?)
【问题讨论】:
标签: android audio web-audio-api getusermedia chrome-for-android