记得加 initguid.h 的include,不然使用时会出现"无法解析的外部符号_IID_"错误
2、在Cfilter类的头文件filter.h开头添加 #include “Interface.h” 。
3、在Cfilter类的声明中继承这个接口 CFilter:public Interface。
4、在Cfilter类的声明中增加Interface接口的函数的声明:
//--------Interface methods----------
STDMETHODIMPSetServerAddr(char* inIP, int inPort)
5、在Cfilter类的定义中实现Interface接口的函数的定义:
//-----------------------Interface methods-----------------------------
STDMETHODIMP CFilter::SetServerAddr(char* inIP, int inPort)
{
……
return S_OK
}
6、最后别忘了,在CFilter::NonDelegatingQueryInterface函数中添加两行代码,用来向外界暴露该接口:
// Basic COM - used here to reveal our own interfaces
STDMETHODIMP CFilter::NonDelegatingQueryInterface(REFIID riid, void ** ppv)
{
……
if (riid == IID_Interface)
return GetInterface((Interface *) this, ppv)
……
}
至此,filter的接口添加完毕。如果其它应用程序想要用这个接口,那么就像使用其它com组件一样。1、把Interface.h添加到工程里。2、使用前添加 #include “Interface.h”。3、在成功添加filter之后,使用QueryInterface函数获得接口指针即可使用。
首先,打开FL
其次,加载一个Sylenth1(废话)
注:Sylenth1打开可能会加载一个预置,我们要把它还原成一个初始音色,即Init音色
还原方法
将目光转向OSC1,确保振荡器内的是锯齿波,关掉RETRIG,把VOICES顶到头(如果你的CPU好的话),同时拉高DETUNE,拉低STERO。
就是这样
接着把OSC A1复制到OSC A2
OSC A2拉高一个OCTAVE拉低VOLUME点亮INV
来到Filter功能组,FilterType选低通(Low Pass),INPUT Select选AB,Cutoff拉到头,同时拉高Resonance和Drive来增加硬度
把OSC A1复制到OSC B1,也把OSC A2复制到OSC B2,然后来到Part B
拉高Detune到0.5,接着拉高ENV的Release再稍微调整一下FINE来增加音符的宽度
FILTER B的Type要选择none,不然会冲突
接着进入ENV包络器
ENV 1
ENV 2 用Pitch包络增加头音
然后进入主控制界面调整效果
Reverb
Delay
压缩
EQ处理
最后,进行音量混合,这样一个简单的Saw Lead就做好啦
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)