SunVox模板

先介绍一下十六进制数字。今天的计算机中的内存位置与软件,使用了十六进制(hexadecimal:hex)的数字系统,包含了十六种不同的符号,数字0-9,字母A、B、C、D、E、F(或a-f),其中字母表示数字10-15.更多的关于十六进制的细节,你可以访问维基百科条目:

http://en.wikipedia.org/wiki/Hexadecimal

十六进制数字的例子,以及其十进制(dec:decimal)等值:

00 = 0;

01 = 1;

09 = 9;

0A = 10;

0B = 11;

0C = 12;

0D = 13;

0E = 14;

0F = 15;

10 = 16;

11 = 17;

FF = 255

模板

模板是同时演奏音轨(表示SunVox工程(乐谱)上的一些段落)上的一种编组。它被分为水平线(horizontal lines)。演奏(播放)方向从上至下。

SunVox中的任何模板,如下所示:

事件 - 一些音乐事件(诸如迷笛命令类的玩意)。

事件范例:

诚如你看到的额那样,一个事件,包含了几个文本/数字栏(域,fields)。所有模板上的数字,都是以十六进制表示的格式。

事件格式:NN VV MM CCEE XXYY

让我们研究一下事件中每个栏(域)的细节描述。

·NN - 一些特别的命令编码或是音符:

1)SP - 设置音高(Set Pitch)XXYY(快捷键K),在这里,0000 - 最高可能音高,7800 - 最低音高(音符C0);一个半音 = 100(256,十六进制)。

公式:

        从音高XXYY到频率:

分别为:{

        从频率到音高XXYY:

2)<< - 之前音轨(快捷键SHIFT + K),用来给前一轨适用效果,不够接下来的第二个效果并不被允许:2x,40..5F,1D;

3)== - 音符关(快捷键CAPSLOCK或~);

4)C0 - C-0(最低八度中的第一个音符);

5)c0 - C#0;

6)D0 - D-0;

7)d0 - D#0;

8)E0 - E-0;

9)F0 - F-0;

10)f0 - F#0;

11)G0 - G-0;

12)g0 - G#0;

13)A0 - A-0;

14)a0 - A#0;

15)B0 - B-0;

16)C1 - C-1(第一个八度范围内的第一个音符);

17)……

18)B9 - B-9(最高八度范围内的最后一个音符)。

·VV - 力度(00..80);

·MM - 模块号(module number:00,01,02,03.04,05,06,07,08,09,……,FF);

·CC - 控制号(controller number:01,02,03,……,7F)或是迷笛控制器号(80,81,82,……,FF);

·EE - 将给在当前音轨上激活的最后一个音符适用的效果;一些效果(以粗体标记)当XXYY = 0 时可以用在最后一个非零的参数上。

1)01(粗体) - 向上滑动(滑音上portamento up;滑动速度 = XXYY);

2)02(粗体) - 向下滑动(滑音下;滑动速度 = XXYY);

3)03(粗体) - 滑动到音符(滑动速度 = XXYY);

4)04(粗体) - 振音(vibrato,XX - 频率;YY - 振幅);

5)07 - 设置相位(或是采样偏移sample offset)XXYY以百分比(从0000(0%)到8000(100%));

6)08 - 琶音(XX - 第二个音符增加,YY - 第三个音符增加);

7)09 - 设置相位(或是采样偏移)XXYY以采样*256(十进制)

8)0A(粗体) - 上下滑动力度(XX - 向上速度;YY - 向下速度);

9)0F - 设置播放速度(XXYY:0001..001F - 每个线的滴答数;0020..00FF - BPM)或是时间区格(time grids,XXYY:F0001..F020以及F100..F120);

10)11(粗体) - 向上微滑(fineslide up);

11)12(粗体) - 向下微滑(finesolide down);

12)13 - 设置旁通/独奏/静音(BSM(Bypass/Solo/Mute) - XYY)标志,静音的例子:13 0001;独奏的例子:13 0010;

13)14 - 重设旁通/独奏/静音(BSM = XYY)标志;旁通重设的例子:14 0100;

14)19 - 在当前线下载XXYY滴答之后重触发音符;

15)1C - 在当前线中XXYY滴答之后剪切音符;

16)1D - 在当前线中延迟音符起点直到滴答XXYY;

17)1F - 设置BPM(每分钟拍数,Beats percent Minute);

18)20 - 音符可能性(probability);

19)21 - 带随机力度的音符可能性;

20)22 - 给从0000到XXYY之间随机数设置控制器值;

21)23 - 给从XX(00..FF)到YY(00..FF)之间的范围的随机数设置控制器值;

22)24 - 从相同轨的线XXYY处拿取一个音符;

23)25 - 从相同轨的线XX..YY(包含XX/YY,inclusive)范围中拿取一个随机音符;

24)26 - 从相同线的音轨XXYY处拿取一个音符;

25)27 - 从相同线的音轨XX..YY(包含XX/YY)范围中拿取一个随机音符;

26)28 - 从音轨0的线XXYY处拿取一个音符;

27)29 - 从音轨0的线XX..YY(包含XX/YY)的范围拿取一个随机音符;

28)30 - 停止播放歌曲;

29)40...5F - 给线(从40(0%)到5F(96.875%))的选定部分延迟一个事件;

·XXYY - 选定效果/控制器(0000 - 最低;8000 - 最大)的参数。

力度可以动态变化,例如:

在本例中,力度从10到60变化。

改变滤波器的截止频率(总体控制器),从最小到最大值:

“截止频率”控制器在滤波器中有一个数字2。

有些模块有本地控制器(local controllers)。本地控制可以针对特定轨上的特定音符(声音)而改变,与同一个模块的其他声音独立开来。

例子,改变模块1中的控制器2。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 12,311评论 6 13
  • 要书写二进制(十六进制)文件,应该准备好一些工具,比如我自己用的是VC++,因为学习MIDI格式无非是想写它的软件...
    钱鑫_9771阅读 1,604评论 0 2
  • 前言 MIDI 文件是在做音乐应用时,很可能会遇到的一种文件格式。Github上面有相关的类库,可以用来解析MID...
    AlanWong阅读 34,251评论 30 29
  • 《父母规》 1)从此刻起: 我要多鼓励、赞美孩子, 而不是批评、指责、埋怨孩子。 因为我知道只有鼓励和赞美才能...
    襟怀高远阅读 208评论 0 0
  • 这日,天气晴朗,万里无云。 麋鹿的脚步突然停下来了,它面前是一个大大的机器,里面有肉,水,各种零食和饼干。 它突然...
    邬思旅阅读 288评论 0 1

友情链接更多精彩内容