记录网站音频,适用于所有浏览器和iOS。

11

我在建设一个网站时,在实现多个音频录制选项上浪费了很多时间,但每个选项要么只适用于Chrome,要么只适用于Firefox,两者都可以,但Safari则不行,iOS上则完全不能使用。

该网站需要允许用户录制他们的信息并将其保存在表单状态以便提交。

我目前阅读的所有文章都是几个月前的,并且提到iOS不支持/即将支持。我已经尝试了在iOS上使用移动版Chrome,但它仍然无法工作。

是否有人找到一种简单的方法在浏览器和移动网站中录制音频?

我尝试过以下方法:

当前正在使用以下代码,在Chrome和Firefox中运行正常。

HTML

<audio controls src="" id="audio"></audio> <a class="button" id="record">Record</a> <input type="hidden" id="audiofile" name="audiofile" value="" aria-hidden="true"/>

使用Francium Voice库:

Javascript

    // Audio Recording for Phone Calls
  $(document).on("click", "#record:not(.stop)", function(){
  elem = $(this);
    $("#audio").attr("src","");
    $("#audiofile").val("");
  Fr.voice.record($("#live").is(":checked"), function(){
  elem.addClass("stop");
});
    elem.html("Stop <label id='minutes'>00</label>:<label   id='seconds'>00</label>");
    var minutesLabel = document.getElementById("minutes");
    var secondsLabel = document.getElementById("seconds");
    var totalSeconds = 0;
    setInterval(setTime, 1000);

    function setTime() {
        ++totalSeconds;
        secondsLabel.innerHTML = pad(totalSeconds % 60);
        minutesLabel.innerHTML = pad(parseInt(totalSeconds / 60));
    }

    function pad(val) {
        var valString = val + "";
        if (valString.length < 2) {
            return "0" + valString;
        } else {
            return valString;
        }
    }
});

$(document).on("click", ".stop", function(){
    elem = $(this);
    elem.html("Record");
    elem.removeClass("stop");
Fr.voice.export(function(base64){
  $("#audio").attr("src", base64);
        $("#audiofile").val(base64);
        $("#audio")[0].play();
}, "base64");
    Fr.voice.stop();
});  

你浪费了很多时间来实现多个音频录制选项,请向我们展示你已经实现了什么。 - messerbill
我添加了不同的方法。 - Travis Johnston
请只返回翻译后的文本:请发布您的 代码 - messerbill
4
抱歉,我不会在此发布数百行代码的各种实现,因为我认为这并非必要,也不会影响到您对我的问题的准确或建议性回答。 - Travis Johnston
当然,我在谈论相关代码。但如果您不想这样做,那也没关系——在这种情况下,我想您需要等很久才能得到答案……即便有一天回答也未必会出现。 - messerbill
显示剩余3条评论
1个回答

6

这个支持iPad吗? - Hitesh
有没有解决方案可以在Safari上录制音频?我无法为Mac上的Safari找到任何解决方案。 - arjary
我已经使用上述信息在Safari桌面版中使其工作,但它首先会在音频上显示“错误”,直到您录制。iOS Safari仍然显示有一个套件问题。 - Travis Johnston
有没有什么办法可以让它在iOS Chrome上运行? - Tim Kohlen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接