我使用网络音频API实现了音频混音器的简单实现。我基本上为每个源创建一个缓冲区,添加一些过滤器,然后连接到目标:
this.track.connect(this.highPassFilter);
this.highPassFilter.connect(this.lowShelfFilter)
this.lowShelfFilter.connect(this.highShelfFilter)
this.highShelfFilter.connect(this.midFilter);
this.midFilter.connect(this.panner)
this.panner.connect(this.gain)
this.gain.connect(this.ctx.destination)
我想要做的是能够创建主增益和主压缩器。看作我的所有曲目'直接连接到context.destination然后在按下播放按钮时基本上一致地播放,我如何将主增益连接到链?
答案 0 :(得分:2)
我想你已经知道如何做到这一点。您需要做的是创建主增益和压缩器,将这两者连接在一起,然后将所有轨道连接到它们,如下所示:
[track] -> masterGain -> masterCompressor -> ctx.destination
反过来,但是你需要它(masterCompressor - > masterGain - > ctx.destination)。