从 JavaScript 访问麦克风输入
Posted
技术标签:
【中文标题】从 JavaScript 访问麦克风输入【英文标题】:Access microphone input from JavaScript 【发布时间】:2014-01-21 19:47:23 【问题描述】:我想使用navigator.getUserMedia()
访问麦克风输入,但不确定如何继续。
我可以很好地启动音频,但我不知道之后该怎么处理。
if (!navigator.getUserMedia)
navigator.getUserMedia = navigator.getUserMedia
|| navigator.webkitGetUserMedia
|| navigator.mozGetUserMedia
|| navigator.msGetUserMedia;
if (navigator.getUserMedia)
navigator.getUserMedia(audio: true, function (e)
// what goes here?
, function (e)
alert('Error capturing audio.');
);
else
alert('getUserMedia not supported in this browser.');
我想以流的形式访问它。我什至不需要立体声,只是一种获取数据的方法。
编辑:我想使用 websockets 将数据发送回服务器,以创建一种对讲系统。在这里,我需要能够访问一个简单的音频流,在某些事件上停止和启动它。
【问题讨论】:
github.com/mattdiamond/Recorderjs 我不是这方面的专家,但我一直在阅读有关 Web 实时通信项目的信息。 webrtc.org 我发现这篇博文很有帮助:html5rocks.com/en/tutorials/getusermedia/intro @HarveyA.Ramer 我看到了 html5rocks 的帖子,但它主要是关于视频的。 确切地知道你想做什么会很有帮助。您是否尝试添加效果?录制音频?分析一下? @KevinEnnis 我想使用 websockets 将它发送回服务器,以创建一种对讲机。 【参考方案1】:如果您的意思是要访问正在进行的音频流的原始样本,请在 Web Audio (http://webaudio.github.io/web-audio-api/#ScriptProcessorNode) 中使用 ScriptProcessorNode。上面提到的 RecordJS 将帮助您展示如何做到这一点。
【讨论】:
以上是关于从 JavaScript 访问麦克风输入的主要内容,如果未能解决你的问题,请参考以下文章