将过滤器应用于AudioContext

时间:2013-11-14 03:34:49

标签: javascript easeljs createjs

我正在尝试对我加载的声音应用低通滤波器并通过SoundJS播放。

现在我正试图这样做:

    var audio = createjs.Sound.activePlugin;
    var source = audio.context.createBufferSource();
    // Create the filter
    var filter = audio.context.createBiquadFilter();
    // Create the audio graph.
    source.connect(filter);
    filter.connect(audio.context.destination);
    // Create and specify parameters for the low-pass filter.
    filter.type = 0; // Low-pass filter. See BiquadFilterNode docs
    filter.frequency.value = 440; // Set cutoff to 440 HZ
    // Playback the sound.
    createjs.Sound.play("Song");

但我运气不好。有人能指出我正确的方向吗?

由于

1 个答案:

答案 0 :(得分:0)

当我构建MusicVisualizer demo一个有趣的限制时,我发现所有的音频节点都必须使用相同的上下文来构建。您可以通过createjs.WebAudioPlugin.context

访问SoundJS上下文

如果您希望它按预期工作,您还需要将过滤器连接到现有节点流。如果您想查看源代码,可以在github上看到MusicVisualizer演示。您还可以在线查看documentation,这可能会有所帮助。

希望有所帮助。