【问题标题】:Get the raw audio in getUserMedia success callback在 getUserMedia 成功回调中获取原始音频
【发布时间】:2013-05-15 11:18:31
【问题描述】:

我正在尝试在 getUserMedia() 成功回调中获取原始音频并将其发布到服务器。 成功回调接收 LocalMediaStream 对象。

var onSuccess = function(s) {
var m=s.getAudioTracks(s);
//m[0] contains MediaStreamTrack object for audio
//get the raw audio and do the stuff  
}

但是没有属性或方法可以从 MediaStreamTrack 中的通道获取原始音频。 我们如何将原始音频访问到 getUserMedia() 成功时调用的回调中?

我找到了 Recorder.js 库——https://github.com/mattdiamond/Recorderjs 但它在 Chrome 中录制空白音频:版本 26.0.1410.64 m。 它在 Chrome 上运行良好:版本 29.0.1507.2 canary SyzyASan。

我认为 recorder.js 使用的 Web Audio API 存在问题

我正在寻找没有 Web Audio API 的解决方案,该解决方案至少应该适用于 chrome 的官方版本。

【问题讨论】:

  • 仅供参考,这可能是您的标志的问题。转到 chrome://flags 并查找有关麦克风访问或 getusermedia 的内容。不记得叫什么了。但是如果你启用它,它应该可以在 Chrome 26 中运行。我怀疑这是一个 RecorderJS 错误 - 有很多人在使用那个库。

标签: html5-audio web-audio-api getusermedia


【解决方案1】:

查看MediaStreamAudioSourceNode。您可以创建其中之一(通过 AudioContext 的 createMediaStreamSource 方法),然后将输出连接到 RecorderJS 或普通的旧 ScriptProcessorNode(这是构建 RecorderJS 的基础)。

编辑:刚刚意识到您在询问是否可以在Web Audio API 的情况下访问原始音频样本。据我所知,我认为这是不可能的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-05-16
    • 1970-01-01
    • 2011-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-28
    相关资源
    最近更新 更多