spleeter——人声伴奏分离工具安装

本文指导如何在Linux和macOS上通过Conda安装miniconda,创建Python环境,并演示如何利用spleeter工具将音频文件分离成伴奏和人声。从环境管理到具体操作,适合初学者入门音频处理技术。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

准备

conda

Conda是在Windows,macOS和Linux上运行的开源软件包管理系统和环境管理系统。 Conda可以快速安装,运行和更新软件包及其依赖项。 Conda可以轻松地在本地计算机上的环境中创建,保存,加载和切换。它是为Python程序创建的,但可以打包和分发适用于任何语言的软件。

conda分为anaconda和miniconda。miniconda属于精简版,不过完全满足我们的需求了,这里给出了miniconda的下载链接。

conda下载链接

根据不同的系统,下载相应的文件,执行安装。我这里主要是Linux和macOS的安装方式。没有特殊定制的话,一路yes就可以了。

chmod 777 Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh

使用

bogon:309209 xxx$ conda activate
(base) bogon:309209 xxx$

可以注意到前面的(base),是默认的conda环境。conda可以创建多个env,每个env可以安装不同版本的python以及其他软件。

(base) bogon:309209 xxx$  conda activate py38
(py38) bogon:309209 xxx$ 

因为新下载的conda默认python3.9版本,比较高,因此,我创建了py38这个env,并指定在这个env中使用python3.8。

conda详细的使用,这里不再赘述,可参考官方文档。

安装spleeter及使用

# install dependencies using conda
conda install -c conda-forge ffmpeg libsndfile
# install spleeter with pip
pip install spleeter
# download an example audio file (if you don't have wget, use another tool for downloading)
wget https://github.com/deezer/spleeter/raw/master/audio_example.mp3
# separate the example audio into two components
spleeter separate -p spleeter:2stems -o output audio_example.mp3

最终在output目录下,生成vocals.wav和accompaniment.wav两个文件,打开vocals.wav如下:
accompaniment.wav
在这里插入图片描述
原始文件audio_example.mp3:
在这里插入图片描述

参考:

  1. https://github.com/deezer/spleeter
  2. https://docs.conda.io/projects/conda/en/latest/index.html
### 音频处理中的人声分离技术方法与工具 #### 技术原理概述 人声分离的核心在于通过算法区分音频信号的不同组成部分,通常分为前景(即人声)和背景(如乐器演奏)。现代AI驱动的解决方案主要依赖深度学习模型,特别是基于神经网络架构的设计。这种方法能够自动学习复杂的声音特征并将其分类[^1]。 具体来说,大多数先进的人声分离系统采用监督学习的方式训练模型。这些模型会接收大量标注好的多轨道音频作为输入,在此过程中学会分辨哪些频率范围对应于人声,而哪些属于背景音乐或其他环境噪声[^4]。 #### 主流方法及其特点 以下是几种常见的人声分离技术和其实现方式: 1. **独立成分分析 (ICA)** ICA是一种统计学方法,旨在找到一组相互独立的源信号组合而成的数据表示形式。对于音频而言,这意味着尝试还原原始录音中的各个单独声道——比如歌手演唱以及各种乐器演奏的部分[^2]。 2. **非负矩阵分解 (NMF)** NMF将混合后的光谱图分解成若干基向量乘以其权重之积的形式。由于声音本质上是非负值分布,因此该方法非常适合用来解析音乐片段内的结构化信息。 3. **深度学习框架下的U-Net变种** U-Net最初设计用于医学图像分割领域,后来被移植到音频处理任务上取得了显著成效。它利用编码器-解码器结构捕捉全局上下文关系的同时保持局部细节精度。 4. **Spleeter by Deezer Research** Spleeter是一款开源库,提供了预训练模型来执行高质量的立体声拆分操作。用户可以选择不同的配置选项以适应特定需求,例如仅提取人声或者进一步细分成鼓、贝斯等多个层次。 5. **Moises.AI服务** Moises.AI作为一个云端服务平台,集成了强大的机器学习引擎来进行全自动化的音轨划分工作。除了基本的功能外,还额外提供降噪优化等功能模块,适用于更广泛的用途场景[^5]。 #### 示例代码展示 下面给出一段简单的Python脚本演示如何调用Spleeter API完成二元模式下(人声 vs 伴奏) 的音频切割流程: ```python from spleeter.separator import Separator # 加载默认的两通道分离器. separator = Separator('spleeter:2stems') # 执行分离过程. def perform_separation(input_path, output_dir): separator.separate_to_file( input_path, output_dir ) if __name__ == "__main__": audio_input = 'path/to/your/audio/file.mp3' destination_folder = './output/' perform_separation(audio_input, destination_folder) ``` 上述程序定义了一个函数`perform_separation`, 它接受两个参数分别是待处理文件路径还有保存结果的目标目录位置;最后在主入口处指定具体的实例变量传入即可运行整个逻辑链条. ---
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值