小编Ama*_*pta的帖子

未捕获(在承诺中)DOMException:无法解码音频数据

我在decodeAudioData使用Web Audio APIChrome浏览器播放方法时遇到问题(在Firefox中运行正常) -

我正在从服务器发送媒体记录器记录的音频缓冲区.

服务器端

wss = new WebSocketServer({server: server}, function () {});

wss.on('connection', function connection(ws) {

   ws.binaryType = "arraybuffer";

   ws.on('message', function incoming(message) {
     if ((typeof message) == 'string') {
        console.log("string message: ", message);
     } else {
        console.log("not string: ", message);
        ws.send(message);
     }
   });
});  
Run Code Online (Sandbox Code Playgroud)

客户端

window.AudioContext = window.AudioContext||window.webkitAudioContext;
navigator.getUserMedia = (navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia);

var context = new AudioContext();
var mediaRecorder;
var chunks = [];
var startTime = 0;

ws = …
Run Code Online (Sandbox Code Playgroud)

javascript websocket node.js mediarecorder-api web-audio-api

8
推荐指数
1
解决办法
5312
查看次数

如何使用来自web-socket的Web音频API流音频块?

我正在通过Web-Socket从服务器流式传输音频数据

ws.on('message', function incoming(message) {
    var readStream = fs.createReadStream("angular/data/google.mp3",
        {
            'flags': 'r',
            'highWaterMark': 128 * 1024
        }
    );
    readStream.on('data', function(data) {
        ws.send(data);
    });

    readStream.on('end', function() {
        ws.send('end');
    });

    readStream.on('error', function(err) {
        console.log(err)
    });
});
Run Code Online (Sandbox Code Playgroud)

在客户端

var chunks = [];
var context = new AudioContext();
var soundSource;

var ws = new WebSocket(url);
    ws.binaryType = "arraybuffer";

ws.onmessage = function(message) {
    if (message.data instanceof ArrayBuffer) {
        chunks.push(message.data)
    } else {
        createSoundSource(chunks);
    }
};

function createSoundSource(audioData) {
    soundSource = context.createBufferSource();

    for (var i=0; i …
Run Code Online (Sandbox Code Playgroud)

javascript websocket node.js web-audio-api

5
推荐指数
2
解决办法
1268
查看次数