【问题标题】:Audio-capture on a Firefox OS device or simulatorFirefox OS 设备或模拟器上的音频捕获
【发布时间】:2014-05-27 12:44:05
【问题描述】:

我正在尝试在 Firefox OS(v1.3,虽然我尝试过 Firefox OS 2 并且也无法正常工作)上进行音频捕获,但我正在努力让它工作。

我在 manifest.webapp 中添加了以下内容:

permissions": {
    "audio-capture": {},
  }

然后我在文件 recorder.js 中有以下代码:

window.AudioContext = window.AudioContext || window.webkitAudioContext;
var audioContext = new AudioContext();

function initAudio()
{
    window.alert( "Trying..." );
    navigator.mozGetUserMedia(  {
                                audio: true,
                                video: false
                            },
                            function( stream )
                            {
                                window.alert( "GO!" );
                            },
                            function( error )
                            {
                                window.alert( "ERROR! :(" );
                            } );


}

window.addEventListener('load', initAudio );

应用程序启动时会调用“正在尝试...”消息,但我从未看到“开始!”或“错误!:(”。有没有人对如何让它工作有任何想法?这似乎没有意义。通过 Firefox(浏览器)的相同代码似乎工作正常。我被要求授予音频捕获权限然后我看到“GO!”消息。

那么有没有人知道如何在 firefox 操作系统下让它工作?

【问题讨论】:

    标签: javascript audio permissions firefox-os


    【解决方案1】:

    我的一个同事破解了它。它在模拟器上根本不起作用,但在实际设备上将清单“类型”设置为“web”可以解决问题(我们最初将其选为“特权”!)。

    非常令人困惑,因为它说您必须“至少”托管它才能工作,而且我们可以说“web”是一种比“托管”更小的类型,而“特权”是一种比“web”更大的类型”和“托管”。

    希望能帮助我们度过刚刚经历的 2 天痛苦!

    【讨论】:

    • 我可以确认模拟器不支持音频:捕获但它正在开发中(我记得一张票):-)
    • 我正在搜索是否有适用于 Firefox OS 的录音机应用程序但一无所获,有人说当时没有 API。但是使用您的代码,是否可以像录音应用一样保存来自麦克风的音频流?
    • @baptx:保存到内存中是的。将其保存到磁盘...不。要保存到磁盘,您需要获得特权...要记录,您需要成为我们实验中的网络应用程序。说得委婉一点,API 是我在计算机开发史上见过的最糟糕的……而且我见过一些糟糕的 API……
    • @baptx:碰巧我刚刚回去重新访问了这个。我改成了“特权”,录音效果和预期一样完美……现在我很困惑……
    猜你喜欢
    • 2011-05-13
    • 1970-01-01
    • 1970-01-01
    • 2011-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多