正确加载插件会显示如下图
DSP插件需要BASS库支持,在debug目录加入bass_wadsp.dll扩展库
完整代码如下:

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using Un4seen.Bass; using Un4seen.Bass.AddOn.WaDsp; namespace WindowsFormsApp3 { public partial class Form3 : Form { public Form3() { InitializeComponent(); } private void Form3_Load(object sender, EventArgs e) { //-1 表示 默认设备输出 //44100 表示 输出采样率 //BASS_DEVICE_CPSPEAKERS 表示输出模式 if (!Bass.BASS_Init(-1, 44100, BASSInit.BASS_DEVICE_CPSPEAKERS, this.Handle)) { MessageBox.Show("出错了," + Bass.BASS_ErrorGetCode().ToString()); } } string fileName; int stream; int dspHandle; int dspModule = 0; private void btn_play_Click(object sender, EventArgs e) { OpenFileDialog o = new OpenFileDialog(); if (o.ShowDialog() == DialogResult.OK) { fileName = o.FileName; //第一个参数是文件名, //第二个参数是文件流开始位置, //第三个是文件流长度 0为使用文件整个长度, //最后一个是流的创建模式 stream = Bass.BASS_StreamCreateFile(fileName, 0L, 0L, BASSFlag.BASS_DEFAULT); Bass.BASS_ChannelPlay(stream, true); //开始播放 } } private void btn_load_Click(object sender, EventArgs e) { OpenFileDialog o = new OpenFileDialog(); if (o.ShowDialog() == DialogResult.OK) { BassWaDsp.BASS_WADSP_Init(this.Handle); dspHandle = BassWaDsp.BASS_WADSP_Load(o.FileName, 5, 5, 100, 100, null); BassWaDsp.BASS_WADSP_Start(dspHandle, dspModule, 0); int hDsp = BassWaDsp.BASS_WADSP_ChannelSetDSP(dspHandle, stream, 1); } } private void btn_dsp_set_Click(object sender, EventArgs e) { if (dspHandle >= 0 && dspModule >= 0) { BassWaDsp.BASS_WADSP_Config(dspHandle); } } private void btn_dsp_stop_Click(object sender, EventArgs e) { BassWaDsp.BASS_WADSP_Stop(dspHandle); } private void Form3_FormClosing(object sender, FormClosingEventArgs e) { Bass.BASS_ChannelStop(stream); //停止播放 BassWaDsp.BASS_WADSP_Stop(dspHandle); } } }
需要注意一下的是,同EQ设置一样,每次播放完歌曲 播放新的歌曲时,都要重新设置一次。
可以这样操作:
最后附上demo地址:
链接: https://pan.baidu.com/s/1ocvKixBjIvBk6tKv4uzBfQ 提取码: dvtn
另附同款dsp音效(更多音效可以去网上找找):
链接: https://pan.baidu.com/s/1Jy60GqbcnNduZ0kFbANA4w 提取码: udes