我正在尝试将滤镜效果添加到我在我的网站上播放的音频流中。我能够将 Tone.js 库连接到音频流,但我没有听到网站上播放的音频流有任何变化。我在控制台中没有看到任何错误,我尝试将过滤器从 50 调整到 5000,但似乎对音频没有任何影响。我是否需要设置new Tone.Player()
才能真正听到音频?如果是这样,如果现有音频元素没有 src,您将如何设置播放器。
$('#testBtn').click(async function () {
const audioElement = document.getElementById('theAudioStream');
const mediaElementSource = Tone.context.createMediaElementSource(audioElement);
const filter = new Tone.Filter(50, 'lowpass').toDestination();
Tone.connect(mediaElementSource, filter);
await Tone.start();
console.log("Started?");
});
我尝试修改的音频流是通过 JsSip 调用设置的。启动流的代码如下:
var audioStream = document.getElementById('theAudioStream')
//further down in code
currentSession.answer(options);
if (currentSession.connection) {
currentSession.connection.ontrack = function (e) {
audioStream.srcObject = e.streams[0];
audioStream.play();
}
}
我在通话开始后单击测试按钮,以便在初始化 Tone.js 过滤器之前知道音频流存在