开发

设置 Oculus 口型同步以进行原生开发

End-of-Life Notice for Oculus Spatializer Plugin
Oculus 声场定位器插件已被 Meta XR 音频 SDK 取代,现已进入停止服务阶段。除了该插件的 v47,我们将不会为其提供任何进一步的支持。我们强烈建议您不要使用它。请根据您使用的引擎导航至相应的 Meta XR 音频 SDK 文档:
- Unity 原生版 Meta XR 音频 SDK
- Unity 和 FMOD 版 Meta XR 音频 SDK
- Wwise 和 Unity 版 Meta XR 音频 SDK
- Unreal 原生版 Meta XR 音频 SDK
- FMOD 和 Unreal 版 Meta XR 音频 SDK
- Wwise 和 Unreal 版 Meta XR 音频 SDK
此文档将不再更新,并且可能会被删除。
Oculus 口型同步分析来自麦克风输入或音频文件的音频输入流,并预测一组名为 Viseme 的值,即与特定语音相对应的口型和面部表情。Viseme 这个术语在讨论读唇语时使用,是可理解性的基本视觉单位。在电脑动画中,为了让动画人物看起来像在说话,可能会为它们使用 Viseme。
口型同步使用 Viseme 集,根据特定音频输入流修改虚拟形象。每个 Viseme 都针对虚拟形象的一个特定几何形态目标,从而影响该目标在模型上的表达量。我们可以利用口型同步生成与所说或所听内容同步的逼真唇部动作。这可以改善向应用程序填充虚拟形象时所用的视觉提示,无论该形象是用户控制角色还是非玩家角色 (NPC)。
口型同步系统分别映射 15 个 Viseme 目标:sil、PP、FF、TH、DD、kk、CH、SS、nn、RR、aa、E、ih、oh 以及 ou。Viseme 描述说出相应语音时产生的面部表情。例如,Viseme sil 对应沉默/无声的表情,PP 对应 Popcorn(爆米花)的第一个音节,而 FF 对应 Fish(鱼)的第一个音节。各 Viseme 的示意图像,请参阅 Viseme 参考图像
选中的这 15 个 Viseme 可实现最大范围的唇部动作,并且不限语言。更多信息,请参阅 Viseme MPEG-4 标准
口型同步为 Windows 或 MacOS上的原生 C++ 开发提供了一个资源库。

口型同步动画示例

下方动画图像展示了如何使用口型同步说出“Welcome to the Oculus Lipsync demo”。

笑声检测

口型同步 1.30.0 及更高版本支持笑声检测功能,可帮助您为虚拟形象添加更多个性和情感。
下方动画展示笑声检测示例。
下文介绍在 Windows 或 macOS 上使用口型同步库进行原生开发的要求以及下载和设置方法。

要求

要使用口型同步原生资源库,必须在开发工作所用的电脑上安装一个 C/C++ 编译器。例如,您可以使用以下 IDE 之一:
  • Microsoft Visual Studio C++ 2015 或更高版本
  • Xcode 8 或更高版本
  • Android NDK 12b 或更高版本

下载

设置

要为 Visual Studio 或 Xcode 设置口型同步包,请选择以下项之一:
  • 在 Visual Studio 中,访问您的项目属性。在对话框中:
    • C/C++ > 常规下,为其他 Include 目录选择编辑 并提供 Lipsync\Include 目录的路径(在上一步骤的提取目录下)。此路径类似于 [extraction-dir]\LipSync\Native\Include。下图为一个示例:
    • 链接器 > 常规设置的其他资源库目录下,选择编辑并指定 lib 文件夹的路径(该文件夹中包含用于目标平台到库依赖项列表的 OVRLipSyncShim.lib)。例如,要添加 Windows 64 开发的 lib 文件,请添加 [extraction-dir]\LipSync\Native\Lib\Win64
  • 在 Xcode 中:
    • libOVRLipSyncShim.a 添加到将二进制文件链接到资源库,然后将其设置为必需。下图展示了一个示例。
    • 对于搜索路径,将 ../OVRLipSync/Native/package/Include 文件夹添加到头文件搜索路径,并将 ../OVRLipSync/Native/package/Lib/MacOs/ 文件夹添加到资源库搜索路径。下图显示了示例。

主题导览

描述主题
使用 Oculus 口型同步
口型同步示例
原生口型同步开发 API 指南
Viseme 参考图像