WAAPI+TTS—语音临时资源自动构建流程

Wwise 技巧和工具

前言

在大型项目的生产过程中,自动化是很常用的手段。

在一个上百人的团队中,反复沟通、 来回协作,是非常容易出错的。使用自动化流程取代机械化的人为操作,可以大大减少出错的概率,提高生产效率。

在工业化生产流程中,项目组往往会部署几台自动构建机、自动打包机等用于进行一些自动化等操作,配合通知机制,将自动化流程等结果反应在某个页面上,并提示相关人员。这使质量把控及工作流程更高效。

音频的生产也可以使用自动构建来完成一些机械化流程,减少人为操作和沟通:如使用构 建机完成自动打 Soundbank,可以避免多人协作过程中,本地生成 Soundbank 的冲突问题, 降低上传出错的几率。

Wwise 引擎的自动化部分,由于官方提供了 WAAPI(之前介绍 WAAPI 的文章较多,此处不多加赘述),其使开发者能够更方便的自动进行 Wwise 的内部操作, 使用 WAAPI 配合其他工具结合,开发一些自动化工具链,部署在打包机上,可使整个流程更紧凑与高效。

此处介绍利用 WAAPI TTS,实现语音临时资源自动构建的流程。

语音生产中的问题及优化思路

在语音的生产过程中,可能会遇到配置麻烦,迭代频率高的问题,尤其是在配音需求较多的情况下。在没有任何工具支持的情况下,需要策划和音频设计师来回沟通、操作、上传,整个过程重复性高、容易出错,耗时且机械化:

1. 策划上传语音表,告知设计师;

2. 音频设计师在 Wwise 中添加资源,同步到引擎、配置、上传;

3. 项目组验收、测试。

image001

解决配置问题

在工业化生产中,模块化是一种常用的方法,可以减少很多重复劳动,降低 debug 成本, 方便统筹和快速验证,使团队中的每个人专注于自己的工作,提高开发效率。通常且大致的思路是将文字、音频、美术表现及其他功能集成为一个模块进行配置,这样策划在配置文字的时候也就 顺便完成了语音的配置,不需要单独配置语音。其中,Event 名可按照规则拼写,可提前与策划商议。

解决沟通、Wwise 操作、上传等机械化操作问题

说到减少来回沟通,最直接的就是尽可能让机器来完成人为的协作,而语音生产中的协作,恰好是个非常机械化的过程,绝大部分可以用自动化来替代。

此处介绍一种语音自动构建的过程:先根据项目情况,找到机械化的人为协作,并规划好自动化流程,将要执行的过程封装到命令行中,其中涉及到 WAAPI Microsoft TTS 等相关的 API,使用的上传和部署工具为 Perforce Jenkins

开始部署临时语音自动化构建流程

制定规则

1. 确定 Event 名的拼写规则;

2. 确保语音表的表头具有语音名称、语言、音色、语气、内容等相关信息;

3. 分别创建 Audio 层级和 Event 层级的 Workunit,在 Originals 的多语言目录下创建一个 用于存放 AI 生成的 wav 的文件夹;

4. 试听、选择 TTS 提供的音色,或自己训练一种音色模型。

需开发的内容

1. 将语音表转化为 SSML(语音合成标记语言)格式(Microsoft TTS 识别的格式)的工具;

image002输出目标范例

2. TTS 文字转语音工具;

image003(需自行去官网注册并申请 license key

3. 用于自动导入资源、创建 Sound Voice Event WAAPI 工具;

4. p4git 等版本管理工具相关内容、通知机制、流程部署;

5. 前端播放逻辑。

部署构建机

使用一台自动构建机器,需安装 Wwise 环境,将以下流程部署至机器:

1. 比对、列出语音表中增、删、改的内容;

2. 将有变动的部分转化为 SSML

3. 执行文字转语音 TTS

4. 使用 WAAPI Wwise 中指定的 WorkUnit 中创建、更新 Voice SFX,并生成相关 Event,上传至服务器;

5. 在相关目录下生成 Soundbank 等游戏引擎使用的资源,上传到服务器;

image004

当服务器检测到策划上传语音表,则自动执行以上流程。

改善后的工作流

1. 日常生产中,只需策划配表、上传、等待自动化流程、拉新,即可听到临时语音

2. 语音测试、debug 可以和发包同步进行


image005

可能会遇到的问题

整个自动话过程会有些耗时,如果语音量很大,可能会占用构建机资源,可在特定的时间(如夜间)进行。构建机资源丰富的情况下,可以策划以上传语音表进行。

黄超

技术音频

心动网络

黄超

技术音频

心动网络

喜爱美食,享受探索新事物的过程和团队协作的乐趣。

评论

留下回复

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

更多文章

Wwise Unreal 音频整合指南

在此跟大家介绍一下由我们在 Game Audio Resource 的朋友制作的 Wwise 2019.1.4 Unreal 4 音频整合指南。...

10.9.2020 - 作者:Game Audio Resource

Wwise语音管理探究

游戏的角色语音管理是一项细致且繁琐的工作。从项目的前期到后期,会遇到对角色语音的增删改查、添加动态效果处理及创建不同语种间的切换等需求。建立一套稳定可靠的语音管理流程会为工作带来效率。...

2.3.2021 - 作者:吉吉(徐喆)

Wwise 2021.1 中值得一试的 10 项新增功能

在不久前,我们推出了 Wwise 2021.1 以供通过 Launcher 下载。该版本增添了基于对象的管线、Radial Emitter、Impacter 插件、WAQL...

3.8.2021 - 作者:麦斯·麦雷蒂·桑德鲁普 (Mads Maretty Sønderup)

Wwise+GME游戏语音方案:解锁更多语音玩法,让玩家“声临其境”

导语:...

4.11.2021 - 作者:腾讯云

快速了解如何结合使用 Wwise Authoring API (WAAPI) 和 Max 8

简介 在 Wwise 中构建较为复杂的由 RTPC 驱动的 Event 时,我们经常会面临无法快速加以测试和验证的困境。我们无法保证能够使用鼠标一次性控制一个以上的参数,并且在将参数映射到 MIDI...

13.6.2023 - 作者:迈克尔•哈通 (Michael Hartung)

WAQL 2.0

自 Wwise Authoring Query Language (WAQL) 的第一个版本发布以来已经有几年了。在此之后,几乎没什么改动。最大的改动就是把 WAQL 集成到了 Wwise...

10.8.2023 - 作者:伯纳德 罗德里格 (Bernard Rodrigue)

更多文章

Wwise Unreal 音频整合指南

在此跟大家介绍一下由我们在 Game Audio Resource 的朋友制作的 Wwise 2019.1.4 Unreal 4 音频整合指南。...

Wwise语音管理探究

游戏的角色语音管理是一项细致且繁琐的工作。从项目的前期到后期,会遇到对角色语音的增删改查、添加动态效果处理及创建不同语种间的切换等需求。建立一套稳定可靠的语音管理流程会为工作带来效率。...

Wwise 2021.1 中值得一试的 10 项新增功能

在不久前,我们推出了 Wwise 2021.1 以供通过 Launcher 下载。该版本增添了基于对象的管线、Radial Emitter、Impacter 插件、WAQL...