连通 Wwise 和 REAPER – 第 2 部分:ReaOpen

音频编程 / 声音设计

ReaOpen 是一款免费的小程序,方便快速选择音频文件并打开其原始 REAPER 工程。它能在 Windows Mac 上运行,并可集成到 WwiseExplorer/Finder REAPER 中。在上篇博文中,我们探讨了如何使用 WAAPI Transfer 将素材从 REAPER 导出到 Wwise。在这篇博文中,我们来说说反过来怎么操作。


1-1

ReaOpen 的功能基本上就跟 Game Audio Connect 插件附带的 Open in Nuendo 命令一样。这款程序的内核是 Open project from clipboard 脚本的修改版本。该脚本由 Jeremy Roggers 开发(如有兴趣,可访问 JerContact)。可能有些读者对 Jeremy 的工作成果并不熟悉。他对 ProTools 过渡到 REAPER 有独到的见解,建议各位详细地了解一下。不过他的脚本有个问题,就是使用起来不太方便。为此,在征得他的同意之后,我进行了一些调整并创建了这款小程序,以此作为对 WAAPI Transfer 插件所含 Project Recall 功能的替代和改进。讲明了这些,下面我们就来详细地说说。

要求:

功能:
  • 直接从 Wwise 打开文件的原始 REAPER 工程
  • 即便 REAPER 处于关闭状态也照常工作
  • 聚焦原始文件的时间线位置
  • 支持 region item
  • 免费

限制:
  • 不支持在 OSX 上创建自定义 Wwise 命令
  • 加载时间有待缩短
  • 存在小漏洞
  • 仅适用于 WAV 文件
  • 在打开多个 REAPER 实例时会出现问题

 

工作原理

在从 REAPER 导出 WAV 文件及所含元数据后,便可使用 ReaOpen 执行相应的操作:在 Wwise 中选中某个特定文件,然后使用 ReaOpen 将其打开。该程序会将音频文件的相关信息复制到剪贴板,然后运行专用 rpp 工程文件。这个工程非常简单,几乎是空白的。它唯一的作用就是运行 Lua 脚本并自行关闭。之后该脚本会从剪贴板读取数据,并通过检查元数据来确定要打开哪个工程。接着加载工程并使用以下两项参数来搜索原始文件:时间线位置和名称。若其中一项参数无效,则脚本仍会尝试查找文件;若两项参数均无效,则会显示错误消息。

注意:也就是说,在导出文件后仍可对工程进行一些更改。比如,移动重命名素材。不过这两项操作无法一并执行,至少对同一条目来说不可以。这一点要特别注意。

 

安装

注意:在撰写本文时,最新版本为 1.72。

注意:也可选择直接从 Github 下载 ReaOpen 并进行安装,但我发现使用 ReaPack 更为便捷,尤其是考虑到将来还会更新。

前面的安装步骤对 PC MAC 用户来说是一样的。

2

  • 按下OK
  • 依次转到 Extensions->ReaPack->Browse Packages…
  • 在筛选器文本框中搜索
    • 注意:若双击 ReaOpen 行,应会显示信息文本。将来每次实施一些重要的安装/用法改进,我都会更新此文本,所以最好仔细看下。
  • 右键单击 ReaOpen 列表条目,然后选择 Install v1.XX

3

  • 选择 Apply,然后单击 OK
  • 打开 Actions 窗口,然后搜索 ReaOpen
  • 运行 ReaOpen - Init Setup.lua 操作,并在弹出消息框时单击 OK
对于 PC 用户,安装操作到这就算结束了。

MAC 用户需额外执行以下步骤

  • 要想在 OSX 上运行 ReaOpen,必须允许系统运行来自不明开发商的应用程序。为此,可依次转到 System Preferences->Security & Privacy
  • 通过单击锁形图标来解锁设置
  • Allow apps downloaded from 分区中选中 Anywhere
  • 在必要时输入用户名和密码并确认
  • 在弹出的对话框中单击 Allow From Anywhere

4

  •  锁定设置
  •  返回 REAPER
  • 再次打开 Actions 窗口,然后运行 ReaOpen - Open script directory.lua
  • 提取 ReaOpen MAC.zip 文件(确保将 zip 文件解压到同一文件夹中)

5

 


PC 和 MAC 上的文件夹应如下图所示:

6 7

注意:我承认该安装操作会产生一些冗余文件。如有必要,可在 PC 上删除 MAC.zip 文件,或者在 MAC 上删除 exe 和 bat 文件。不过,下次更新时可能还会下载这些文件。在未来版本中,我会考虑在 ReaPack 上把 PC 和 MAC 数据包分开。不过,目前只能按照现在这样操作。

注意:若无法正常运行 ReaOpen MAC,请尝试使用其他解压程序提取 zip 文件。对有些人来说,这种方案好像可以。

注意,唯一要手动操作的其实只有 ReaOpen.exe/ReaOpen MAC.app 文件。对于 Lua 脚本和 RPP 工程文件,系统会自动进行处理。

 

REAPER 中命名素材

命名是很重要的,尤其是在游戏开发中。 因此,音频文件也是如此。 因为ReaOpen支持itemsregions,所以您可以使用任何喜欢的命名方式。但是必须使用$ item$ region渲染通配符才能使ReaOpen正常工作。

警告:避免在item或region名称中输入不会呈现到文件名的字符(如逗号,冒号,分号等标点符号)。

警告:请勿在REAPER项目文件名中放置“ RPP”或“ rpp”。 我相信您不会这么做,因为这会导致ReaOpen脚本的读取问题。

 

REAPER中的渲染设置

ReaOpen 会读取 WAV 文件中写入的专用元数据。然后使用所谓的 bext 块来存储各种重要信息,如时间线位置和工程路径。所有这些数据都会随音频一起直接写入到 WAV 文件中。不过,前提是必须在 REAPER 的渲染设置中启用相应选项。我的建议是在创建工程的同时设置此选项,也就是在工程还是空白的时候。

为此,请执行以下步骤:

  • 创建新的工程
  • 依次转到 File->Render…
  • 对于 Source,选择 Region render matrixSelected media items
  • 对于 File name,根据 Source 选项键入 $region$item
    • 警告:若键入其他内容,则 ReaOpen 功能会受限。
  • 对于 Output format,选择 WAV
  • 选中 Write BFW ('bext') chunk
  • 选中 Include project filename in BWF data
    • 警告:若在外部编辑器中编辑并重新保存 WAV 文件,则可能会删除所有 BWF 元数据。
  • 单击 Save changes and close
    • 注意:依据 Source 选项确保至少选中一个 region 或 item,否则将无法保存设置。我都是创建一个临时的 region 或 item,并在保存设置之后将其删除。

8

最终保存设置后,建议您创建一个模板并将其用作默认的空项目。 这样,您只需要设置一次即可。 如果您是个聪明人,并且已经有了自定义模板,则应该使用这些设置来修改它们并重新保存它们。

注意:ReaOpen不能与未写入项目元数据的文件一起使用,因此您的工作是确保每个文件都带有bext块导出。

 

REAPER中的Project Settings

另外还可在 REAPER 中直接记录的所有文件中包含相同的元数据。这样的话稍后便可直接从原始音频文件加载原始录音工程。

在这种情况下,请务必选择 Save as default project settings。

9

Wwise 设置

即便安装了 ReaOpen 并配置了 REAPER 的渲染和工程设置,我们仍需告知 Wwise 如何进行使用。接下来我会针对 PC MAC 分别加以说明。

PC

  • 打开 REAPER
  • 转到Actions 并运行 ReaOpen - Open script directory.lua.
  • 在显示窗口时,记住或复制文件夹路径
10
  • 打开 Wwise
  • 依次转到 Project->User Preferences
  • External Editors 分区中单击 Add...
  • 转到 ReaOpen 所在位置,或者在文件名输入框中粘贴路径并按下 Enter
  • 选中 ReaOpen.exe,然后单击 Open
  • 若要使用快捷方式 CTRL+E,请将 ReaOpen 设为默认外部编辑器
  • 确保将 Start Mode 设为 Single Process

11

MAC

  • 打开 REAPER
  • 转到 Actions 并运行 ReaOpen - Open script directory.lua
  • 在显示窗口时,为 ReaOpen MAC 创建别名文件

12

  • 将别名文件移到桌面

13

  • 打开 WWISE
  • 依次转到 Project->User Preferences
  • External Editors 分区中单击 Add...
  • 转到桌面并选中 ReaOpen MAC alias 文件

14

  • 单击 Open
    • 注意:因为在 OSX 上 Wwise 可与 WINE 结合使用,所以 Path 字段中会显示虚拟地址。
  • 若要使用快捷方式 CTRL+E,请将 ReaOpen 设为默认外部编辑器
  • 确保将 Start Mode 设为 Single Process

 

使用

在完成上述操作之后,便可在 Wwise 中使用 ReaOpen 了。流程对 PC MAC 来说完全相同:

  • 在工程中选中一个音频对象
  • 运行快捷方式 (CTRL+E) 或从上下文菜单中选择对应选项
16
  • REAPER 尚未打开,则会自动加载
  • 这时会显示专用 LOADING 工程

17

  • 在对话框询问是否保存 LOADING 工程时,单击 NO
  • 在此之后,会找到原始素材并将其聚焦在时间线中

注意:另外还可通过容器对象(如 Blend Container 或 Random Container)启动 ReaOpen。在这种情况下,ReaOpen 会打开第一个子音频文件。

所有这些对象都可选中并使用 ReaOpen 打开

18

警告:在 MAC 上,如果将打开的 REAPER 最小化,ReaOpen 会无法对其进行聚焦。若希望 ReaOpen 自动聚焦 REAPER,请不要将窗口最小化。

19

您可以从Source Editor中打开ReaOpen

20

成功用ReaOpen打开并聚焦region

21

成功用ReaOpen打开并聚焦item

自定义 Wwise 命令 (PC)

Wwise 2018.1.3 及更高版本支持创建自定义命令。这项功能非常强大,可帮助加快工作流程。我已经创建了一个 ReaOpen in REAPER 自定义命令,这样各位就不用改写当前所用外部编辑器了。遗憾的是,我只成功为 PC 创建了此命令。MAC 上的 WINE 仍有一些问题。希望哪位高人能帮忙解决一下。目前,只有 PC 上可以创建自定义 Wwise 命令。具体步骤如下:

  • 打开 REAPER
  • 转到 Actions 窗口
  • 运行 ReaOpen - Open script directory.lua
  • 在显示文件夹时,运行 install_wwise_command_for_pc.bat
  • 打开或重新启动 Wwise

这时右键单击对象应会显示 ReaOpen in REAPER 选项。

22

Edit 菜单中也会显示新的条目。

23

当然,前提是对象包含 REAPER 中生成和导出的音频文件及 bext 工程元数据。另外,也可使用 ALT+R 快捷方式打开 ReaOpen,并使用 CTRL+E 来在自己喜欢的外部编辑器中进行编辑。

 

Explorer 设置

Wwise不是唯一可以使用ReaOpen的地方。 您可以在Windows Explorer中修改右键单击菜单,以允许您获取ReaOpen WAV文件。 这样,您可以浏览文件夹中的声音,并且无论何时决定打开原始项目,都可以立即执行,但是首先,需要启用此功能。

  • 打开 REAPER
  • 转到 Actions 窗口并运行 ReaOpen - Open script directory.lua
  • 在打开目录时,复制 ReaOpen.exe 文件
  • 按下 WIN+R 来打开 Run 程序
  • 在文本框中键入 shell:sendto 并按下 Enter

24

  • 在显示窗口时,右键单击空白区域
  • 选择 Paste shortcut
  • 将新建的快捷方式重命名为 _ReaOpen(这样会将其显示在列表顶部)

25

如果一切顺利,Windows Explorer 内的 Send to 菜单中应会显示新的选项。

26

Finder 设置

MAC 用户同样可在 Wwise 外部浏览文件并使用 ReaOpen 打开 WAV 文件的原始工程。不过很遗憾,我不太清楚如何在 MAC 上将 ReaOpen 添加到上下文菜单。当然,我们可以设法更改用于打开 WAV 文件的默认程序。比如,改为由 ReaOpen 来执行该操作。但是,要考虑清楚是否确定要将其设为默认 WAV 编辑器。我觉得这一点应该是有办法实现的。如果有人知道,还请不吝赐教。

目前,对我来说最简单的解决方法就是把 ReaOpen MAC 拖到快速启动栏。这样便可直接将所需音频文件拖到 ReaOpen,以此加载对应的 REAPER 工程。

27

P 代表 Project

在操作当中,最好能妥善管理文件和文件夹。遗憾的是有时很难做到这一点,尤其是在处理多个工程的时候。有可能不知不觉就乱起来了。到最后不得不重新整理硬盘。这时要移动、重命名、删除很多东西。

有可能好不容易整理好了工作区,最后却发现 ReaOpen 没法用了,因为 WAV 文件中的元数据路径失效了。在 Windows 上,可使用 subst 功能来避免发生这种情况(我不清楚 MAC 上有没有类似功能)。

总之,我们可以使用 subst 命令来将选定文件夹映射到某个虚拟盘。我发现选用字符 P 会比较方便。因为很少用到,而且比较好记(当前处理的工程存放在 P 分区)。若确定使用 subst 命令,则可执行以下操作:

  • 将工程移到其他物理位置
  • 重装系统并更改盘符
  • 根据需要随时签出(如针对音频工程使用版本控制系统)

这样便不必担心在使用 ReaOpen 打开音频文件时出现问题,因为随时都可将工程重新映射到 P: 虚拟盘。

为了说明这一点,我们来假设工程位于以下位置:D:\Audio\Projects\MyGame\MyGame.rpp。在完成声音设计后,要将素材及所含元数据导出到 Wwise。这时若将原始工程移到 E:\SoundDesign\MyGame\MyGame.rpp,会无法正常使用 ReaOpen 执行相应的操作,因为 WAV 文件中的元数据仍在引用原有的工程路径。倘若通过在 Command Prompt 中键入 subst P:D:\Audio\Projects\MyGame 来创建虚拟盘,工程将被存放在 P:\MyGame.rpp。记住,一定要从该虚拟位置打开它。这样元数据会同时指向虚拟盘路径。如此便可移动工程,然后重新映射虚拟盘。

另外还可创建 .bat 文件,以便安装和卸载所创建的虚拟盘。这样就可快速切换活跃的工程。文件示例如下:

 

28 29

 

ReaOpen in REAPER

另外,REAPER 还设有外部编辑器设置选项。若将 ReaOpen 设为外部编辑器,便可直接使用其来加载原始 rpp 工程。这样操作起来就方便多了。要想进行所述设置,请执行以下步骤:

30

  • 打开 REAPER
  • 依次转到 Options->Preferences
  • 选中 External Editors section
  • 单击 Add 按钮
  • Primary Editor 字段中单击 Browse...
  • 转到 ReaOpen.exe 文件
  • 单击 OK

注意:ALT+双击媒体项是在外部编辑器中打开文件的默认鼠标修改方式。

那么,到底为什么要这样做呢?为了解释清楚这一点,我们先来说说子工程。利用 REAPER 中的子工程,我们可以把其他工程导入到时间线中,并将其渲染为音频文件。这样就可随时打开子工程,并添加、移除或调节里面的内容。在完成之后,可以进行保存。REAPER 会自动更新主工程中的所有子工程文件。这样非常方便一次性快速更改多个重复文件的源。

倘若不想丢失已经渲染过的文件,该怎么办呢?这时就要用到 ReaOpen in REAPER 了。这一工作流程对声音设计师及作曲家来说可能会很有帮助,因为它特别适合非破坏性迭代。

下面我们来看个例子。比方说自己创建了一个撞击声,并将其导入到了时间线中。然后试听了一下,发现生成的混响尾音不是很理想。这时可在 ReaOpen 中直接双击该条目,以此加载原始工程。在此,可调节混音并渲染另一版本的原始撞击声,确保不会破坏已经创建的声音。

作曲家也可执行类似的操作,比如更改循环、乐句和持续低音的曲速或曲调。

 

概要

下面来看看我们都学到了什么。结合 WAAPI Transfer,我们可以使用 ReaOpen Wwise REAPER 之间进行双向通信。藉此,直接从 DAW 将多个声音导出到 Wwise 工程。然后使用 ReaOpen 重新加载原始工程,并再次调节声音。不仅如此,还可使用 Windows Explorer MAC Finder 浏览音效,并在 Wwise 外部加载 rpp 文件。最后使用 ReaOpen in REAPER 来迭代和修改音效或音乐循环和织体。当然,所有这些都要进行一定的设置,但实际使用起来其实非常便捷。最重要的是,倘若已经安装 REAPER Wwise,这些功能全都可以免费使用。

我希望所有功能都能完美地实现,不过根据这些年在游戏开发当中的工作经验,其实在别人开始使用之前谁也不知道自己构建的东西到底怎么样。为此,我衷心地邀请各位试用 ReaOpen。倘若有任何问题、意见或建议,尽可与我取得联系。如果大家觉得这篇博文的文字和说明不够直观,在不久的将来我准备做个视频教程,来介绍如何安装和使用 ReaOpen。我希望能将这款工具提供给所有需要的人,任何形式的帮助或反馈对我来说都是非常宝贵的。

最后,我必须再次提到 JerContact。因为如果没有他最初的工作,这一切都不会成为可能。所以我想借此机会向他表示感谢,多谢他那么大方,允许我对脚本进行修改。

尼古拉·卢基奇 (Nikola Lukić)

技术音频设计师

Mad Head Games

尼古拉·卢基奇 (Nikola Lukić)

技术音频设计师

Mad Head Games

尼古拉·卢基奇 (Nikola Lukić) 目前在 Mad Head Games 担任技术音频设计师。他虽然拥有声音设计硕士学位,但最初涉足游戏开发时做的却是游戏程序员。在做了一年的编程工作之后,他转到了公司的音频部门。经过对 REAPER 以及编程语言(如 Python 和 Lua)的一番摸索,他很快便开始构建工具和流程,来设法提升部门的工作效率。现在,他希望能将自己的经验和想法分享给所有人。

lkctools.com/

 @lkctools

评论

留下回复

您的电子邮件地址将不会被公布。

更多文章

简化 Wwise 音频插件构建管线

就音频插件开发来说,Wwise 与数字音频工作站 (DAW) 有很大的不同。Wwise...

23.3.2020 - 作者:乔尔·罗比哈德(Joel Robichard)

使用Wwise+Unity+Intel Realsense实现人体动作与音频的互动

大家好,今天我为大家介绍的是利用Wwise、Unity和3D深度相机——Intel...

20.4.2020 - 作者:朱墨丹青

游戏音乐不应仅仅局限于音乐本身 – 第 2 部分

什么是游戏音乐?什么是互动音乐?这些问题的答案并不像看起来那么简单。对此,奥利维尔·德里维耶 (Olivier Derivière)...

20.4.2021 - 作者:奥利维尔·德里维耶 (OLIVIER DERIVIÈRE)

赛博朋克世界的声景塑造 — 以游戏《底特律:成为人类》为例 (第一部分)

30.8.2021 - 作者:赵茉茉

Tell Me Why | 音频日志 – 第 4 部分:混音和母带制作

《Tell Me Why》已在 Xbox 和 PC 上发布,并且完全支持 5.1...

29.6.2022 - 作者:马休•菲奥伦蒂尼 (Mathieu Fiorentini)

加快 Strata 工作流程 | 第 2 部分 – Open Associated REAPER Project

简介 作为使用 REAPER 和 Wwise 的声音设计师,在 Wwise 中操作时经常会遇到想在 REAPER 中重新渲染声音的情形。为此,通常要手动查找源 REAPER...

26.7.2023 - 作者:Audiokinetic (音频动能)

更多文章

简化 Wwise 音频插件构建管线

就音频插件开发来说,Wwise 与数字音频工作站 (DAW) 有很大的不同。Wwise...

使用Wwise+Unity+Intel Realsense实现人体动作与音频的互动

大家好,今天我为大家介绍的是利用Wwise、Unity和3D深度相机——Intel...

游戏音乐不应仅仅局限于音乐本身 – 第 2 部分

什么是游戏音乐?什么是互动音乐?这些问题的答案并不像看起来那么简单。对此,奥利维尔·德里维耶 (Olivier Derivière)...