源自 QQ 群里 (ง •̀_•́)ง
提出的一个有意思的需求,自动添加 fx + 点击 fx 窗口。
- 脚本使用 lua,依赖 js_reascript。
- 脚本只支持 Windows 操作系统。
演示
脚本默认播放秒数、点击位置、添加的具体插件都在脚本里定义,有具体注释。
需求
人工步骤
- 添加 Ozone 9 Match EQ 插件
- 点击插件中
Capture
按钮(Start) - 播放
- 再次点击插件中
Capture
按钮(Stop) - 停止播放
类似需求在无 ARA
的插件,需要“录入”的情景也适用。
思路
- 限定选定轨道和单一 fx
- 若无 fx 则添加
- 添加 fx 后,打开浮动窗口,并操作
- 若有 fx 则打开浮动窗口
- 打开浮动窗口后,进行操作
- 若浮动窗口已打开,则关闭窗口
- 若无 fx 则添加
- 点击按钮使用坐标(x 和 y)
- 坐标为相对坐标,以 fx 浮动窗口为准。即不管浮动窗口打开在那里。
- 坐标为相对坐标,以 fx 浮动窗口为准。即不管浮动窗口打开在那里。
- 播放和停止播放使用 defer(不重要)
遇到的坑
使用 fx chains 预设使用 fx preset 预设
fx chains 和 fx preset 会覆盖 “
Capture
” 过的数据
获取窗口按钮 HWND
第三方插件有的并不能获取,原厂插件都可以
Linux系统获取不了第三方插件的 HWND
js_reascript 并不能在 Linux 系统获取第三方插件按钮的 HWND,Rea 系列原厂插件可以。由于 macOS 跟 Linux 一样也是使用 swell,很可能也不能获取第三方插件按钮的 HWND。(未测试)
最大的坑是起初测试环境在 Linux,并不知道 js_reascript 不能获取非 REAPER 实现 GUI 的HWND(在Linux),在官方论坛求助后,得到 Edgemeal
帮助而得知。
脚本下载
gist 下载:REAPER 使用 reascript 添加 fx + 点击 fx 窗口示范 · GitHub
或
add fx & click.lua (4.2 KB)