音频处理指南
本指南涵盖如何设置不同的音频输入方法,以将音频数据馈送到您的唇形同步生成器。请确保在继续之前已完成设置指南。
音频输入处理
您需要设置一种方法来处理音频输入。根据您的音频源,有几种方法可以实现。
- 麦克风 (实时)
- 麦克风 (回放)
- 文本转语音 (本地)
- 文本转语音 (外部 API)
- 来自音频文件/缓冲区
- 流式音频缓冲区
此方法在对着麦克风说话时实时执行唇形同步:
- 标准模型
- 真实感模型
- 支持情绪的真实感模型
- 使用 Runtime Audio Importer 创建一个 Capturable Sound Wave
- 对于使用 Pixel Streaming 的 Linux,请改用 Pixel Streaming Capturable Sound Wave
- 在开始捕获音频之前,绑定到
OnPopulateAudioData委托 - 在绑定的函数中,从您的 Runtime Viseme Generator 调用
ProcessAudioData - 开始从麦克风捕获音频

此方法从麦克风捕获音频,然后使用唇形同步进行回放:
- 标准模型
- 真实感模型
- 支持情绪的真实感模型
- 使用 Runtime Audio Importer 创建一个 Capturable Sound Wave
- 对于使用 Pixel Streaming 的 Linux,请改用 Pixel Streaming Capturable Sound Wave
- 开始从麦克风捕获音频
- 在回放可捕获声波之前,绑定到其
OnGeneratePCMData委托 - 在绑定的函数中,从您的 Runtime Viseme Generator 调用
ProcessAudioData

- 常规
- 流式
此方法使用本地 TTS 从文本合成语音并执行唇形同步:
- 标准模型
- 真实感模型
- 支持情绪的真实感模型
- 使用 Runtime Text To Speech 从文本生成语音
- 使用 Runtime Audio Importer 导入合成的音频
- 在回放导入的声波之前,绑定到其
OnGeneratePCMData委托 - 在绑定的函数中,从您的 Runtime Viseme Generator 调用
ProcessAudioData

此方法使用流式文本转语音合成与实时唇形同步:
- 标准模型
- 真实感模型
- 支持情绪的真实感模型
- 使用 Runtime Text To Speech 从文本生成流式语音
- 使用 Runtime Audio Importer 导入合成的音频
- 在回放流式声波之前,绑定到其
OnGeneratePCMData委托 - 在绑定的函数中,从您的 Runtime Viseme Generator 调用
ProcessAudioData

- 常规
- 流式
此方法使用 Runtime AI Chatbot Integrator 插件从 AI 服务(OpenAI 或 ElevenLabs)生成合成语音并执行唇形同步:
- 标准模型
- 真实感模型
- 支持情绪的真实感模型
- 使用 Runtime AI Chatbot Integrator 通过外部 API(OpenAI、ElevenLabs 等)从文本生成语音
- 使用 Runtime Audio Importer 导入合成的音频数据
- 在回放导入的声波之前,绑定到其
OnGeneratePCMData委托 - 在绑定的函数中,从您的 Runtime Viseme Generator 调用
ProcessAudioData

此方法使用 Runtime AI Chatbot Integrator 插件从 AI 服务(OpenAI 或 ElevenLabs)生成合成流式语音并执行唇形同步:
- 标准模型
- 真实感模型
- 支持情绪的真实感模型
- 使用 Runtime AI Chatbot Integrator 连接到流式 TTS API(如 ElevenLabs Streaming API)
- 使用 Runtime Audio Importer 导入合成的音频数据
- 在回放流式声波之前,绑定到其
OnGeneratePCMData委托 - 在绑定的函数中,从您的 Runtime Viseme Generator 调用
ProcessAudioData

此方法使用预录制的音频文件或音频缓冲区进行唇形同步:
- 标准模型
- 真实感模型
- 支持情绪的真实感模型
- 使用 Runtime Audio Importer 从磁盘或内存导入音频文件
- 在回放导入的声波之前,绑定到其
OnGeneratePCMData委托 - 在绑定的函数中,从您的 Runtime Viseme Generator 调用
ProcessAudioData - 播放导入的声波并观察唇形同步动画

对于从缓冲区流式传输音频数据,您需要:
- 标准模型
- 真实感模型
- 支持情绪的真实感模型
- 来自流式源的浮点 PCM 格式音频数据(浮点样本数组)(或使用 Runtime Audio Importer 以支持更多格式)
- 采样率和声道数
- 随着音频块可用,从您的 Runtime Viseme Generator 调用
ProcessAudioData并传入这些参数

注意: 使用流式音频源时,请确保适当管理音频回放时序,以避免失真回放。有关更多信息,请参阅流式声波文档。
处理性能提示
-
块大小:如果您希望以更小的块处理音频数据以获得更灵敏的唇形同步,请调整
SetNumSamplesPerChunk函数中的计算。例如,将采样率除以 150(约每 6.67 毫秒流式传输一次)而不是 100(每 10 毫秒流式传输一次)将提供更频繁的唇形同步更新。 -
缓冲区管理:支持情绪的模型以 320 样本帧(16kHz 下为 20 毫秒)处理音频。确保您的音频输入时序与此对齐以获得最佳性能。
-
生成器重建:对于真实感模型的可靠操作,在您希望在一段时间不活动后馈送新音频数据时,请重新创建生成器。
后续步骤
设置好音频处理后,您可能希望:















