正务库

5秒内克隆你的声音,并生成任何内容,这个开源工具细思极恐

时间:3个月前   游览量:56    标签: 生成    任何    声音    这个    工具    内容   


综合自:https://github.com/babysor/MockingBird

大家应该都知道声音克隆技术,通俗的来说就是借助深度学习算法,可以完全模拟某个人的声音,而且由机器合成的语音连情绪都能够完美表达出来,基本可以以假乱真,只要不见面,你根本就察觉不出来向你发出声音的知识一个机器。

 

语音克隆最大的创新之一是减少创建语音所需的原始数据量。过去,该系统需要数十甚至数百小时的音频。但是,今天猿妹要和大家分享的这个工具5秒钟就可以克隆成功,这个工具名叫——MockingBird

5秒内克隆你的声音,并生成任何内容,这个开源工具细思极恐 网络技术 第1张

 

MockingBird已经登上Github热榜,收获3.5K的Star,累计分支 303(Github地址:https://github.com/babysor/MockingBird)

 

MockingBird具有如下特性:

  • 支持普通话并使用多种中文数据集进行测试

  • 适用于 pytorch,已在 1.9.0 版本(最新于 2021 年 8 月)中测试,GPU Tesla T4 和 GTX 2060

  • 支持 windows + linux

  • 仅使用新训练的合成器(synthesizer)就有良好效果,复用预训练的编码器/声码器

 

MockingBird如何使用

 

MockingBird的安装要求如下:

  • 首先,MockingBird需要Python 3.7 或更高版本

  • 安装 PyTorch

  • 安装 ffmpeg。

  • 运行pip install -r requirements.txt 来安装剩余的必要包。

  • 安装 webrtcvad 用 pip install webrtcvad-wheels。

 

接着,你需要使用数据集训练合成器:

  • 下载 数据集并解压:确保您可以访问 train 文件夹中的所有音频文件(如.wav)

  • 使用音频和梅尔频谱图进行预处理:python synthesizer_preprocess_audio.py <datasets_root> 可以传入参数 --dataset {dataset} 支持 adatatang_200zh, magicdata, aishell3

  • 预处理嵌入:python synthesizer_preprocess_embeds.py <datasets_root>/SV2TTS/synthesizer

  • 训练合成器:python synthesizer_train.py mandarin <datasets_root>/SV2TTS/synthesizer

  • 当你在训练文件夹 synthesizer/saved_models/ 中看到注意线显示和损失满足您的需要时,请转到下一步。

 

5秒内克隆你的声音,并生成任何内容,这个开源工具细思极恐 网络技术 第2张

 


5秒内克隆你的声音,并生成任何内容,这个开源工具细思极恐 网络技术 第3张

 

使用预先训练好的合成器,如果没有设备或者不想慢慢调试,可以使用网友贡献的模型。

5秒内克隆你的声音,并生成任何内容,这个开源工具细思极恐 网络技术 第4张

 

训练声码器

  • 预处理数据: python vocoder_preprocess.py <datasets_root>

  • 训练声码器: python vocoder_train.py mandarin <datasets_root>

 

启动工具箱

然后你可以尝试使用工具箱:python demo_toolbox.py -d <datasets_root>