前言 最近在折腾 OddTTS 项目,涉及语音合成后的处理。发现一个很香的轻量级变声方案——直接用 FFmpeg 就能搞定,不需要复杂的模型部署。 本文记录 FFmpeg 变声的核心方法、性能数据、以及在 OddTTS 项目中的实际应用场景。 先来听听效果 原始声音: 变声: 卡通声: 一、FFmpeg 变声原理解析 1.1 核心滤镜:asetrate + aresample FFmpeg 变声的核心在于两个滤镜的配合: 简单理解:asetrate 相当于把录音速度改了,音调随之变化;aresample 把时长”拉”回来。 1.2 保持原始时长:atempo 上面的方法会导致音频时长变化。如果要保持原时长,需要加 atempo: 原理:asetrate 改变音调会改变时长,atempo 反向调整速度,两者抵消。 二、常用变声效果库 直接套用,无需记公式: 效果 命令 适用场景 男变女 asetrate=44100*1.4,aresample=44100 客服配音 女变男 asetrate=44100*0.7,aresample=44100 角色切换 卡通音 asetrate=44100*2,atempo=0.5,aresample=44100 短视频特效 机器人声 afftfilt=real='hypot(re,im)*0.3':imag='0' 科幻配音 […]
女声变男声
1 post