您当前所在的位置:首页 » 中音 » NRPN和RPN

NRPN和RPN

来自:■ 文:金毓镇

为了在规定的120个控制器之外扩展使用更多的控制器,MIDI规定中准备了RPN(Registered Parameter Number注册参数号)和NRPN(Non Registered Parameter Number非注册参数号)两套控制器,它们之间的区别仅在于RPN是MMA协会“官方”定义的,而NRPN可以由厂商们自行定义。使用方法完全相同。
目前定义的RPN参数仅限于00 00H(弯音音域)、00 01H(标准音细调)、00 02H(标准音粗调)、00 05H(调制深度)、7F 7FH(阻止为RPN和NRPN输入控制值)五个。
为了讲清RPN和NRPN的使用方法,首先简单复习一下简单的控制变换(Control Change)命令。
控制变换命令属于通道信息,由3个字节组成,第一个字节为状态码,表明控制变换的属性和目标通道;第二字节由0开头,是控制器编号,因为只有7比特,最多有128个编号;第三个字节也由0开头,是控制器值,最大值127。
当数值超过128的时候需要使用2条控制器命令,一条发最高位,一条发最低位,构成14比特的数值,最大数值可达16384。根据MIDI的规定,0-31和32-64号控制器分别结对,前者发最高位,后者发最低位。
我们再介绍6条控制变换命令:

100号控制器――RPN最高位
101号控制器――RPN最低位
98号控制器――NRPN最高位
99号控制器――NRPN最低位
6号控制器――输入数据最高位
38号控制器――输入数据最低位
下面我们以发送1通道弯音音域12半音命令为例具体说明用法。
弯音音域命令有一点特殊,它的数据值只用最高位,以半音为单位。发送的顺序是:
100号控制器00(RPN最高位)
101号控制器00(RPN最低位)
6号控制器0C(16进制0C等于十进制12,12个半音)
38号控制器00(虽然最低位没有定义,也要发送,否则可能出错)

如果这以后要把弯音音域改为纯五度,只发6号控制器07即可。

没有再次发送100和101号控制器命令之前,6号控制器始终可以改变1通道的弯音音域。
在Cakewalk的事件表中它们看起来是这样的:

Copyright ©2013 Centrmus. All Rights Reserved. Privacy Policy/Your China Privacy 中音公司版权所有,未经允许不得转载,
地址:北京朝阳区建国路88号SOHO现代城D座0712室 电话: 01085801115 传真: 01085801114 邮编:100022