Cubase音色表制作(修改)
---------------modified on 2004-07-28---------------
实在对不起大家,这个帖子估计浪费了很多音乐人的宝贵时光。现在整理如下:
对于Cubase/Nuendo音色表,就像众多回帖一样,尽量用Script Maker来做,省时省力,直观方便。在Cubase\Nuendo光盘的Installer Data\Library\Midi Device Patchnames Script Maker下面能找到。虽然这个不是Steinberg的官方方法。我估计大家看了这个以后就没有往后翻,没注意后面的回帖,所以我就干脆把这个加到这里。
不过用那个就有一个提示:写完一个库以后,就要保存一下,然后再换到下一个库。因为如果未保存就换库,非常容易导致刚写好的音色全部丢失。
下面的方法我也不删除,这个是Steinberg官方的方法,比较适合科研工作者使用。
最后,要对所有用notepad写音色表的各位音乐人道歉!
---------------end---------------
Cubase SX本身也能做音色表,但是写好后导出的格式不是一般的Script格式,而且体积巨大,所以Cubase SX建议用NOTEPAD写。
变量:
%n: 数字,从0开始的无符号数字
%L: 组级别,从1开始的无符号数字
%s: 字符串
格式:
>>注释
[comment]%s //可以随意添加,作为注释
>>文件头:这里规定了音色表的开始部分,一定严格要求写。
[cubase parse file] //第一行
[parser version %n] //第二行,%n应该是0001
[creators first name]%s //作者名,随意
[creators last name]%s //作者姓,随意
[device manufacturer]%s //设备制造厂商
[device name]%s //设备名
[script name]%s //在软件中显示的设备名
[script version]%s //版本号。
>>额外设置:对于特定设备的设置,通常的设备不需要,请参阅设备说明书
[bank: do swap value bytes] //交换MSB和LSB,经典Roland风格
[bank: don't swap value bytes] //不交换MSB和LSB
[bank: do send msb first] //先发送MSB
[bank: don't send msb first] //不先发送MSB
[bank: do send only one byte] //只发送第一字节(和[bank: do send msb first]有关)
[bank: don't send only one byte] //不仅仅发送第一字节
[bank: do send as program change] //发库选择为多个音色变换
[bank: don't send as program change] //不发库选择为多个音色变换
>>音色表部分:告诉软件各个音色位置的音色名称
[define patchnames] //开始定义音色的标志
[mode]%s //定义正常模式的最顶级,这个不带%n的是整体设置。
[mode%n]%s //同上,但是用来定义特殊通道,%n代表通道,如[mode 10] XG鼓组
[g%L]%s //定义组:%L级别,取值1 - 9,%s名称。如GM音色的前8个就可以算成1组
[sorted] //指定该组音色按照字母顺序排列
[p%L,%n,%n,%n]%s //定义音色名:%L级别,取值1 - 9;%n音色号,取值0 -127;%n库号MSB,取值0 - 127;%nLSB库号取值1 - 127;%s音色名
[p%L,%n,%n]%s //定义音色名:%L级别,取值1 - 9;%n音色号,取值0 -127;%n库号MSB*128+LSB,取值0 - 16383;%s音色名
[k%n]%s //定义上个音色的键位名,%n键位号,取值0 - 127,%s键位名
>>文件尾
[end] //最后一行
看了肯定糊涂吧……现在来根据XG音色表的一部分来解释:
[cubase parse file] //没什么说的,固定格式
[parser version 0001] //没什么说的,固定格式
[comment] XG Device by Janne Roeper 22.04.99 //注释,就是一个说明性质的
[creators first name]Janne //作者名,随意
[creators last name]Roeper //作者姓,随意
[device manufacturer]YAMAHA //设备制造厂商
[device name]XG Device //设备名
[script name]XG Device //在软件中显示的设备名
[script version]version 1.00 //版本号
[define patchnames] //表示开始定义音色
[mode] XG Voices //定义通常模式,就是XG音色
[g1] Piano //第1组,钢琴
[g2] GrandPno //第1组下的第1小组,大钢琴系列
[p3, 0, 0, 0] GrandPno //第1组下的第1小组的第1个音色,大钢琴,p3表示第3级别的组,3个0依次是音色号、库号MSB、库号LSB
[p3, 0, 0, 1] GrndPnoK //第1组下的第1小组的第2个音色,大钢琴KSP,p3表示第3级别的组,0, 0, 1依次是音色号、库号MSB、库号LSB
[p3, 0, 0, 18] MelloGrP //下同
[p3, 0, 0, 40] PianoStr
[p3, 0, 0, 41] Dream
[g2] BritePno //第1组下的第2小组,明亮钢琴系列
[p3, 1, 0, 0] BritePno //第1组下的第2小组的第1个音色,明亮钢琴
[p3, 1, 0, 1] BritPnoK //第1组下的第2小组的第2个音色,明亮钢琴
[g2] E.Grand
[p3, 2, 0, 0] E.Grand
……
[p3, 7, 0, 65] PierceCl
[g1] Chromatic Percussion //第2组,色彩打击乐
[g2] Celesta //第2组下的第1小组,金属键琴系列
[p3, 8, 0, 0] Celesta //第2组下的第1小组的第1个音色,金属键琴
[g2] Glocken //第2组下的第2小组,钟琴系列
[p3, 9, 0, 0] Glocken //第2组下的第2小组的第1个音色,钟琴
……
[mode 10] XG Drumkits //定义10通道为XG鼓组
[p1, 0, 16128] XG SFX 1 //定义一个音色,XG SFX 1,p1表示第1级,0是音色号,16128是MSB*128+LSB形式的库号
[k 36] Guitar Cutting Noise //定义36号键位的名称
[k 37] Guitar Cutting Noise 2
……
[k 84] Bell Tree
[end] //结束
糊涂的请回帖