四 OT756仿真攻略——MIDI篇·续

前面我介绍过了OT756的VST插件 。事实上,存在一种十分便捷的方法,把你的计算机变成一个OT756的MIDI合成器 。也就是说,计算机上所有的MIDI都能通过那个VST插件播放出来,无论你用的软件是cakewalk、windows mediaplayer还是psmplayer 。这样一来就可以很方便地在电脑上用你喜欢的软件试听和修改MIDI,无需把它们传送到手机上 。如此的便利并不是其它品牌手机都具有的哦~~听起来是不是很有趣呢?其实寻找这种方法的初衷是因为我想用cakewalk的sonar来编辑MIDI,但sonar只支持DXi格式的插件,不支持VSTi 。虽然有转换工具,但是似乎很不完善,几乎不能正常使用 。后来就转而寻找能把vst插件变成系统的MIDI输出设备的程序,最后还是没有找到,倒是在一个叫SynthFont的程序里面得到了提示,找到了一种新的方法 。
这种方法需要两类软件 。第一类是一种叫做“虚拟MIDI电缆”的东西;第二类是支持将系统的MIDI输入口作为信号源的VST Host(VST宿主) 。其实两种东西都好找,选择也挺多的,有商业软件也有免费软件 。“虚拟MIDI电缆”这种东西可以在计算机内部“虚拟”出一条或多条MIDI电缆 。这些“电缆”是看不见的,它们只会让你看到你的MIDI设备列表那里增加的一大堆输入输出端口 。利用这些虚拟的电缆可以将应用程序的MIDI输入输出连接起来,比如将播放软件的MIDI输出设置为虚拟电缆的输入端,然后将虚拟电缆的输出端设置为VST Host的输入端,这样MIDI就能通过VST Host播放出来了 。这就是这种解决方案的基本原理 。可用以下图片进行表示:
目前网上可以找到若干款虚拟电缆,它们基本上是免费的 。我分别测试了Maple Virtual Midi Cable, Sonic Foundry Virtual MIDI Router, Loopbe1和MIDI Yoke,觉得这些软件各有优缺点,很遗憾,没有一款是比较完美的 。MIDI Yoke的兼容性总体而言不错,在我的Windows XP下工作十分正常,不过在一台Windows 2003下就出现了MIDI数据丢失的现象(似乎在XP下也偶尔会出现-_-) 。而Sonic的那款虽然不支持feedback检测,但是在2003下却能正常工作 。顺便提一下,所谓feedback,是指这样的一种现象:一些同时支持MIDI in和MIDI out的程序,比如大部分的MIDI编辑程序,如果将其MIDI输入和输出设备都设为同一条虚拟通道,相当于把通道的输入端和输出端接在了一起,那么就会在这条通道上产生“回啸” 。由于数据不断在通道上不断循环增加,最终将榨干系统的最好一点资源——我在那台2003上试过一次,结果把系统搞得半死,所以除非想不开否则千万别试图在你的程序中将MIDI输入和输出设备都设为同一组虚拟通道 。
总之,我的建议是在Windows NT/2k/xp等系统下,可以先尝试MIDI Yoke 。通过它来播放几首MIDI,听听是不是跟手机上的播放效果一样,如果差别比较明显,那就换其它的试试 。注意,本文的讲解都将以MIDI Yoke为例 。如果是98/ME,虽然MIDI Yoke也有对应的版本,不过网上一般都是推荐使用Hubi’s MIDI LoopBack device 。我没尝试过,哪位同学有兴趣的可以试试当小白鼠……
至于支持MIDI IN的VST Host,网上就多如牛毛,简直跟夏天宿舍里打不完的蚊子同一个数量级了 。但是我们不需要太多稀奇古怪的花俏功能,我们只需要一个功能越简单越好最好简单得很石器时代的VST Host 。老天爷没有抛弃俺,终于让俺找到了一个叫SAVIHost的 。SAVIHost长得小巧可爱,该有的功能都有了,而且能在98和ME下跑,我使用至今,虽然有一些恼人的小BUG,但还算感觉良好 。
【四 OT756仿真攻略——MIDI篇·续】OK,主角都登场了,现在介绍一下怎么将这一锅乱七八糟的东西搅在一起 。

推荐阅读