Demucs
扫码查看

先进的音乐源分离工具

Demucs

综合介绍

Demucs是一个先进的音乐源分离模型,由Facebook Research发布并开源。它采用先进的深度学习技术,能够将一首完整的歌曲分离成不同乐器的音轨,例如人声、鼓、贝斯和其它乐器。该模型基于一种名为“U-Net”的卷积神经网络架构,并结合了光谱图和波形两种信息进行处理,从而实现了高精度的音源分离。最新的版本(v4)还引入了混合变换器(Hybrid Transformer)技术,进一步提升了分离效果。Demucs不仅在学术界备受关注,也在音乐制作、DJ混音、音乐教学等领域展现了巨大的应用潜力。开发者和音乐爱好者可以通过其开源的Python代码或社区开发的图形界面工具在个人电脑上运行该模型,实现对音乐的深度解析和再创作。

功能列表

  • 多音轨分离: 能够将音乐区分为人声、鼓、贝斯及其他乐器四个基本音轨。
  • 高质量输出: 基于深度学习模型,分离出的音轨保留了较高的音质,伪音较少。
  • 多种模型可选: 提供不同版本和大小的预训练模型,如htdemucs_ft(默认的精调版混合变换器模型)和hdemucs_mmi(基线模型),用户可以根据需求选择。
  • 命令行界面: 为开发者和高级用户提供了功能强大的命令行工具,可进行批量处理和参数定制。
  • GPU加速: 支持使用NVIDIA GPU进行加速,大幅缩短处理时间。对于显存有限的用户,也提供了优化选项。
  • 自动音量缩放: 程序会自动调整输出音轨的音量,防止出现削波失真,同时用户也可以选择关闭此功能以保留原始的相对音量。
  • 跨平台支持: 核心模型基于Python和PyTorch,可以在Windows、macOS和Linux上运行。
  • 社区图形界面: 社区开发者(如CarlGao4)为Demucs开发了图形用户界面(GUI),让不熟悉命令行的用户也能轻松使用。

使用帮助

Demucs的核心是一个Python程序包,但对于普通用户而言,使用社区开发的图形界面版本(Demucs GUI)是更便捷的选择。以下将分别介绍两种使用方式。

1. Demucs GUI (图形界面,推荐初学者使用)

Demucs GUI是一个由社区开发者创建的独立软件,它打包了Demucs的核心功能,并提供了直观易用的图形操作界面。

安装流程 (以Windows为例):

  1. 下载: 前往Demucs GUI在GitHub上的发布页面 (可以在搜索引擎搜索 "Demucs GUI GitHub Releases" 找到)。根据你的电脑配置选择合适的版本。
    • 如果你有NVIDIA显卡,下载CUDA版本的压缩包,处理速度最快。
    • 如果你使用的是较新的Intel显卡,可以尝试MKL版本。
    • 如果不确定或没有独立显卡,下载CPU版本即可。
  2. 解压: 下载完成后,将压缩包解压到一个你方便找到的文件夹,例如D:\Demucs-GUI
  3. 创建快捷方式 (可选但建议): 进入解压后的文件夹,找到名为Demucs-GUI.exe的应用程序。右键点击它,选择“发送到” -> “桌面(创建快捷方式)”,这样以后就可以直接从桌面启动了。

操作流程:

  1. 启动软件: 双击Demucs-GUI.exe或桌面快捷方式启动程序。
  2. 添加文件: 点击界面上的“添加文件”按钮,选择一首或多首你想要分离的歌曲文件。你也可以直接点击“添加文件夹”来批量处理整个文件夹的音乐。
  3. 选择模型: 在界面右侧的“模型选择”区域,你可以选择不同的分离模型。默认的htdemucs_ft通常效果最好,也是推荐的选项。
  4. 调整设置 (可选):
    • 输出格式: 你可以选择输出的音频格式,如WAV或FLAC。
    • 分离选项: 默认分离成4个音轨(人声、鼓、贝斯、其他)。
    • 混音器 (Mixer): 分离完成后,你可以在“混音器”选项卡中试听各个音轨,并调整它们的音量后重新导出一个混音版本。
  5. 开始分离: 点击“开始分离”按钮。程序会开始处理音频文件,处理时间取决于你的电脑性能和歌曲长度。如果你使用的是GPU版本,速度会快很多。
  6. 查看结果: 处理完成后,软件会在原始歌曲所在的文件夹内创建一个名为separated的新文件夹。在里面,你可以找到以模型名称和歌曲名命名的子文件夹,其中就包含了分离出来的各个音轨文件。

2. 命令行使用 (适合开发者和高级用户)

如果你熟悉Python和命令行环境,可以直接使用Demucs的原始Python包,这提供了更高的灵活性。

安装流程:

  1. 安装Python: 确保你的电脑上安装了Python 3.8或更高版本,并配置好了环境变量。
  2. 安装PyTorch: Demucs依赖于PyTorch。请访问PyTorch官网,根据你的操作系统和是否拥有NVIDIA GPU选择并安装合适的版本。
  3. 安装Demucs: 打开命令行终端(或PowerShell),运行以下命令来安装Demucs:
    pip install -U demucs
    
  4. (可选) 安装ffmpeg: 为了支持更多种类的音频格式输入,建议安装ffmpeg并将其添加到系统环境变量中。

操作流程:

  1. 打开终端: 在你的电脑上打开命令行终端。
  2. 运行命令: 使用以下基础命令来分离一首歌曲:
    demucs "你的歌曲路径.mp3"
    

    例如:demucs "C:\Music\song.mp3"

  3. 高级选项:
    • 指定输出目录: 使用-o参数指定输出文件夹。
      demucs -o "C:\Music\separated" "C:\Music\song.mp3"
      
    • 选择模型: 使用-n参数选择不同的预训练模型。例如,要使用默认的htdemucs_ft模型:
      demucs -n htdemucs_ft "song.mp3"
      
    • GPU加速: 如果你已正确安装支持CUDA的PyTorch,Demucs会自动使用GPU。如果遇到显存不足的问题,可以尝试--segment参数来减少单次处理的数据量,但这可能会牺牲一些分离质量。例如,将分段大小设置为8:
      demucs --segment 8 "song.mp3"
      
  4. 查看结果: 默认情况下,处理完的音轨会保存在一个名为separated/htdemucs_ft的文件夹中。

应用场景

  1. 音乐制作与混音音乐制作人可以从现有歌曲中提取人声或乐器轨道,用于Remix创作、采样或作为背景伴奏。例如,提取出纯净的人声轨道,为其重新编排乐器。
  2. DJ现场表演DJ可以实时或预先分离歌曲中的鼓点、贝斯线和人声,从而在现场表演中进行更富创造性的混搭和过渡。
  3. 音乐学习与教学学习乐器的学生可以分离出自己想练习的乐器声部,然后静音该声部,跟随其余的伴奏进行练习。声乐学生也可以用这种方法制作卡拉OK伴奏带。
  4. 音频修复在一些现场录音或旧的录音中,如果某个乐器的声音过大或有瑕疵,可以尝试将其分离出来单独进行处理,再与其他部分混合回去。
  5. 学术研究作为业界领先的模型,Demucs为从事音乐信息检索(MIR)和音频信号处理领域的研究者提供了一个强大的基准和研究工具。

QA

  1. Demucs分离音乐是免费的吗?是的,Demucs是一个开源项目,你可以免费下载和使用它。 如果你使用了社区开发者制作的GUI版本,他们通常会接受自愿捐赠来支持后续的开发。
  2. 使用Demucs需要很好的电脑配置吗?不一定。虽然拥有NVIDIA GPU可以极大地加快处理速度,但Demucs也支持仅使用CPU运行。 如果你的电脑配置较低,处理一首歌可能需要几分钟甚至更长时间,但功能上没有差异。对于显存较小的GPU用户,可以通过调整参数来运行。
  3. Demucs可以分离出哪些乐器?目前标准的Demucs模型主要将音乐分离成四个部分:人声(vocals)、鼓(drums)、贝斯(bass)以及“其他”(other),“其他”部分包含了除了前三者之外的所有声音,如吉他、钢琴、合成器等。
  4. 分离出来的音质如何?Demucs是目前公认的效果最好的音乐分离模型之一,其分离出的音轨质量很高,伪音(artifacts)相对较少。 但需要理解的是,任何分离技术都无法做到100%完美,在复杂或混音不佳的音源中,可能会听到一些轻微的声音残留。
微信微博Email复制链接