聆听SoundFont
一、SoundFont的发展
要说SoundFont,不得不提到E-mu公司。那还是很早以前的事了,为了抵抗YAMAHA公司XG的强大攻势,E-mu开发了一种新的音色采样技术──SoundFont。SoundFont音色库可以包含一个或多个MIDI音色库,并作为SoundFont文件(扩展名为SBK)保存在硬盘中,装入声卡就可进行播放。SoundFont技术的推出使得用户可以根据自己的需要在声卡的RAM或内存中加载所需的音色库,从而依照MIDI文件来合成MIDI乐曲。
这听起来是很诱人,但在当时敢第一个吃SoundFont这条螃蟹的人很少,不是因为人们封建守旧,而是当时声卡512KB的内存实在装不下什么好的SoundFont音色库。时光飞逝,以Sound Blaster Live!为首的PCI声卡的性能大幅度提高,再加上E-mu被创新收购以后,资金及技术更加雄厚,于是E-mu又发布了SoundFont2.0标准(扩展名为SF2)。SoundFont迎来了它的春天。
二、SoundFont的使用
下面我就以创新的Sound Blaster Live!系列声卡为例,说说SoundFont的使用。
Sound Blaster Live!自带了2M、4M及8M三个主音色库,这三个主音色库都是标准的GS、GM音色,差别主要是乐器音色采样率及混响效果数量不同。说白了就是2M的音质像是听电话,4M的是听广播,8M的就是听CD了(但我的耳朵实在听不出4M与8M的差别),这三种主音色库你必须装载一个(要不然听MIDI是没声的!),如果还想听其它的音色可以继续装载其它的音色库(只要不超过声卡的内存大小就行)。咱们先装一个非洲乐器的音色库Africa.SF2,再来听一首充满非洲野味的MIDI音乐。咦,怎么回事?该是钢琴的地方怎么都变成了打击乐了?这首MIDI简直是不堪入耳!重新进入SoundFont设置区,啊,原来如此。以前4M的主音色库128种音色的001~010号乐器被Africa这个音色库占据了。002号的钢琴音色自然就变成了现在的Hmmm音色(见图一)。怪不得MIDI乐曲中的钢琴都变成了怪里怪气的Hmmm。这就说到SoundFont的“痛处”了,即加载任何一个非主音色库后,主音色库中的某些音色就被新加载的非主音色库相对应序号的音色所替代。拿上面的例子来说,开始只有一个4M的主音色库,000~127这128个音色自然都是标准音色,而后我们加载了一个Africa的音色库,这个音色库只有001~010有音色,000以及011~127均为空,所以在音色列表中000为主音色库的Piano1,001~010都被Africa的音色替代,011~127仍然为主音色库中的标准音色。如果我们继续载加一个名为RealAcousticDrums_1.SF2的音色库,可以看到000音色由Piano1变成了Standard,而其它音色全部没有改变。(如图二)这就说明RealAcousticDrums这个音色库只有000号一种音色,其它序号音色均为空。
图一
图二
这样看来SoundFont的这个特点还真有点让人难受。听首MIDI要想达到最佳效果还要加载配合它的音色库。如果你再换一首MIDI听,那么这首MIDI用刚才那首MIDI专用的音色库来听也许会乱七带八糟。所以依我看来,一般欣赏MIDI还是用YAMAHA的XG系列软波表好(如果你的声卡好,那就用不到了)。用XG至少可以图个方便呀。唉,看来SoundFont今后不改进的话只能仰天长叹了:既生瑜,何生亮!
三、SoundFont在Cakewalk中的应用
“SoundFont既然有这样的缺点,你为什么还要介绍它,分明是吃了E-mu公司的回扣……”,这是从何说起呢?虽然用SoundFont欣赏高品质的MIDI是困难点,但用SoundFont来帮助我们制作MIDI绝对划算。你还为没钱买音源、音效扩展卡这些专业MIDI设备而发愁?试试SoundFont吧。
拿最流行的MIDI编辑软件Cakewalk Pro Audio来说,从8.0版本开始就完全支持SoundFont了。拿Cakewalk Pro Audio8.0来说,在Tools(工具)下拉菜单中选SoundFonts,新弹出的窗口中列出了0~127音轨(如图三),你可以点中任意一轨(例如在这里我们选第10轨),然后按Attach,选择一个Soundfont音色库文件(扩展名SBK或SF2)就可以了,不想要了按Detach就可清除。之后进入第10轨的音轨属性窗口(Track Properties),先点Instrument按钮将右边的Uses改为SoundFont Device。确认后将Port设为SoundFont Device,将Bank设为10-SF,Patch一项一定要弄清你选择的这个音色库占用了哪个序号的音色。例如我的这个RealAcousticDrums音色库只有0号有音色,其它序号音色均为空,所以我的Patch这一栏一定要选择0号。(如图四)您在操作时千万别选错。都设置好后,我们选的第10音轨就可以使用SoundFont中的音色了,很方便哦。
图三
图四
四、获得SoundFont音色库
用SoundFont做MIDI如此之轻松,当然要多找些好的SoundFont,来激起你的创作灵感。
最痛快(也是最花钱)的就是买SoundFont音色库光盘。一张盘上有好几十种音色库,音色都是很不错的。(如图五、图六)。不过也许是musiXboy目光短浅,反正我在北京没见有卖的(我说的可是Z版)。不过网上倒是有卖。王巍的“数字音乐实验室”(http://www.muslab.com)中有几种SoundFont光盘,标价均在60元(人民币)以下,在这里买比较可靠。(巍兄,给我广告费!)另外在http://www.soundfont.com上也有卖的,但最便宜的也有10美元(唉,把“美”去掉的话……)。不知能否给送到中国,哪位仁兄闲来无事不如去买一张试试(啊,要买一张送给我,您客气)。
另一种很不痛快(也很花钱)的方法就是上网下载。您可以去“短歌行-浮点联盟──MIDI与声卡的世界”(http://cloudfly.126.com)看看,再有本人musiXboy的“MIDI爱好者”网站(http://www.midifan.com/)也有SoundFont下载,敬请光临。
五、SoundFont的压缩
有许多上网找SoundFont的网友好容易down了一个音色库下来,却使不了。仔细一看:这个文件后缀不是SBK,也不是SF2,而是SFARK。WHY?呵呵,现在许多提供SoundFont下载的站点都用SFARK格式。这是一个叫SfArk的软件干的“好事”(如图七),它专为压缩和解压缩SoundFont文件而制作,固压缩能力比WinZip还大。我做了实验,一个838KB的SF2文件用Winzip压缩后文件大小为633KB,而用SfArk压缩后文件只剩下543KB,压缩率比WinZip高出10%,WinZip可谓大巫见小巫了。
图七
SfArk用起来很简单,安装后再遇到SFARK文件,双击该文件SfArk会自动跳出来为您解压,您需要做的只是点一下左上角画着钩的Start按钮。要压缩SoundFont文件时,只需点open按钮选择一个SoundFont文件,再点Start就OK了。
六、SoundFont的编辑制作
为写这篇文章,Musicboy下载了许多SF2文件,但每个SF2音色库中只有几种甚至一种音色,如果能把各个音色库中的音色都集成在一个音色库中文件中,那用起来多方便。听说创新出了一个叫Vienna SoundFont Studio2.3的SoundFont编辑软件,来试试它的功夫吧。
我们选来了解一下Vienna的界面。Vienna的样子乍看起来很乱,(如图八)其实它最主要的功能全集中在左上角那个被称为SoundFont Tree View的窗口中,右边是虚拟键盘,而最下面那堆小窗口全是起辅助调节功能的,咱们可以先不理它。
图八
在这里我们要明确一下SoundFont Tree View窗口中各个目录的作用。User Sample Pool(用户样本集合)是音色库中所有音色用到的单个的WAV文件,双击可对WAV文件进行编辑(如图九)。Instrument Pool(乐器集合)目录中,则是单个或一组WAV文件。大家知道,每个音色库可以有128种音色(或者说乐器),而每种音色中又有128个音高(也就是电子琴上的128个健),这128个音高也可以是不同的音色,故Instrument Pool中可以用User Sample Pool中的WAV文件组建Instrument(乐器),每个Instrument可以只有一种音色,而音高不同,也可为每个音高设定一种音色(如图十就是每个琴键对应一种音色,而图十一则只有一种音色,只是每个琴键对应的音高不同)。再下面就是Preset Section(预置区)目录,它其下的两个目录Melodic Pool(乐音集合)与Percussive Pool(打击集合)分别存放编辑完成的乐音与打击音色,这也就是将上面Instrument Pool目录中编辑完成的音色进行编排,给每个音色分配音色序号(000~127)、音色库中以及音色名称。
图九
图十
图十一
我们举个例子说明一下吧。我有一个叫RealAcousticDrums的音色库,其中的Cowbell与ifSplash两种音色我非常喜欢,但其它音色我不需要,怎么办才能使这两种音色编入另一个音色库呢?首先打开RealAcousticDrums音色库,双击User Sample Pool这个文件夹使它展开,分别在Cowbell和ifSplash上点右键,选Export(导出),将这两个WAV文件另存在一个文件夹中。然后再打开Africa.SF2(我喜欢的音色都集中于此)。先在User Sample Pool文件夹上点右键,选Import User Sample(s),将刚才我们导出的两个WAV文件Cowbell和ifSplash重新导入。下面你就面临选择了:是将新音色单独放入一个新的Instrument(乐器),还是与别的音色同在一个Instrument中,而用不同的音高(键位来区别它们)。
如果你选择前者,只需在Instrument Pool文件夹上单击右键选入New Instrument,然后给新的乐器命名(例如叫Musicboy,呵呵),接着选择乐器中包含的音色,我选Cowbell,最后在Melodic Pool上按右键,选New Melodic Preset,这时出现的对话框很重要。其中Bank Number是音色库号,一般一个音色库的序号都取相同的。Preset Number是音色序号,必需在0~127之间,而且你要确定新建Melodic的Preset Number在此音色库中还未被使用,否则不能生效。Preset Name就是你新建音色的最终名称,起好听点吧(如图十二)。但有些音色我们只用它的几种音高,太低或太高都用不上,这时你可以点中Melodic Pool中的Musicboy(我们刚才新建的音色),用鼠标挪动虚拟键盘下的小条来改变发音的琴键,在小条以外的琴键就都不发音了。
图十二
如果您选择了后者(具体内容见上文),我们可以把ifSplash与其它音色放入同一个序号的音色中,同样是右键点Instrument Pool,选New Instrument,起个名字(嗯,就叫pop soft forever吧。老编,小费!)之后选ifSplash,在已有音色Vocals/FX’s上右击选New Zone(新范围),在弹出的对话框中选择新建的那个Instrument(也就是pop soft forever),完后一定要拖动Vocals/FX’s下所有音色的小条,不能让它们重合(除非你想按一个键出的两种音的合声),这样Vocals/FX’s下就有了两种音色:Vocals/FX和pop soft forever(如图十三)。
图十三
好了,下面该说说调节音色属性的小窗口了(如图十四)。Pitch中Coarse Tune可以以半音为单位粗调音调高低,Fine Tune则是微调。Effects中的调节项常做MIDI的朋友一定不会陌生,这都是常用的MIDI效果:Pan(位置)、Reverb(混响)、Chorus(合声)等等,至于右边的那些调节什么延迟,衰退等等乱七八糟的东东,Musicboy实在是才疏学浅,弄不明白了,哪路神仙如果肯为我指一条光明大道,快来musiXboy的“MIDI爱好者”网站(http://www.midifan.com/)赐教于我,小弟在这里谢过了(本文提到的软件也可在此下载)。
图十四
七、尾声:
唉,终于说完了,我该歇了……(这时只听得外面一阵嘈杂:“GM好!”、“那也没XG好!”、“SoudFont万岁!……”人群一股脑拥进屋中:“Musicboy,你给评评理,GM、XG与SoundFont到底谁厉害?”“这……各位先把刀枪放下,我家离医院可是不近……”要说起GM、XG与SoundFont这哥儿仨(结拜时间已无从考证)真是各有千秋。XG的音色与各种效果没说,SoundFont在MIDI制作时优势明显,而GM的简易性兼容性又没的挑,所以就像问克林顿、盖茨与泰森这仨美国佬谁厉害。答曰:都厉害。不过既然本文是说SoundFont的,那么俺就要老王卖瓜,自卖自夸一下了。如果E-mu能开发出SoundFont3.0,克服SoudFont2.0的缺点,那么它的潜力绝对不可限量,我们等待那一天……
要说SoundFont,不得不提到E-mu公司。那还是很早以前的事了,为了抵抗YAMAHA公司XG的强大攻势,E-mu开发了一种新的音色采样技术──SoundFont。SoundFont音色库可以包含一个或多个MIDI音色库,并作为SoundFont文件(扩展名为SBK)保存在硬盘中,装入声卡就可进行播放。SoundFont技术的推出使得用户可以根据自己的需要在声卡的RAM或内存中加载所需的音色库,从而依照MIDI文件来合成MIDI乐曲。
这听起来是很诱人,但在当时敢第一个吃SoundFont这条螃蟹的人很少,不是因为人们封建守旧,而是当时声卡512KB的内存实在装不下什么好的SoundFont音色库。时光飞逝,以Sound Blaster Live!为首的PCI声卡的性能大幅度提高,再加上E-mu被创新收购以后,资金及技术更加雄厚,于是E-mu又发布了SoundFont2.0标准(扩展名为SF2)。SoundFont迎来了它的春天。
二、SoundFont的使用
下面我就以创新的Sound Blaster Live!系列声卡为例,说说SoundFont的使用。
Sound Blaster Live!自带了2M、4M及8M三个主音色库,这三个主音色库都是标准的GS、GM音色,差别主要是乐器音色采样率及混响效果数量不同。说白了就是2M的音质像是听电话,4M的是听广播,8M的就是听CD了(但我的耳朵实在听不出4M与8M的差别),这三种主音色库你必须装载一个(要不然听MIDI是没声的!),如果还想听其它的音色可以继续装载其它的音色库(只要不超过声卡的内存大小就行)。咱们先装一个非洲乐器的音色库Africa.SF2,再来听一首充满非洲野味的MIDI音乐。咦,怎么回事?该是钢琴的地方怎么都变成了打击乐了?这首MIDI简直是不堪入耳!重新进入SoundFont设置区,啊,原来如此。以前4M的主音色库128种音色的001~010号乐器被Africa这个音色库占据了。002号的钢琴音色自然就变成了现在的Hmmm音色(见图一)。怪不得MIDI乐曲中的钢琴都变成了怪里怪气的Hmmm。这就说到SoundFont的“痛处”了,即加载任何一个非主音色库后,主音色库中的某些音色就被新加载的非主音色库相对应序号的音色所替代。拿上面的例子来说,开始只有一个4M的主音色库,000~127这128个音色自然都是标准音色,而后我们加载了一个Africa的音色库,这个音色库只有001~010有音色,000以及011~127均为空,所以在音色列表中000为主音色库的Piano1,001~010都被Africa的音色替代,011~127仍然为主音色库中的标准音色。如果我们继续载加一个名为RealAcousticDrums_1.SF2的音色库,可以看到000音色由Piano1变成了Standard,而其它音色全部没有改变。(如图二)这就说明RealAcousticDrums这个音色库只有000号一种音色,其它序号音色均为空。
图一
图二
这样看来SoundFont的这个特点还真有点让人难受。听首MIDI要想达到最佳效果还要加载配合它的音色库。如果你再换一首MIDI听,那么这首MIDI用刚才那首MIDI专用的音色库来听也许会乱七带八糟。所以依我看来,一般欣赏MIDI还是用YAMAHA的XG系列软波表好(如果你的声卡好,那就用不到了)。用XG至少可以图个方便呀。唉,看来SoundFont今后不改进的话只能仰天长叹了:既生瑜,何生亮!
三、SoundFont在Cakewalk中的应用
“SoundFont既然有这样的缺点,你为什么还要介绍它,分明是吃了E-mu公司的回扣……”,这是从何说起呢?虽然用SoundFont欣赏高品质的MIDI是困难点,但用SoundFont来帮助我们制作MIDI绝对划算。你还为没钱买音源、音效扩展卡这些专业MIDI设备而发愁?试试SoundFont吧。
拿最流行的MIDI编辑软件Cakewalk Pro Audio来说,从8.0版本开始就完全支持SoundFont了。拿Cakewalk Pro Audio8.0来说,在Tools(工具)下拉菜单中选SoundFonts,新弹出的窗口中列出了0~127音轨(如图三),你可以点中任意一轨(例如在这里我们选第10轨),然后按Attach,选择一个Soundfont音色库文件(扩展名SBK或SF2)就可以了,不想要了按Detach就可清除。之后进入第10轨的音轨属性窗口(Track Properties),先点Instrument按钮将右边的Uses改为SoundFont Device。确认后将Port设为SoundFont Device,将Bank设为10-SF,Patch一项一定要弄清你选择的这个音色库占用了哪个序号的音色。例如我的这个RealAcousticDrums音色库只有0号有音色,其它序号音色均为空,所以我的Patch这一栏一定要选择0号。(如图四)您在操作时千万别选错。都设置好后,我们选的第10音轨就可以使用SoundFont中的音色了,很方便哦。
图三
图四
四、获得SoundFont音色库
用SoundFont做MIDI如此之轻松,当然要多找些好的SoundFont,来激起你的创作灵感。
最痛快(也是最花钱)的就是买SoundFont音色库光盘。一张盘上有好几十种音色库,音色都是很不错的。(如图五、图六)。不过也许是musiXboy目光短浅,反正我在北京没见有卖的(我说的可是Z版)。不过网上倒是有卖。王巍的“数字音乐实验室”(http://www.muslab.com)中有几种SoundFont光盘,标价均在60元(人民币)以下,在这里买比较可靠。(巍兄,给我广告费!)另外在http://www.soundfont.com上也有卖的,但最便宜的也有10美元(唉,把“美”去掉的话……)。不知能否给送到中国,哪位仁兄闲来无事不如去买一张试试(啊,要买一张送给我,您客气)。
另一种很不痛快(也很花钱)的方法就是上网下载。您可以去“短歌行-浮点联盟──MIDI与声卡的世界”(http://cloudfly.126.com)看看,再有本人musiXboy的“MIDI爱好者”网站(http://www.midifan.com/)也有SoundFont下载,敬请光临。
五、SoundFont的压缩
有许多上网找SoundFont的网友好容易down了一个音色库下来,却使不了。仔细一看:这个文件后缀不是SBK,也不是SF2,而是SFARK。WHY?呵呵,现在许多提供SoundFont下载的站点都用SFARK格式。这是一个叫SfArk的软件干的“好事”(如图七),它专为压缩和解压缩SoundFont文件而制作,固压缩能力比WinZip还大。我做了实验,一个838KB的SF2文件用Winzip压缩后文件大小为633KB,而用SfArk压缩后文件只剩下543KB,压缩率比WinZip高出10%,WinZip可谓大巫见小巫了。
图七
SfArk用起来很简单,安装后再遇到SFARK文件,双击该文件SfArk会自动跳出来为您解压,您需要做的只是点一下左上角画着钩的Start按钮。要压缩SoundFont文件时,只需点open按钮选择一个SoundFont文件,再点Start就OK了。
六、SoundFont的编辑制作
为写这篇文章,Musicboy下载了许多SF2文件,但每个SF2音色库中只有几种甚至一种音色,如果能把各个音色库中的音色都集成在一个音色库中文件中,那用起来多方便。听说创新出了一个叫Vienna SoundFont Studio2.3的SoundFont编辑软件,来试试它的功夫吧。
我们选来了解一下Vienna的界面。Vienna的样子乍看起来很乱,(如图八)其实它最主要的功能全集中在左上角那个被称为SoundFont Tree View的窗口中,右边是虚拟键盘,而最下面那堆小窗口全是起辅助调节功能的,咱们可以先不理它。
图八
在这里我们要明确一下SoundFont Tree View窗口中各个目录的作用。User Sample Pool(用户样本集合)是音色库中所有音色用到的单个的WAV文件,双击可对WAV文件进行编辑(如图九)。Instrument Pool(乐器集合)目录中,则是单个或一组WAV文件。大家知道,每个音色库可以有128种音色(或者说乐器),而每种音色中又有128个音高(也就是电子琴上的128个健),这128个音高也可以是不同的音色,故Instrument Pool中可以用User Sample Pool中的WAV文件组建Instrument(乐器),每个Instrument可以只有一种音色,而音高不同,也可为每个音高设定一种音色(如图十就是每个琴键对应一种音色,而图十一则只有一种音色,只是每个琴键对应的音高不同)。再下面就是Preset Section(预置区)目录,它其下的两个目录Melodic Pool(乐音集合)与Percussive Pool(打击集合)分别存放编辑完成的乐音与打击音色,这也就是将上面Instrument Pool目录中编辑完成的音色进行编排,给每个音色分配音色序号(000~127)、音色库中以及音色名称。
图九
图十
图十一
我们举个例子说明一下吧。我有一个叫RealAcousticDrums的音色库,其中的Cowbell与ifSplash两种音色我非常喜欢,但其它音色我不需要,怎么办才能使这两种音色编入另一个音色库呢?首先打开RealAcousticDrums音色库,双击User Sample Pool这个文件夹使它展开,分别在Cowbell和ifSplash上点右键,选Export(导出),将这两个WAV文件另存在一个文件夹中。然后再打开Africa.SF2(我喜欢的音色都集中于此)。先在User Sample Pool文件夹上点右键,选Import User Sample(s),将刚才我们导出的两个WAV文件Cowbell和ifSplash重新导入。下面你就面临选择了:是将新音色单独放入一个新的Instrument(乐器),还是与别的音色同在一个Instrument中,而用不同的音高(键位来区别它们)。
如果你选择前者,只需在Instrument Pool文件夹上单击右键选入New Instrument,然后给新的乐器命名(例如叫Musicboy,呵呵),接着选择乐器中包含的音色,我选Cowbell,最后在Melodic Pool上按右键,选New Melodic Preset,这时出现的对话框很重要。其中Bank Number是音色库号,一般一个音色库的序号都取相同的。Preset Number是音色序号,必需在0~127之间,而且你要确定新建Melodic的Preset Number在此音色库中还未被使用,否则不能生效。Preset Name就是你新建音色的最终名称,起好听点吧(如图十二)。但有些音色我们只用它的几种音高,太低或太高都用不上,这时你可以点中Melodic Pool中的Musicboy(我们刚才新建的音色),用鼠标挪动虚拟键盘下的小条来改变发音的琴键,在小条以外的琴键就都不发音了。
图十二
如果您选择了后者(具体内容见上文),我们可以把ifSplash与其它音色放入同一个序号的音色中,同样是右键点Instrument Pool,选New Instrument,起个名字(嗯,就叫pop soft forever吧。老编,小费!)之后选ifSplash,在已有音色Vocals/FX’s上右击选New Zone(新范围),在弹出的对话框中选择新建的那个Instrument(也就是pop soft forever),完后一定要拖动Vocals/FX’s下所有音色的小条,不能让它们重合(除非你想按一个键出的两种音的合声),这样Vocals/FX’s下就有了两种音色:Vocals/FX和pop soft forever(如图十三)。
图十三
好了,下面该说说调节音色属性的小窗口了(如图十四)。Pitch中Coarse Tune可以以半音为单位粗调音调高低,Fine Tune则是微调。Effects中的调节项常做MIDI的朋友一定不会陌生,这都是常用的MIDI效果:Pan(位置)、Reverb(混响)、Chorus(合声)等等,至于右边的那些调节什么延迟,衰退等等乱七八糟的东东,Musicboy实在是才疏学浅,弄不明白了,哪路神仙如果肯为我指一条光明大道,快来musiXboy的“MIDI爱好者”网站(http://www.midifan.com/)赐教于我,小弟在这里谢过了(本文提到的软件也可在此下载)。
图十四
七、尾声:
唉,终于说完了,我该歇了……(这时只听得外面一阵嘈杂:“GM好!”、“那也没XG好!”、“SoudFont万岁!……”人群一股脑拥进屋中:“Musicboy,你给评评理,GM、XG与SoundFont到底谁厉害?”“这……各位先把刀枪放下,我家离医院可是不近……”要说起GM、XG与SoundFont这哥儿仨(结拜时间已无从考证)真是各有千秋。XG的音色与各种效果没说,SoundFont在MIDI制作时优势明显,而GM的简易性兼容性又没的挑,所以就像问克林顿、盖茨与泰森这仨美国佬谁厉害。答曰:都厉害。不过既然本文是说SoundFont的,那么俺就要老王卖瓜,自卖自夸一下了。如果E-mu能开发出SoundFont3.0,克服SoudFont2.0的缺点,那么它的潜力绝对不可限量,我们等待那一天……
文章出处 大众软件
转载文章请注明出自 Midifan.com