在 Apple M1/M2 下安装训练 MockingBird

什么是 MockingBird

AI拟声: 克隆您的声音并生成任意语音内容 Clone a voice in 5 seconds to generate arbitrary speech in real-time

特性

  • 🌍 中文 支持普通话并使用多种中文数据集进行测试:aidatatang_200zh, magicdata, aishell3, biaobei, MozillaCommonVoice, data_aishell 等
  • 🤩 PyTorch 适用于 pytorch,已在 1.9.0 版本(最新于 2021 年 8 月)中测试,GPU Tesla T4 和 GTX 2060
  • 🌍 Windows + Linux 可在 Windows 操作系统和 linux 操作系统中运行(苹果系统M1版也有社区成功运行案例)
  • 🤩 Easy & Awesome 仅需下载或新训练合成器(synthesizer)就有良好效果,复用预训练的编码器/声码器,或实时的HiFi-GAN作为vocoder
  • 🌍 Webserver Ready 可伺服你的训练结果,供远程调用

安装 Anacodna

从清华镜像下载: https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

搜索: MacOSX-arm64.pkg 并看更新时间,找最新版本。我下的版本为:Anaconda3-2023.03-1-MacOSX-arm64.pkg,安装时选择仅为当前用户,否则会说版本不兼容不让安装。

安装完成后配置镜像:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ 
conda config --set show_channel_urls yes
❯ conda info

     active environment : base
    active env location : /Users/v0/anaconda3
            shell level : 1
       user config file : /Users/v0/.condarc
 populated config files : /Users/v0/.condarc
          conda version : 23.3.1
    conda-build version : 3.24.0
         python version : 3.10.9.final.0
       virtual packages : __archspec=1=arm64
                          __osx=13.3.1=0
                          __unix=0=0
       base environment : /Users/v0/anaconda3  (writable)
      conda av data dir : /Users/v0/anaconda3/etc/conda
  conda av metadata url : None
           channel URLs : https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/osx-arm64
                          https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/noarch
                          https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/osx-arm64
                          https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/noarch
                          https://repo.anaconda.com/pkgs/main/osx-arm64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/osx-arm64
                          https://repo.anaconda.com/pkgs/r/noarch
          package cache : /Users/v0/anaconda3/pkgs
                          /Users/v0/.conda/pkgs
       envs directories : /Users/v0/anaconda3/envs
                          /Users/v0/.conda/envs
               platform : osx-arm64
             user-agent : conda/23.3.1 requests/2.28.1 CPython/3.10.9 Darwin/22.4.0 OSX/13.3.1
                UID:GID : 501:20
             netrc file : None
           offline mode : False

看到这个配置成功。

配置 Conda 工作空间

conda create -n voice
# 中间需要回车确认
conda activate voice

安装 Pytorch

官方文档:https://pytorch.org/get-started/locally/

conda install pytorch torchvision -c pytorch
pip3 install torch torchvision

然后使用 python3 命令输入以下脚本进行测试:

import torch
x = torch.rand(5, 3)
print(x)

安装 FFmpeg

下载: https://ffmpeg.org/download.html#build-mac

下载解压后移动到 bin 目录。比如:

mv ffmpeg ~/anaconda3/bin/
# 测试一下
ffmeg -version

安装项目依赖

使用 Rosetta 打开 Terminal,然后进入该项目目录:

# 替换 PathToMockingBird, 可以用 pwd 命令查看当前目录地址
/usr/bin/python3 -m venv /PathToMockingBird/venv
source /PathToMockingBird/venv/bin/activate
pip install --upgrade pip
pip install pyqt5
  • 安装pyworldctc-segmentation

    这里两个文件直接pip install的时候找不到wheel,尝试从c里build时找不到Python.h报错

    • 安装pyworld

      • brew install python 通过brew安装python时会自动安装Python.h
      • export CPLUS_INCLUDE_PATH=/opt/homebrew/Frameworks/Python.framework/Headers 对于M1,brew安装Python.h到上述路径。把路径添加到环境变量里
      • pip install pyworld
    • 安装ctc-segmentation

      因上述方法没有成功,选择从github clone源码手动编译

      • git clone https://github.com/lumaku/ctc-segmentation.git 克隆到任意位置
      • cd ctc-segmentation
      • source /PathToMockingBird/venv/bin/activate 假设一开始未开启,打开MockingBird项目的虚拟环境
      • cythonize -3 ctc_segmentation/ctc_segmentation_dyn.pyx
      • /usr/bin/arch -x86_64 python setup.py build 要注意明确用x86-64架构编译
      • /usr/bin/arch -x86_64 python setup.py install --optimize=1 --skip-build用x86-64架构安装
  • 安装其他依赖

    • /usr/bin/arch -x86_64 pip install torch torchvision torchaudio 这里用pip安装PyTorch,明确架构是x86
    • pip install ffmpeg 安装ffmpeg
    • pip install -r requirements.txt
  • 运行

    参考这个链接
    ,让项目跑在x86架构环境上

    • vim /PathToMockingBird/venv/bin/pythonM1
    • 写入以下代码
      #!/usr/bin/env zsh
      mydir=${0:a:h}
      /usr/bin/arch -x86_64 $mydir/python "$@"
      
    • chmod +x pythonM1 设为可执行文件
    • 如果使用PyCharm,则把Interpreter指向pythonM1,否则也可命令行运行/PathToMockingBird/venv/bin/pythonM1 demo_toolbox.py
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Willin 老王带你躺平养老

感谢你这么好看还这么慷慨

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值