簡體   English   中英

Javascript:麥克風音頻下載鏈接?

[英]Javascript: Microphone audio to download link?

我正在嘗試從麥克風錄制音頻,然后為其添加下載鏈接。

這是我當前的代碼:

<!DOCTYPE html>
<html>
    <head>
        <title>Weird Problem</title>
        <script>
        function microphone() {
            if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
                navigator.mediaDevices.getUserMedia({ audio: true, video: false }).then(function(stream) {
                    var recorder = new MediaRecorder(stream);
                    var chunks = [];
                    recorder.ondataavailable = function(e) {
                        chunks.push(e.data);
                    }
                    recorder.onstop = function() {
                        stream.getTracks()[0].stop();
                        var blob = new Blob(chunks, { type: "audio/ogg; codecs=opus" });
                        var url = window.URL.createObjectURL(blob);
                        document.getElementById("player").src = url;
                        document.getElementById("upload").href = url;
                        document.getElementById("upload").download = "test.ogg";
                    }
                    recorder.start();
                    setTimeout(function() {
                        recorder.stop();
                    }, 5000);
                }).catch(function(error) {
                    console.log(error);
                });
            }
        }
        </script>
    </head>
    <body>
        <input type="button" value="Record Microphone" onclick="microphone();">
        <br>
        <audio controls id="player"></audio>
        <br>
        <a id="upload">Download Microphone Recording</a>
    </body>
</html>

我使用的是Chrome,對於我來說,它可以正確播放麥克風音頻,但是當我嘗試下載它時,該文件將無法播放甚至無法打開。

我收到各種錯誤消息,該文件包含未知格式的數據,因此我認為這與音頻標題有關。

任何幫助將不勝感激!

事實證明,這個問題比我預期的要復雜一些。

我現在正在改編Recorder.js中的代碼。

在線演示完全滿足我的需求

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM