查看原文
其他

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

黄超 Audiokinetic官方 2022-06-07

前言

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

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

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

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

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

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

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

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

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

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

3. 项目组验收、测试。


解决配置问题

在工业化生产中,模块化是一种常用的方法,可以减少很多重复劳动,降低 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 识别的格式)的工具;

输出目标范例

2. TTS 文字转语音工具;

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

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

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

5. 前端播放逻辑。

部署构建机

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

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

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

3. 执行文字转语音 TTS;

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

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

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

改善后的工作流

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

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

可能会遇到的问题

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



本文作者



黄超

心动网络,技术音频。喜爱美食,享受探索新事物的过程和团队协作的乐趣。




更多内容,欢迎关注我们官方B站和新浪微博!





往期推荐



游戏音频存档 | 第 2 部分:案例分析


游戏音频存档 | 第 1 部分:基本情况


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



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存