news 2026/9/2 18:25:21

AI音频源分离实战:用开源工具制作保留和声的伴奏

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
AI音频源分离实战:用开源工具制作保留和声的伴奏

很多做翻唱、混音或视频配乐的朋友,都会遇到一个尴尬情境:网上找到的伴奏要么只有纯鼓点,要么原声残留太明显,尤其当你想保留歌曲里那几句很漂亮的背景和声时,普通“一键去人声”的软件几乎无能为力。最近在为 Epik High、宋旻浩(MINO)、Simon Dominic 合作曲目《No, Thank You》做“带和声伴奏”时,我踩了一圈坑,最后用开源音源分离工具配合轨道叠加,才得到了比较干净的版本。

这篇文章就把完整思路和实操流程整理出来,包括原理拆解、工具选择、两段式/多轨分离的区别、Audacity 后期处理,以及常见问题和规避方案。无论你是想给韩语说唱歌曲做伴奏,还是处理其他中英文歌曲,这套流程都通用。

1. 背景与核心概念

1.1 什么是“带和声伴奏”

一首完整的歌曲在混音成品里通常由三类声音构成:

  • 主唱(Lead Vocal):承担核心旋律或说唱主体。
  • 和声(Backing Vocal / Ad-lib):比主唱更靠后、音量更小,通常用于衬托情绪,重复副歌或语气词。
  • 配乐(Instrumental):鼓、贝斯、键盘、合成器、采样等所有非人声层。

“带和声伴奏”不是传统意义上的纯伴奏(Instrumental),而是在去掉主唱的同时,把背景和声、语气词、即兴哼唱等元素保留下来。对《No, Thank You》这样的说唱+旋律融合曲目来说,和声经常出现在副歌后一句,或者主歌与副歌的衔接处,去掉主唱后如果连和声也一并删除,翻唱者会少很多表现力。

早期处理方式是用 EQ 削掉人声频段,但会明显损坏伴奏音色。后来出现了基于相位抵消的“人声消除”方案,也必须依赖原始立体声信息。这两种方式对现代说唱歌曲效果都不好,因为制作人大量使用单声道采样、侧链压缩和自动化音量,人声和伴奏在频段上高度重叠。

1.2 为什么普通分离工具不够用

很多免费在线工具提供“人声分离 / AI 去人声”,核心做法只有两轨输出:

  • vocals.wav(人声)
  • instrumental.wav(伴奏)

两轨模式解决不了“保留和声”的需求,因为所有带音高频率的人声都会进同一个 vocals 文件。副歌和声、语气“Yeah”“Get it”都会和主唱绑在一起。强行把 vocals 重新叠加回 instrumental,只会让主唱也跟着回来。

要制作真正可用的带和声伴奏,需要多轨分离思路:

  • 先把伴奏从原曲中分离出来。
  • 再把人声轨与伴奏进行二次分离,或者使用支持多源分离的模型。
  • 最后把人声轨中“只包含和声”的部分挑选出来,叠加到伴奏上。

这也是传统“二次元音”或“Mid-Side 处理”做不到的,必须依赖深度学习音频源分离模型。

1.3 适用场景

做“带和声伴奏”不是让你拿去商业发布,主要用于以下场景:

  • 哔哩哔哩/YouTube 翻唱视频、翻唱 demo。
  • 学习歌曲结构时,只听伴奏与和声。
  • 混音练习:把手上的曲目当作分轨素材来练习动态、EQ、混响。
  • 现场演出、Party 串场、非商业直播等。

基于这些需求,本文全程使用开源和免费工具,不涉及付费订阅,也不需要专业录音棚设备。

2. 环境准备与版本说明

2.1 硬件要求

“带和声伴奏”制作过程主要吃 CPU 和内存,对显卡没有硬性要求。实际操作时:

  • CPU 建议 4 核以上,长时间运行音源分离模型时,8 核更稳定。
  • 内存建议至少 8GB,推荐 16GB。处理 3-5 分钟的音乐工程,峰值内存可能达到 4-8GB。
  • 磁盘预留 10GB 以上,因为分离后会输出多个 WAV 文件,单个文件可能超过 100MB。

2.2 软件与工具链

本文所使用的工具均免费开源(或提供免费版本),你可以在自己的电脑上复现。

工具用途备注
UVR5(Ultimate Vocal Remover 5)桌面端 AI 音频分离可视化界面,适合新手
Demucs命令行音源分离Meta 开源,Python 安装
Audacity音频编辑、混音、降噪完全免费
FFmpeg音频格式转换部分工具底层依赖
原曲 WAV/MP3 文件素材务必使用合法渠道获得

2.3 安装 Demucs

如果你不习惯桌面软件,可以直接使用 Demucs。

Demucs 是 Facebook Research 开源的音乐源分离系统,支持人声、鼓、贝斯、其他四轨分离。安装方法如下:

# 安装依赖(Windows / macOS / Linux 都适用) pip install demucs # 方式一:直接分离出四轨(vocals / drums / bass / other) demucs "No Thank You.opus" # 方式二:只分离人声和伴奏两轨 demucs --two-stems=vocals "No Thank You.opus"

如果你没有 Python 环境,可以用 UVR5 桌面版,它已经把 Demucs、MDX-Net、VR Architecture 等模型封装成了可视化按钮,不需要手写命令行。

版本需要根据你的项目实际情况调整,本文示例以常见环境为例,重点演示配置思路。运行前请先查看官方文档确认当前版本命令是否有变化。

2.4 安装 Audacity

Audacity 可以直接从官网下载安装包,安装后建议把音频质量设置为 24-bit / 48kHz,这是目前流媒体和视频制作常用的工程标准。

打开 Audacity 后,先修改音频设置:

编辑 -> 偏好设置 -> 音频设置 采样率:48000 Hz 采样格式:24-bit 或 32-bit float

这种做法可以减少分离后文件反复压缩导致的音质损失。

3. 核心原理拆解:音频源分离

3.1 深度学习分离的基本思路

传统人声分离算法处理的是“频率”。人声集中在 200Hz-8kHz 之间,伴奏也在这个范围里,所以只要歌曲编曲复杂一些,EQ 切除立刻失效。

现代 AI 分离工具把歌曲转换成“语谱图”(spectrogram),即把时间-频率-能量关系用二维图像表示,再用深度神经网络辨识“哪些像素属于人声,哪些属于乐器”。网络结构以 U-Net 为主,配合混合时间-频率域损失函数,使得分离出的音轨相位更加自然。

3.2 为什么说唱歌曲分离难度更大

说唱歌曲有大量语言节奏型内容:

  • 人声常在快速咬字中出现齿音、气流声,这些和 cymbal(镲片)在频段上冲突。
  • 副歌时的“和声堆叠”经常是 2-4 轨人声同时出现,彼此之间在时间上重叠。
  • 现代 Hip-Hop 制作经常使用人声采样当作节奏元素,分离模型容易把“人声采样”错误识别为“伴奏”。

所以制作说唱歌曲的和声伴奏时,不建议直接对成品做一次二轨分离,而是分两次操作,第一次分离人声/伴奏,第二次针对人声轨做更细分离。

3.3 两种技术路线对比

路线优点缺点适合场景
两段式:先 vocals/instrumental,再二次处理 vocals可以保留和声的位置二次处理会损失音质普通翻唱,个人学习
多模型混合:UVR5 中多次跑不同模型,再手动组合控制力强,质量高操作步骤多,耗时追求质量、对歌曲结构熟悉
直接使用官方 Instrumental音质最好很多歌没有官方伴奏,版权风险高制作正规翻唱

实际项目中,组合方案最常用。先用 MDX-Net 模型把完整歌曲分离成 vocals 与 instrumental,再用 VR Architecture 模型或 Demucs 对 vocals 轨进一步分成“主唱”和“次要人声”,最后手动挑选和声片段叠加。

3.4 人声音轨二次分离的效果边界

需要理解:模型并不能完美区分“主唱 vs 和声”,它们通常会依据音色、声像、响度做判断。

  • 如果你的目标是“保留女声和声、去掉男声主唱”,成功率较高,因为音色差异大。
  • 如果你的目标是“保留副歌和声、去掉主唱说唱”,同样比较好处理,因为说唱与旋律和声音色差异明显。
  • 如果主唱与和声是同一个人、在相同音高、同一声像位置,模型几乎无法区分,最终只能靠手动裁剪。

《No, Thank You》中宋旻浩的说唱段落与 Epik High 成员 Tablo 的旋律和声差异较大,所以做二次分离效果相对理想,这也是你能从成品伴奏中保住那些哼唱段落的原因。

4. 实战:制作《No, Thank You》带和声伴奏

下面进入完整实操流程。我会以“UVR5 做深度分离 + Audacity 组合”为主线,并给出 Demucs 命令作为替代方案。

4.1 准备素材并整理工程目录

先把原曲文件转换成高音质 WAV,避免反复压缩 MP3。可以用 FFmpeg:

ffmpeg -i "no-thank-you.opus" -ar 48000 -ac 2 -sample_fmt s16 "no-thank-you.wav"

建立目录结构,方便管理多个版本:

E:\NoThankYou\ ├─source\ # 原始 WAV │ └─no-thank-you.wav ├─work\ # 中间文件 │ ├─step1_stems\ # 第一次分离结果 │ └─step2_vocal_parts\ # 第二次分离结果 ├─output\ # 最终伴奏 │ └─No_Thank_You_Backing_with_Harmony.wav └─notes.txt # 记录分离参数

这里需要注意,原曲文件如果来自流媒体,可能本身是 Opus 格式,采样率 44.1kHz,转换成 48kHz 会重新采样。如果没有特别需求,也可以保持原始采样率,以实际工程需要为准。

4.2 第一次分离:人声与伴奏

使用 UVR5:

  1. 打开 UVR5,选择分离模型,建议选MDX-Net MainUVR-MDX-NET Inst Main
  2. 加载source\no-thank-you.wav
  3. 输出路径选择work\step1_stems
  4. 分离模式选择Vocals / Instrumental
  5. 点击 Start,等待处理完成。

如果你使用命令行 Demucs,执行:

demucs --two-stems=vocals -o work/step1_stems source/no-thank-you.wav

输出文件:

work/step1_stems/htdemucs_ft/no-thank-you/vocals.wav work/step1_stems/htdemucs_ft/no-thank-you/no_vocals.wav

此时no_vocals.wav是纯伴奏,但你如果直接使用它,会丢失所有和声。接下来处理 vocals。

4.3 第二次分离:从人声轨中提取和声

在 UVR5 中,对人声轨vocals.wav再跑一次分离。这次模型要选择更侧重“人声层分解”的模型。常见可选:

  • Kim_Vocal_1/Kim_Vocal_2
  • UVR-MDX-NET Voc_FT
  • 或者Demucs --two-stems=other

以 Demucs 为例:

demucs --two-stems=vocals -o work/step2_vocal_parts work/step1_stems/htdemucs_ft/no-thank-you/vocals.wav

但这一步的逻辑有些特殊:我们要的不是人声,而是“人声轨中的非主唱部分”。如果用 Demucs 的 two-stems,输出的是 vocals 和 no_vocals,而 no_vocals 在这里其实是被模型认为“不是主要人声”的部分,包括弱和声、尾部混响、小声场细节。放在工作路径中就是:

work/step2_vocal_parts/htdemucs_ft/vocals/vocals.wav work/step2_vocal_parts/htdemucs_ft/vocals/no_vocals.wav

第二个文件的“no_vocals”不是真正的伴奏,而是原人声轨中的非中心成分。试验后你可能会发现它仍然有一些说唱的残响,但和声也保留在这里面。

使用 UVR5 时,更直接的做法是:

  1. 加载vocals.wav
  2. 选择模型MDX-Net Vocal Main
  3. 输出类型设置为Vocals / Instrumental
  4. 运行完成后,输出的Instrumental.wav就是“去掉主唱后的剩余人声”。

4.4 检查与手动修正和声片段

光靠自动分离还不够。建议把第二次分离得到的no_vocals.wav(或Instrumental.wav)导入 Audacity,与纯伴奏放在同一时间轴上进行试听对比。

在 Audacity 中操作:

  • 轨道一:no_vocals.wav(和声层)
  • 轨道二:no_vocals.wav(纯伴奏,用于对比)
  • 轨道三:原曲

发现哪些片段要保留、哪些片段要去除时,可以直接在“和声层”上局部选中,使用效果菜单里的“静音”或删除。例如:某处说唱主唱的尾部残响混进和声层,就把那 0.5 秒静音。

手动修正时建议同时打开频谱图(点击轨道控制区左侧的倒三角,选择“频谱图(Spectrogram)”),这样可以看到人声嘶声和乐器噪声的位置差异。

4.5 组合:把和声层重新叠到伴奏上

当和声层已经干净,可以开始组合。

在 Audacity 中拖动和声层与伴奏层对齐。由于都是同一次分离出来的文件,时间通常已经对齐,但如果你中途做过裁剪,需要手动对齐到波形峰值。常用做法:

  1. 选择原曲中的某个重音(比如副歌第一拍鼓点)。
  2. 在伴奏层找到同样的鼓点。
  3. 用“移动”工具让两者重合。

对齐后,将和声层复制到伴奏工程中,然后调整音量:

  • 伴奏层:保持 0dB 或 -3dB。
  • 和声层:先放到 -6dB 试听,再根据副歌强度微调。
  • 如果希望和声更靠后、更“贴”在伴奏里,可以给和声层加少量混响。

导出前,把双轨道合并为单声道还是保留立体声,取决于你的使用场景。如果是翻唱视频,建议保留立体声,但这意味着和声层也保留立体声信息。如果代码里的原曲声像本身偏中间,导出时可以选择“Split Stereo”再统一声像,避免伪立体声。

导出设置:

文件 -> 导出 -> 导出为 WAV 格式:WAV (Microsoft) 编码:Signed 16-bit PCM 或 24-bit PCM

如果你导出为 MP3,Audacity 会提示你安装 LAME 编码器,请按提示完成安装。

4.6 音质优化:EQ、压缩与响度

和声层经过两次模型分离后,通常会有频段缺失或“空洞感”。常见优化方式:

  • 给和声层加一个高通滤波,切掉 120Hz 以下的低频噪声。
  • 在 4kHz-6kHz 区间做少量增益,恢复存在的空气感。
  • 给和声层加一个压缩器,比如 Audacity 内置的“Compressor”,阈值为 -20dB,比率 2:1,让和声尾音更稳定。

这些操作不是必须的,如果你的用途是学习或简单翻唱,只需要保证音量平衡即可。

4.7 替代流程:一次跑多个模型再横向对比

如果你有时间,可以使用 UVR5 同时跑 2-3 个不同模型,然后比较哪一个模型在和声保真度上表现更好。

我在处理《No, Thank You》时的参数记录如下(仅作参考):

模型分离目标和声保留质量伴奏损伤程度
MDX-Net Mainvocals/instrumental中等
VR Architecturevocals/instrumental
Demucs htdemucs_ft四轨分离较高
UVR-MDX-NET Voc_FTvocals/instrumental中等

建议最终组合使用:

  • 第一次分离用MDX-Net Main,得到扎实的伴奏轨。
  • 第二次分离用UVR-MDX-NET Voc_FT,提取和声。
  • 手动处理后,叠加到伴奏轨。

5. 常见问题与排查思路

5.1 分离后的伴奏有“金属声”或“音乐盒感”

这是最常见的问题,通常发生在传统人声消除算法中。如果你发现伴奏听起来空洞,且带有明显类似“双吉他”的快速抖动声,说明伴奏轨中丢失了太多中频信息。

解决办法:

  • 重新使用深度分离模型,不要用简单的人声消除功能。
  • 检查第一次分离模型是否选成了karaokevocal-remover
  • 如果是在 UVR5 中操作,尝试更换模型并重复分离。
问题现象常见原因解决思路
伴奏有金属声使用了相位抵消算法改用深度学习模型
伴奏里面有微弱的原曲人声第一次分离不彻底提高模型大小,或二次分离人声轨
和声层混有主唱二次分离不彻底手动静音对应片段,或换独立模型
人声层和伴奏对不齐文件采样率或起始时间不同在 Audacity 中手动对齐波形
导出后音量太小整体响度不足检查左右声道平衡,做响度归一化

5.2 为什么和声层听起来“又空又闷”

因为模型在二次分离时,把和声中的高频泛音误判为主唱的一部分,导致保留下来的和声缺少 8kHz 以上的光泽感。可以给和声层加一个高架 EQ,在 8kHz 位置上提升 2-4dB;如果控制不好,也可以使用 Audacity 的“Filter Curve EQ”进行柔和增益。

5.3 处理过程中出现内存不足

Demucs 在分离长音频时,如果 CPU 内存不足,会直接崩溃。可以尝试:

demucs --two-stems=vocals --segment 10 source/no-thank-you.wav

--segment参数控制模型处理时的分块长度,默认可能是 20 秒,调小到 10 秒可以降低内存占用,但会增加处理时间。

5.4 分离后的“人声轨”带有时间偏移

这个问题在 UVR5 的某些模型上偶尔出现,原因是模型在输出时对边缘进行了补零操作。解决办法是在 Audacity 中先对比原曲和分离轨道的波形,找到明显鼓点或人声起点,使用“时间平移工具”调整偏移量。

5.5 检查清单

如果你做完后不确定效果是否达标,可以用下面清单逐项检查:

  • 主唱说唱是否完全消除或明显减弱。
  • 副歌和声是否保留在保留层中。
  • 伴奏低频是否结实,鼓点和贝斯是否清晰。
  • 左右声道是否有明显相位抵消。
  • 播放时是否有持续的背景电流声或数字爆音。

6. 最佳实践与工程建议

6.1 版权与使用边界

最重要的一条:不要将制作出的伴奏用于商业发行,也不要在各大音乐平台上未经授权上传。

AI 音源分离本身并不违法,但分发翻唱版伴奏、去除原曲人声后的作品,通常涉及录音版权和词曲版权。用于个人学习、视频平台非营利翻唱等,应事先阅读平台规则并标注原作者信息。如果确实需要正式商用,请购买官方伴奏或获得版权方许可。

6.2 文件命名与版本管理

音频处理和代码一样,最怕“最终版”不断叠加。建议每个步骤都生成独立版本文件,命名中记录模型和参数。

示例命名:

NoThankYou_MDX_vocals.wav NoThankYou_MDX_instrumental.wav NoThankYou_MDX-Model_vocals.wav NoThankYou_MDX-Model_backing-harmony.wav NoThankYou_Final_Backing_Harmony.wav

写一份notes.txt记录:

原曲来源:本地音频文件 采样率:44100 Hz -> 48000 Hz 第一次分离:UVR5 MDX-Net Main 第二次分离:UVR5 UVR-MDX-NET Voc_FT 手动处理:静音 0:42-0:45 主唱残响 最终导出:24-bit WAV

这在调节不同模型的时候尤其重要,不然两天后你根本记不住哪条音轨使用了哪个模型。

6.3 训练与素材质量

源文件质量决定分离上限。尽量使用 CD 音质(16-bit/44.1kHz 以上)的无损文件或官方发布的音频。如果只有低码率 MP3,高频信息已经严重损失,再好的模型也恢复不了被丢弃的细节。

6.4 参数调节原则

不要追求一次到位。先以默认参数跑完整个流程,再针对问题局部调整。用 30 秒片段做测试,确认效果满意后再跑完整首。这比反复跑整首歌高效得多。

6.5 自动化与批量处理

如果你需要给多首歌制作带和声伴奏,可以把 Demucs 命令写成脚本。例如用 Python 遍历目录:

import subprocess from pathlib import Path source_dir = Path("G:/Music/Sources") output_dir = Path("G:/Music/Backing") for wav in source_dir.glob("*.wav"): subprocess.run( ["demucs", "--two-stems=vocals", "-o", str(output_dir), str(wav)] ) print(f"processed: {wav.name}")

这个脚本示例适合后续迭代,实际项目中需要根据本机路径和需求调整。批处理前先在单首歌曲上验证,避免浪费大量时间。

6.6 最终混音小建议

和声层叠回伴奏后,如果听起来过于靠前,可以打开伴奏和和声层的声像对比:

  • 伴奏层整体声场较宽,和声层声像居中或偏左右对称。
  • 如果和声层是单声道,可考虑在 Audacity 中稍微加一点立体声宽度,但不要超过 50%,否则翻唱时人声会和伴奏抢位置。
  • 保留至少 -3dB 的峰值余量,避免导出后直接爆音。

7. 总结与学习路线

通过这篇文章,你已经掌握了"带和声伴奏"的核心制作链路:从原曲准备、深度分离人声与伴奏、二次分离人声轨中的和声,到 Audacity 中手动修正与音质优化。这个方法不只适用于《No, Thank You》,对大多数现代说唱和流行歌曲都有效。

完成这一步后,你还可以继续学习:

  • 多轨混音基础:EQ、压缩、混响。
  • 人声修复:去口水声、去齿音、去呼吸声。
  • 响度标准化与母带处理。
  • Python 音频处理库(librosa、audio-separator)的使用,让你可以制作一键处理脚本。

最终建议是:先拿一首结构清晰的歌曲完整练一遍,记录每个模型的效果,再处理你真正想翻唱的歌曲。多试几次后,你对 AI 音源分离的理解会逐渐从“玄学”变成可控的技术流程。如果这篇教程对你有所帮助,收藏备用也好,动手实践更好。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/2 18:17:56

拒绝密码猜解工具:从合规看安全边界

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/2 18:17:44

人脸替换工具FaceFusion 3.8.1:重构底层架构,视频处理更稳定

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/2 18:15:27

本地AI语音克隆与歌声合成实践:从So-VITS-SVC部署到高保真复刻

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/2 18:14:02

GEO优化服务商怎么选:靠谱机构识别六大维度与避坑指南

GEO优化服务商怎么选:靠谱机构识别六大维度与避坑指南 导语:本文从六大维度系统梳理GEO优化服务商中靠谱机构的识别方法,总结常见不靠谱服务商特征,帮助企业在选型过程中有效避坑。 一、GEO服务市场快速发展中的选型痛点 据公开资…

作者头像 李华
网站建设 2026/9/2 18:13:23

MOS管与继电器选型指南:从原理到实战的电路开关设计决策

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/2 18:11:37

OpenCV相机标定实战:张正友标定法完整实现与避坑指南

简介:基于OpenCV实现张正友相机标定的完整工程,面向计算机视觉初学者、高校学生及需要快速搭建标定环境的开发者,解决相机内参、外参与畸变参数求解,以及后续图像矫正问题。压缩包共92个文件、约10.26MB,除C源码与Visu…

作者头像 李华