在HTML5中录制在Firefox中不起作用

pra*_*iya 6 javascript firefox html5 audio-recording getusermedia

我正在使用recorder.js和Recordmp3.js通过麦克风录制音频.

它在Chrome浏览器中运行良好,但在Firefox中却没有(最新版本).

当我在Firefox浏览器上点击我的网络应用程序时,它要求我共享麦克风,但几秒后它就消失了.因此,由于该录制功能无法在Firefox上录制任何内容.

我正在分享使用Recordmp3.js开发的工作示例,并且它在Firefox中不起作用.

http://audior.ec/recordmp3js/

这是一个已知的问题?

mid*_*ido 2

我是对的,问题是audioStream元素被垃圾收集,我从github下载了代码并修改

这:

var audio_context;
var recorder;

function startUserMedia(stream) {
    var input = audio_context.createMediaStreamSource(stream);
Run Code Online (Sandbox Code Playgroud)

进入

var audio_context;
var recorder;
var localStream; // line added by me

function startUserMedia(stream) {
    localStream = stream; // line added by me
    var input = audio_context.createMediaStreamSource(stream);
Run Code Online (Sandbox Code Playgroud)

因此确保stream不会被垃圾收集。

需要注意的事项,

1:MP3 编码/解码技术在某些国家可能受 MP3 专利的管辖。出于商业目的,我建议你采取这种vorbis/ogg方式(而且我认为从 wav 转换后的 mp3 质量很差)。

2:我发现了另一个问题,即录音中有额外 50% 的沉默,但如果我是正确的,该问题的解决方案已经在网上提供。

编辑:我在github中添加了一个演示