录音/制作/创作 吉他 扩声技术 视频技术 作品展示 生活 信息 更多... | 音频应用专卖店
REAPER

JSFX插件 - 简易表情映射

( 38 )
 
[收藏]
-  第 1 页  -

800
#1 20-8-5 01:45

JSFX插件 - 简易表情映射

大家好。最近撸了个小插件,可以实现简单的表情映射功能。大部分音源使用键位切换,例如: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音源,整理了一下大概是这些内容:

  1. Bank 0 0 Cinematic Studio Strings
  2. 12 12-Sustain
  3. 13 13-Tremolo
  4. 14 14-MeasuredTrem
  5. 15 15-Trills
  6. 16 16-Harmonic
  7. 17 17-Staccato
  8. 18 18-Marcato
  9. 19 19-Pizzicato

  10. Bank 0 1 Cinematic Studio Strings -off
  11. 22 22-legato-off
  12. 23 23-Con sordino-off

  13. Bank 0 127 Cinematic Studio Strings -on
  14. 22 22-legato-on
  15. 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


统一下载位置:
添加我的 Reapack 仓库:
https://github.com/zaibuyidao/ReaScripts/raw/master/index.xml

然后,过滤搜索,下载。


上传附件:
本帖最后由 再补一刀 于 20-8-12 01:50 编辑

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

1411
#2 20-8-5 01:57
吼吼吼吼!!!!多谢刀兄!!!

2329
#3 20-8-5 06:17
很厉害, 能不能再写一个audio控制midi的jsfx

功能为, reaper选择外部单声道输入, 打开waves gtr或th-u, 选择wah wah, midi键盘也已经打开了并且插入了表情踏板, 可是输入选的是外部的真电吉他, 这里要用外部真电吉他弹奏声音, 用midi表情踏板控制哇音.

2583
#4 20-8-5 08:33
大香震 发表于 20-8-5 06:17
很厉害, 能不能再写一个audio控制midi的jsfx

功能为, reaper选择外部单声道输入, 打开waves gtr或th-u,  ...

这个使用learn就可以实现吧

1581
#5 20-8-5 10:55
感谢分享!

54
#6 20-8-5 11:36
很强,但其实更希望REAPER官方给一个类似cubase技巧切换的功能。

711
#7 20-8-5 15:15
为什么添加时总是出现 Couldn't resolve host name (6) 的错误?
补充:
网搜了一下,原因是GitHub的raw.githubusercontent.com域名解析因为某些你懂的原因给临时污染了,解决办法是修改host文件,添加以下内容保存即可:

199.232.4.133 raw.githubusercontent.com

分享给遇到同样问题的朋友。

本帖最后由 MusMonkey 于 20-8-5 19:06 编辑

2329
#8 20-8-5 16:08
黄黄 发表于 20-8-5 08:33
这个使用learn就可以实现吧

输入选择MIDI键盘, 很容易learn实现

输入选择音频, 就不容易

2583
#9 20-8-5 16:32
大香震 发表于 20-8-5 16:08
输入选择MIDI键盘, 很容易learn实现

输入选择音频, 就不容易

在软件界面有learn图标,或右键,然后动一下midi的expression踏板就行了

60
#10 20-8-5 18:05
下载不了啊

2329
#11 20-8-5 18:12
黄黄 发表于 20-8-5 16:32
在软件界面有learn图标,或右键,然后动一下midi的expression踏板就行了

选择midi键盘输入, 可以

选择音频输入(电吉他), 不行

但是直接打开gtr.exe, 是可以的, 但不能录音
本帖最后由 大香震 于 20-8-5 18:13 编辑

2583
#12 20-8-5 22:02
大香震 发表于 20-8-5 18:12
选择midi键盘输入, 可以

选择音频输入(电吉他), 不行

我做肯定是做过的,我以前做了一首歌,就是可能是另一个,要么是guitarrig,我在控制器里画的,learn完,细细的画的,但是也挺麻烦,后来就没做过了,

60
#13 20-8-8 15:04
功能不大完善啊!转换的时候不完善啊!力度信息会丢失,

800
#14 20-8-8 23:01
Doyoulikeoreo 发表于 20-8-8 15:04
功能不大完善啊!转换的时候不完善啊!力度信息会丢失,

你要通过reapack更新脚本,新版已解决了问题。

表情映射的音符力度共用到3种,它们是约定好的:力度1是关闭,力度127是开启。大于1并且小于127力度的为正常触发乐器。

另外,转换只遵循一个原则,力度1对应1库,力度127对应127库,力度大于1并且小于127的为0库。

0库转为音符会生成默认力度96的音符,1库转为音符会生成力度1的音符(关),127库转为音符会生成力度127的音符(开)。

切换原理就这么简单。

555
#15 20-8-9 20:35
好贴
您需要登录后才可以回帖 登录 | 注册

本版积分规则

搜索