通过噪音抑制提高语音音频质量

PlayFab Party 支持在玩家之间捕获和传输麦克风音频,以启用实时语音聊天。 背景噪音通常与此麦克风音频一起捕获,并且可能会降低其他玩家听到的该玩家的语音质量。 若要在噪音环境中提高播放器语音音频的质量,可以将 PlayFab Party 配置为动态抑制从玩家麦克风捕获的噪音。

先决条件

本操作实例假设你基本熟悉 PlayFab Party 中的语音聊天

平台支持

噪音抑制并非在所有平台上都可用。 虽然与噪音抑制相关的方法存在于统一的跨平台标头中,但它们目前仅针对 Android 和 iOS 实现。 在其他平台上,这些方法将返回错误。

设备型号限制

PlayFab Party 上的噪音抑制仅在具有高级 SIMD (Neon) 增强 CPU 的 Android 设备上受支持。 在没有此支持的情况下,可以在 Android 设备上启用噪音抑制,但语音音频将传输而不进行任何噪音抑制。

在 iOS 上,所有 iOS 设备都支持噪音抑制。

如何在游戏中启用噪音抑制

在游戏中打包模型

PlayFab Party 上的噪音抑制要求在游戏中打包其他文件。 找到随 Party 库包一起分发的 PartyNoiseSuppressionModel.fpie 文件。 需要执行单独的操作,具体取决于平台。

Android

复制 {game}/src/main/assets/directory 中的 PartyNoiseSuppressionModel.fpie 文件。

iOS

在游戏的资源中包含 PartyNoiseSuppressionModel.fpie。

示例:为本地聊天控件启用噪音抑制

PartyError error = localChatControl->SetVoiceAudioOptions(PartyVoiceAudioOptions::NoiseSuppression);
if (PARTY_FAILED(error))
{
    printf("Failed to enable noise suppression for local chat control 0x%p! error = 0x%08x\n", localChatControl, error);
}

示例:禁用本地聊天控件的噪音抑制

// to disable noise suppression for a local chat control
PartyError error = localChatControl->SetVoiceAudioOptions(PartyVoiceAudioOptions::None);
if (PARTY_FAILED(error))
{
    printf("Failed to disable noise suppression for local chat control 0x%p! error = 0x%08x\n", localChatControl, error);
}

性能注意事项

根据内部测试,在 PlayFab Party 上启用噪音抑制不会显著影响 CPU 性能和电池使用时间。

另请参阅