大家好。最近撸了个小插件,可以实现简单的表情映射功能。大部分音源使用键位切换,例如:C1 =延音,C#1 =断音,你可以使用JSFX插件 -- 简易表情映射 来将程序更改(Program Change)消息转换为C1和C#1。
工作原理
这个插件只是简单地将Program Change消息转为音源对应的键位切换的音符。我将128个按键都做了映射,全部填满大概是这样的:
Program Change 0=C-2(0)
Program Change 1=C#-2(1)
Program Change 2=D-2(2)
...中间省略...
Program Change 125=F8(125)
Program Change 126=F#8(126)
Program Change 127=G8(127)
所有按键都匹配了程序更改(Program Change)消息。大家应该有发现规律,PC0=Note 0, PC1=Note1,如果播放经过PC100,那么它就会被转为键位100的音符。相当于你在MIDI键盘上按了一下这个键位100的音符。
如何工作:
预先在MIDI编辑器中插入Program Change 12和Program Change 13。播放时,JSFX会将PC12和PC13转换为音符C1(12)和C#1(13),音色已切换。这其实跟键位切换是一摸一样的,只是信息被放到了CC车道上。
我们平时的键位切换都在按键里面,容易影响到正常演奏的音符的编辑。使用程序更改,将按键切换音符搬到车道,卷帘窗就干净了很多。
而且,它有双重保险,即使哪天不想用了也不会影响你的音乐。你可以随时将程序消息切换回键位切换音符。或者将键位音符切回PC。因为,他们之间的信息是一致的,实现互切完全没问题。
功能讲解
第一种写Program Change的方式【官方提供的插入音色动作】:
首先你需要将车道设置为Program Change。然后使用官方提供的动作:Insert bank/program select event...
可以设置快捷键或者双击车道来启用。选择音色后点击确定,PC信息已插入。
第二种写Program Change的方式【输入音名】:
使用脚本:Script: zaibuyidao_Bank Program Select.lua
对着插件提供的切换键位音符名写,比如CCS界面的C-1, C#-1, D#-1
未选中音符时,在光标位置插入。选中音符时,在音符的起始位置插入。
第三种写Program Change的方式【输入数字】:
依然使用脚本:Script: zaibuyidao_Bank Program Select.lua
可以直接输入切换键位的数字,比如C-1对应12键位,那么你输入12,就相当于写入了C-1的音符。
3种输入方案,结果一致,看需要使用。
这是批量插入PC消息的演示,效率可以很快。完了之后记得删除下重叠或者冗余。
PC和keySwitch按键互切演示,无痛对切。
如果除掉JS插件,使用这个脚本随时可以把键位从CC车道切回到钢琴卷帘窗内。
使用脚本:
Script: zaibuyidao_Program Change To Note (For JSFX-Simple Expression Map).lua(PC转音符)
Script: zaibuyidao_Note To Program Change (For JSFX-Simple Expression Map).lua(音符转PC)
音色表
BANK我使用了3套,第2和第3套是用于按键开关的。音源的触发开关默认使用了力度1的音符为关闭,力度127为开启。
因此,第二套BANK使用1库,第三套BANK使用了127库.
第一套默认0库。
音色表制作很容易,你只要管3个库就行。大部分都会在0库,有开关的按键才用1库和127库。
我用来测试的CSS音源,整理了一下大概是这些内容:
- Bank 0 0 Cinematic Studio Strings
- 12 12-Sustain
- 13 13-Tremolo
- 14 14-MeasuredTrem
- 15 15-Trills
- 16 16-Harmonic
- 17 17-Staccato
- 18 18-Marcato
- 19 19-Pizzicato
- Bank 0 1 Cinematic Studio Strings -off
- 22 22-legato-off
- 23 23-Con sordino-off
- Bank 0 127 Cinematic Studio Strings -on
- 22 22-legato-on
- 23 23-B1 Con sordino-on
复制代码
复制起来,另存为 .reabank 文件,放到REAPER的Data目录下就可以加载了。
音色定义
看一下音色表,很容易理解。注意看 Bank 0 0、0 1、0 127 的信息,这是库的定义,数字后面是库的名称。
在这里我们只要管第一个0后面的数字。默认为0库,如果有开关切换的,关闭(off)放在1库,开启(on)放在127库。
往下是音色列表。每一行的第一个数字是键位。比如:C-2是0键,C-1是12键。键位之后的部分就是音色名称。
结构很简单。当然,音色表不是必须的,没有音色表这个JS插件也能用。
下载
JSFX-简易表情映射插件:Simple Expression Map
PC和键位音符互换脚本:
Script: zaibuyidao_Program Change To Note (For JSFX-Simple Expression Map).lua(PC转音符)
Script: zaibuyidao_Note To Program Change (For JSFX-Simple Expression Map).lua(音符转PC)
插入音色脚本(非必须,可提高输入速度):
Script: zaibuyidao_Bank Program Select.lua
然后,过滤搜索,下载。
上传附件:
本帖最后由 再补一刀 于 20-8-12 01:50 编辑
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x