首页 > 解决方案 > 录制时连接到 AudioWorklet 而不是 ScriptProcessor

问题描述

我需要将我的 ScriptProcessor 逻辑转换为 AudioWorklet。ScriptProcessor 过程非常简单,只有几行代码,但我很难将它转换为 AudioWorklet。

这是我当前的流程(流来自 userMedia):

var context = new AudioContext();
var microphone = context.createMediaStreamSource(stream);
var processor = context.createScriptProcessor(0, 1, 1);
microphone.connect(processor);
processor.connect(context.destination);

然后我将数据发送给工作人员:

processor.onaudioprocess = function (event) {
var array = event.inputBuffer.getChannelData(0);
realTimeWorker.postMessage({cmd: 'encode', buf: array})
};
                         

我只需要 AudioWorklet 以与 ScriptProcessor 相同的方式处理数据,然后将相同的数据发送给工作人员。

如何将此过程转换为 AudioWorklet?

标签: web-audio-apiaudio-workletscriptprocessor

解决方案


推荐阅读