基础知识:什么是变声?
变声是指实时修改音频,使说话者听起来与众不同。这包括从简单的特效(让你的声音更低沉或更尖锐)到完全的身份转换(听起来像一个完全不同的人)。现代变声器作为桌面应用程序运行,从你的麦克风捕获音频,进行处理,并通过一个虚拟音频设备输出结果,其他应用程序可以将其用作麦克风输入。
第一层:变调
最简单的变声形式。变调会提高或降低你声音的基频。提高音调会让你听起来像花栗鼠;降低音调会让你听起来像巨人。变调几乎是即时的(延迟低于 1 毫秒),并且几乎不占用 CPU,但结果听起来明显不自然,因为它统一改变了所有频率,而没有调整声音的共振(共振峰)。像 Clownfish 这样的产品就使用这种方法。
第二层:DSP 音频特效
更复杂的变声器会同时应用多种音频特效——变调、共振峰移位、混响、失真、均衡等等。共振峰移位是相比原始变调的关键升级:它独立于音高调整声音的共振频率,从而实现更自然的跨性别或角色声音效果。通过将多个 DSP 特效链接在一起,你可以创造出令人信服的角色声音(机器人、外星人、恶魔)。像 Voicemod 和 MorphVOX 这样的产品就使用这种方法。结果听起来比原始变调好,但仍然能听出是处理过的。
第三层:AI 语音转换 (RVC)
最先进的方法是使用神经网络来完全重构你的声音。AI 语音转换(如 RVC——基于检索的语音转换)不会修改你的声音信号。相反,它从你的语音中提取语言内容和音高,完全丢弃你的声音身份,并使用一个训练好的语音模型合成全新的音频。结果听起来很自然,因为 AI 已经从训练数据中学习了目标声音的特征——音色、气息、共振、共振峰结构。Echo Live 使用这种方法。要深入了解 RVC 的四阶段流程,请参阅我们的《什么是 RVC》指南。
音频路由是如何工作的
桌面变声器需要一种方法将其处理过的音频发送到其他应用程序。这是通过虚拟音频线缆完成的——一个在你的系统上创建虚拟麦克风设备的软件驱动程序。在 Windows 上,最常见的选择是 VB-Cable(免费);在 macOS 上,则是 BlackHole。你的物理麦克风输入到变声器应用程序,变声器处理音频,然后输出被路由到虚拟线缆。像 Discord、OBS 或 Zoom 这样的应用程序会将虚拟线缆视为一个正常的麦克风,并使用转换后的音频。一些变声器(如 Voicemod 和 Clownfish)会捆绑自己的虚拟音频驱动程序,而其他一些(如 Echo Live 和 w-okada)则依赖于单独安装的虚拟线缆。
实时处理流程
为了实时使用,变声器处理音频的速度必须比音频到达的速度快。这个流程以离散的区块进行:
- ●音频捕获——变声器通过操作系统的音频 API(Windows 上的 WASAPI,macOS 上的 CoreAudio)从你的麦克风读取原始音频。
- ●缓冲——音频被收集到一个区块中(通常是 128–512 个样本)。区块必须足够长,以便 AI 模型有足够的上下文,但更短的区块意味着更低的延迟。
- ●预处理——在 AI 推理之前,像噪声门和压缩这样的 DSP 特效会清理原始输入。这可以防止神经网络试图将背景噪音转换成语音。
- ●AI 推理——神经网络处理该区块,提取内容特征和音高,然后使用目标语音模型合成输出。这是计算最密集的一步,并且极大地受益于 GPU 加速。
- ●交叉淡入淡出——相邻的处理区块使用交叉淡入淡出算法(如 SOLA)混合在一起,以防止在区块边界处出现可听见的咔嗒声或间隙。
- ●输出——最终的音频被发送到虚拟音频线缆,供其他应用程序使用。
理解延迟
延迟是指从你说话到听到处理后音频的总延迟。在变声器中,延迟的主要来源是区块大小(AI 必须收集完一个完整的区块才能处理语音)、推理时间(GPU 运行神经网络所需的时间)和交叉淡入淡出持续时间(平滑区块边界所需的重叠部分)。额外的延迟来自音频驱动程序缓冲和接收应用程序。通过 GPU 加速和优化的设置,现代 AI 变声器可以实现适合实时对话的总延迟。减小区块大小可以降低延迟,但会增加 GPU 负载——找到合适的平衡点取决于你的硬件。
GPU 加速
AI 变声器从 GPU 加速中获益匪浅。在 GPU 上进行神经网络推理比在 CPU 上快 10-50 倍,这直接转化为更低的延迟和更稳定的音频。大多数变声器通过 CUDA 支持 NVIDIA GPU。一些(包括 Echo Live)也通过 DirectML 支持 AMD 和 Intel GPU。没有独立 GPU 的情况下,变声器可以在 CPU 上运行,但延迟更高,对系统负载更敏感——同时运行游戏可能会导致音频卡顿。