https://tech.ifeng.com/c/7rKbQA3qBVn
来自法国的音乐流媒体公司Deezer开源了一个音轨分离软件spleeter,只需输入一段命令就可以将音乐的人声和各种乐器声分离,支持mp3、wav、ogg等常见音频格式。
这款软件基于TensorFlow开发,效果拔群,有网友说自己曾经试过无数类似软件,spleeter是最好用的一个。
如果在GPU上运行,会比实时分解速度快100倍,也就是说分解一首5分钟的歌曲只需要3秒。
spleeter在GitHub上线仅仅一周,就收获了2.4K星,在Hacker News上也有1000+的热度。
最多分离5个音轨,用户可以根据自己的需求来训练模型,Deezer还给出了在musdb数据集上的预训练模型,因此能直接拿来使用。在官方提供的预训练模型里,spleeter可将人声和乐器声分为2个音轨,4个音轨,钢琴、架子鼓等5个音轨。
打开清华anaconda源:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
这里下载Anaconda3-5.2.0-Windows-x86_64.exe
注意太新的python版本会不兼容
双击安装,此处没啥好说的,注意勾选上环境变量那一个(勾上会变红)
在cmd命令行输入下面代码后回车:
conda config --set show_channel_urls yes
然后找到c盘/你自己的电脑名的文件夹,里面有个.condarc
用记事本打开,把里面的内容全部替换成下面网址里黑色部分,并保存退出:
https://mirror.tuna.tsinghua.edu.cn/help/anaconda/
开始菜单里打开Anaconda Navigator图形界面,选择Environment环境,选择新建Creat,命名为music,勾选python3.6,确定,等待下载初始环境完成。
开始菜单打开Anaconda prompt(或cmd命令行),输入下面代码后回车:
activate music
接着步骤5键入下面代码后回车:
conda install -c conda-forge spleeter
等待提示,输入y后回车
等待下载环境完成。
进入以下网址,下载 2stems.tar.gz
https://github.com/deezer/spleeter/releases
如果下载慢可以看我主页CSDN上传的文件
解压到如下目录下C:\Users\ef\pretrained_models\2stems
(在pretrained_models的上一级目录运行)
我放在D:/code/test.mp3
python -m spleeter separate -i D:/code/test.mp3 -p spleeter:2stems -o output
(此处可能出现无法创建文件的bug,删掉output里面的文件重复运行1次即可)
在output里可以查看分离的文件
此处仅介绍安装使用
显卡驱动、cuda和cudnn的安装参考下面这个帖子
https://blog.csdn.net/qq_27139123/article/details/99686086
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
安装:找到下载后的页面打开终端输入:
sudo sh Anaconda3-5.2.0-Linux-x86_64.sh
清华源:https://mirror.tuna.tsinghua.edu.cn/help/anaconda/
在根目录下修改.condarc换清华源:
//终端键入后回车,并全部替换为下面的清华源镜像地址,保存
sudo gedit ~/.condarc
清华源镜像地址:
channels:
- defaults
show_channel_urls: true
channel_alias: https://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
方法1,终端键入:
source ~/anaconda3/bin/activate root
anaconda-navigator
方法2,终端键入:
conda install -c anaconda anaconda-navigator
anaconda-navigator
在anaconda的environment里creat一个名字叫music的环境,点确定,等待完成
source activate music
接着5继续终端键入:
git clone https://github.com/Deezer/spleeter
(若没有git就按照提示装一个)
继续键入:
conda install -c conda-forge spleeter
模型下载链接:
https://github.com/deezer/spleeter/releases
/home/ef/pretrained_models/2stems
测试音乐位置:
/home/ef/test.mp3
终端键入运行:
spleeter separate -i test.mp3 -p spleeter:2stems -o output
模型下载链接:
https://github.com/deezer/spleeter/releases
下载2stems-finetune.tar.gz,解压后只需替换原模型的5个文件即可,解压目录和运行代码均不变,windows和linux相同:
解压目录:pretrained_models/2stems
linux:
windows:
linux运行代码:
spleeter separate -i test.mp3 -p spleeter:2stems -o output
windows运行代码:
python -m spleeter separate -i D:/code/test.mp3 -p spleeter:2stems -o output
下载5stems-finetune.tar.gz,解压到pretrained_models/5stems,并执行代码:
//linux下:
python -m spleeter separate -i D:/code/test.mp3 -p spleeter:5stems -o output
//windows下:
spleeter separate -i test.mp3 -p spleeter:5stems -o output
欢迎讨论