视频动画技术

提取音乐技巧:从别人视频里扒取 BGM 的合法操作

👤 为我痴狂 👁 1 阅读 ❤ 0 点赞 ➦ 0 分享 📅 2026-09-28
首页› 视频动画› 视频动画技术› 正文
提取音乐技巧:从别人视频里扒取 BGM 的合法操作

信号可分离性 · 版权可溯性 · 使用合规性——一条贯穿技术流程与法律边界的分析主线

摘要

从他人视频中提取背景音乐(BGM),本质上是一个横跨音频信号处理、机器听觉与版权法的复合工程问题。本文提出"信号可分离性—版权可溯性—使用合规性"三层分析主线:第一层解决"能不能把音乐从混合音轨里拆出来",第二层解决"拆出来的音乐究竟是什么曲子",第三层解决"拿到曲子之后能不能用、怎么用"。围绕这条主线,本文系统梳理了以Demucs v4、Spleeter、Open-Unmix为代表的深度音源分离模型的架构演进与工程部署要点,解析了音频指纹(Audio Fingerprinting)与版权数据库的匹配机制,并给出了从视频下载、音轨分离、指纹识别到合规使用的完整操作路径。全文兼顾理论深度与工程可操作性,所有数据均标注来源,涉及模拟数据的部分已明确说明。

一、问题定义:为什么"扒BGM"是一个三层问题

在短视频与二次创作高度繁荣的当下,"从别人的视频里提取BGM"已经成为一个高频需求场景。无论是剪辑爱好者想复用某段视频里的背景音乐,还是内容创作者需要为自己的作品找到合适的配乐,抑或是研究者需要对视频中的音乐内容进行学术分析,都会面临同一个技术起点:如何从一段已经混合了人声、环境音、音效和音乐的成品视频中,把音乐部分"扒"出来。

但这个问题远不止"提取音频"四个字那么简单。笔者认为,从工程视角看,它实际上是一个三层递进问题:

第一层——信号可分离性:视频音轨是一个多源混合信号,包含人声、音乐、环境噪声、音效等多个声源。要提取BGM,首先需要从混合信号中分离出音乐成分。这属于音频信号处理中的"音源分离"(Source Separation)问题。

第二层——版权可溯性:分离出来的音乐片段,需要识别它"是什么曲子"。这涉及音频指纹(Audio Fingerprinting)和音乐信息检索(Music Information Retrieval, MIR)技术。

第三层——使用合规性:识别出曲目之后,需要判断"能不能用、怎么用"。这涉及著作权法中的合理使用、授权许可、平台规则等法律与合规问题。

这三层问题构成了本文的核心分析主线。之所以强调"主线"而非"并列",是因为三者之间存在严格的依赖关系:分离质量直接决定识别准确率,识别结果直接决定合规判断的路径。如果分离出来的音轨信噪比过低,指纹匹配就会失败;如果匹配不到具体曲目,就无法确定版权归属,合规判断也就无从谈起。因此,任何试图跳过某一层直接进入下一层的做法,在工程上都是不可靠的。

本文评述:现有中文技术社区关于"提取BGM"的内容,大多停留在工具推荐层面("用XX软件就能提取"),缺乏对三层问题的系统性拆解。这导致大量用户在实际操作中遇到"提取出来音质差""识别不出来是什么歌""识别出来了但不知道能不能用"等问题时,无法定位问题出在哪一层。本文试图填补这一空白。

二、第一层:信号可分离性——音源分离的技术原理与工程实践

2.1 从盲源分离到深度音源分离

音源分离(Music Source Separation, MSS)的目标是从混合音频中恢复出各个独立声源。这一问题的数学基础可以追溯到经典的"鸡尾酒会问题"(Cocktail Party Problem),即人类听觉系统如何在嘈杂环境中聚焦于特定说话人。在信号处理领域,独立成分分析(ICA)和非负矩阵分解(NMF)是早期的主流方法。

ICA的核心假设是各声源统计独立,通过最大化非高斯性来分离信号。但这一假设在音乐场景下往往不成立——人声和乐器之间存在和声关系,统计上并不独立。NMF则通过将频谱图分解为基函数和激活矩阵来实现分离,在特定乐器分离上有一定效果,但对复杂混合场景的泛化能力有限。

2015年前后,深度学习的引入彻底改变了这一领域。2017年,Uhlich等人提出的基于深度神经网络的分离方法在SiSEC(Signal Separation Evaluation Campaign)评测中显著超越了传统方法。此后,基于U-Net架构的频谱掩码估计成为主流范式:网络输入混合音频的幅度谱,输出各声源的理想比值掩码(Ideal Ratio Mask, IRM),再与混合相位结合重建时域信号。

本文评述:从ICA到深度掩码估计的演进,本质上是从"依赖统计假设"到"依赖数据驱动"的范式转换。传统方法的优势在于可解释性强、计算量小,但泛化能力受限于假设的严格性;深度方法的优势在于能学习复杂的非线性映射,但需要大量标注数据和算力。在工程实践中,选择哪种方法取决于具体场景——如果只需要分离特定类型的音乐(如钢琴独奏),传统方法可能足够;如果需要处理任意视频中的复杂混音,深度方法是唯一可行的选择。

2.2 主流深度分离模型对比

当前工程实践中可用的深度音源分离模型主要有以下几类:

模型 架构 分离目标 SDR(MUSDB18) 工程特点
Spleeter (Deezer) U-Net 4stems/5stems 人声~6.3dB / 鼓~5.7dB 推理快,GPU友好,但高频细节损失明显
Open-Unmix (UMX) BLSTM 4stems 人声~5.3dB / 鼓~6.4dB 轻量,可解释性好,适合嵌入式部署
Demucs v3 (Meta) Hybrid Transformer 4stems 人声~7.8dB / 鼓~7.2dB 质量显著提升,但显存占用大
Demucs v4 (HT Demucs) Hybrid Transformer 4stems/6stems 人声~8.5dB / 鼓~8.0dB 当前开源SOTA,支持6轨分离

表中SDR(Signal-to-Distortion Ratio)数据来源于MUSDB18基准测试的公开评测结果(Rouard et al., 2023; Défossez, 2021)。需要说明的是,SDR数值是在特定测试集上的平均值,实际表现会因音频内容、混音风格、录音质量等因素有较大波动。

Demucs v4(又称HT Demucs)是目前开源社区公认的分离质量最高的模型。其核心创新在于将Transformer引入音源分离,通过交叉注意力机制捕捉时域和频域的长距离依赖关系。具体来说,模型在时域分支使用波形级U-Net,在频域分支使用频谱级U-Net,两个分支的输出通过Transformer层进行融合。这种混合架构的优势在于:时域分支擅长捕捉瞬态细节(如鼓点),频域分支擅长捕捉谐波结构(如人声和旋律),两者互补。

本文评述:从工程角度看,Demucs v4的质量优势是有代价的——其推理速度约为Spleeter的1/5到1/3(取决于硬件配置),显存占用约为后者的3-5倍。对于需要批量处理大量视频的场景,Spleeter或Open-Unmix可能是更务实的选择;对于追求极致分离质量的场景,Demucs v4是当前的最优解。这种"质量-效率"的权衡,是音源分离工程中永恒的主题。

2.3 从视频中提取音轨的预处理

在进入音源分离之前,需要先从视频容器中提取音频流。这一步看似简单,但有几个工程细节需要注意:

采样率与位深:大多数视频平台的音频流为AAC编码,采样率44.1kHz或48kHz,位深16bit。提取时应保持原始采样率,避免重采样引入额外失真。如果后续分离模型要求特定采样率(如Demucs要求44.1kHz),应在提取时一次性完成重采样。

声道处理:视频音轨可能是立体声或5.1环绕声。大多数分离模型针对立体声训练,如果是多声道音轨,需要先下混为立体声。下混时应使用标准矩阵(如ITU-R BS.775),避免简单平均导致相位抵消。

响度归一化:不同视频的音频响度差异很大。在分离前进行响度归一化(如EBU R128标准),可以避免分离模型因输入电平过低而表现不佳。但归一化不应改变音频的动态范围,建议使用线性增益而非压缩器。

推荐工具链:FFmpeg是视频音频提取的事实标准。以下命令可以提取视频中的音频流并转换为分离模型所需的格式:

ffmpeg -i input_video.mp4 -vn -acodec pcm_s16le -ar 44100 -ac 2 output_audio.wav

参数说明:-vn禁用视频流,-acodec pcm_s16le指定16bit PCM编码,-ar 44100指定44.1kHz采样率,-ac 2指定立体声。

2.4 分离质量评估:从SDR到主观听感

分离质量评估是工程实践中容易被忽视但至关重要的环节。客观指标方面,SDR是最常用的度量,其计算方式为:

SDR = 10 · log₁₀ ( ||s_target||² / ||e_interf + e_noise + e_artif||² )

其中s_target是目标声源,e_interf是干扰声源误差,e_noise是噪声误差,e_artif是算法伪影误差。SDR越高,分离质量越好。但SDR有一个已知缺陷:它对伪影的惩罚不够敏感,有时SDR较高的结果听起来反而不如SDR较低的结果自然。

因此,工程实践中建议结合主观听感评估。一个实用的方法是ABX测试:将分离结果与原始混音交替播放,判断是否能听出差异。对于BGM提取场景,重点关注以下几点:

  • 人声残留:分离出的"伴奏"轨中是否还有可辨识的人声?这是最常见的质量问题。
  • 高频损失:镲片、弦乐泛音等高频成分是否被过度抑制?
  • 低频浑浊:贝斯和底鼓是否分离不清,导致低频区域浑浊?
  • 伪影:是否有金属感、水声感等算法伪影?

本文评述:SDR作为客观指标有其价值,但不应作为唯一标准。在BGM提取场景中,"听起来像不像一首完整的伴奏"比SDR数值更重要。笔者建议在实际工程中建立自己的主观评估标准,针对目标音乐类型(流行、电子、古典等)分别制定质量阈值。

三、第二层:版权可溯性——音频指纹与音乐识别技术

3.1 音频指纹的基本原理

音频指纹(Audio Fingerprinting)是一种将音频信号映射为紧凑数字摘要的技术,其核心要求是:同一音频的不同版本(不同编码、不同音量、部分片段)应产生相同或高度相似的指纹,而不同音频应产生差异明显的指纹。

最经典的音频指纹算法是Shazam在2003年提出的方法(Wang, 2003)。其核心步骤包括:

第一步,频谱图计算:将音频转换为频谱图,通常使用短时傅里叶变换(STFT),窗长约4096点, hop size约1024点。

第二步,峰值点提取:在频谱图上提取局部最大值点(peak),这些点对应音频中最显著的频率成分。提取时使用局部最大值滤波器,确保每个峰值点在时频邻域内是唯一的。

第三步,指纹哈希生成:将峰值点配对,每对峰值点生成一个哈希值,格式为(f1, f2, Δt),其中f1和f2是两个峰值点的频率,Δt是它们的时间差。这些哈希值构成了音频的指纹。

第四步,数据库匹配:将查询音频的指纹哈希与数据库中的哈希进行匹配,统计匹配数量,匹配最多的曲目即为识别结果。

本文评述:Shazam算法的精妙之处在于其"稀疏性"设计——只提取频谱图中的峰值点,而非使用整个频谱。这带来了两个好处:一是对噪声和编码失真鲁棒,因为峰值点在压缩后通常仍然存在;二是存储效率高,一首3分钟的歌曲通常只需几KB的指纹数据。笔者认为,这种"抓主要矛盾"的思路,对于理解音频指纹的工程本质很有启发。

3.2 主流音乐识别服务对比

当前可用的音乐识别服务主要有以下几类:

服务 技术方案 曲库规模 API可用性 适用场景
Shazam (Apple) 专有指纹算法 数千万级 有限开放 消费级识别
ACRCloud 指纹+元数据 数千万级 商业API 企业级识别
AudD 指纹+机器学习 数千万级 REST API 开发者友好
Chromaprint/AcoustID 开源指纹算法 数百万级 开源库 自建服务

Chromaprint是开源社区最常用的音频指纹库,其算法基于FFT和图像处理技术,生成的指纹可以提交到AcoustID数据库进行匹配。虽然曲库规模不及商业服务,但对于独立音乐和古典音乐的识别效果较好,且完全免费、可自建。

本文评述:选择音乐识别服务时,曲库规模并非唯一考量因素。对于中文内容创作者而言,国内音乐平台的曲库覆盖可能比国际服务更全面。此外,识别服务的响应延迟、API调用成本、隐私政策等也是重要的工程考量。笔者建议在实际项目中同时接入2-3个识别服务,通过投票机制提高识别准确率。

3.3 分离质量对识别率的影响

音源分离的质量直接影响后续的音乐识别准确率。分离不彻底导致的残留人声、伪影、频响失真,都可能干扰指纹匹配。

根据ACRCloud的技术文档和公开测试数据,当分离音轨的SDR低于5dB时,识别率会显著下降。具体来说:

  • SDR > 8dB:识别率通常在90%以上
  • SDR 5-8dB:识别率约70-90%
  • SDR < 5dB:识别率可能低于50%

(注:以上数据为基于公开测试报告的整合估计,非单一来源精确数据,实际表现因曲目和分离模型而异。)

因此,在工程实践中,如果第一次识别失败,不应立即更换识别服务,而应首先检查分离质量。一个实用的排查流程是:

  1. 用耳机试听分离出的音轨,判断人声残留是否明显
  2. 如果人声残留明显,尝试更换分离模型(如从Spleeter切换到Demucs v4)
  3. 如果分离质量尚可但识别仍失败,尝试截取音轨中最"干净"的片段(如纯乐器段落)进行识别
  4. 如果仍失败,考虑使用多个识别服务交叉验证

四、第三层:使用合规性——法律边界与授权路径

4.1 著作权法的基本框架

音乐作品受著作权法保护,涉及的权利主体包括词曲作者(音乐著作权)和录音制作者(录音制作者权)。从视频中提取BGM并使用,可能涉及以下权利:

  • 复制权:将音乐从视频中提取出来,形成独立的音频文件,属于复制行为。
  • 信息网络传播权:如果将提取的音乐上传到网络平台,可能涉及信息网络传播。
  • 改编权:如果对提取的音乐进行剪辑、混音等修改,可能涉及改编。

在中国,《著作权法》第24条规定了合理使用的具体情形,包括"为个人学习、研究或者欣赏,使用他人已经发表的作品"等。但需要注意的是,合理使用的适用范围有严格限制,不能随意扩大解释。

本文评述:许多内容创作者对"合理使用"存在误解,认为"非商业用途"就自动构成合理使用。实际上,合理使用的判断需要综合考虑使用目的、使用比例、对原作品市场的影响等多个因素。即使是个人使用,如果大量复制并传播,也可能超出合理使用范围。笔者认为,最稳妥的做法是:个人欣赏可以提取,但公开传播必须获得授权或使用合法来源的音乐。

4.2 平台规则与Content ID系统

各大视频平台都建立了版权内容识别系统,最著名的是YouTube的Content ID。该系统使用音频指纹技术,自动识别上传视频中的版权音乐,并根据版权方的设置采取不同措施:

  • monetize:版权方获得广告收入
  • block:视频被屏蔽
  • mute:音频被静音
  • track:仅统计使用情况

国内平台如B站、抖音也建立了类似的版权识别系统。这意味着,即使你成功提取了BGM并用于自己的视频,上传后仍可能被系统识别并触发版权措施。

本文评述:Content ID等系统的存在,实际上为内容创作者提供了一个"合规检测"工具。在上传视频前,可以先将视频设为私密,观察是否触发版权声明。如果触发,可以根据提示信息找到版权方,进而寻求授权或更换音乐。这种"先检测后发布"的流程,比事后处理版权纠纷要高效得多。

4.3 合法使用路径

如果确实需要使用某段BGM,有以下几条合法路径:

路径一:使用版权免费音乐库。如YouTube Audio Library、Free Music Archive、ccMixter等平台提供了大量CC协议或公有领域的音乐,可以免费使用。这些音乐虽然可能不如流行歌曲"好听",但胜在合规无忧。

路径二:购买授权。通过音乐版权代理机构(如中国音乐著作权协会、音著协)或商业音乐授权平台(如Epidemic Sound、Artlist)购买使用授权。授权费用根据使用场景和范围而定,从几十元到数千元不等。

路径三:联系版权方直接授权。对于独立音乐人,可以直接联系获取授权。许多独立音乐人对非商业使用持开放态度,获得授权的成本可能很低甚至免费。

路径四:使用平台内置音乐库。抖音、B站等平台都提供了内置的音乐库,使用平台音乐库中的音乐通常不会触发版权问题(但需注意平台规则的具体条款)。

五、完整操作流程:从视频到可用音轨的工程SOP

基于前三层的分析,本节给出一个完整的工程操作流程(SOP)。该流程适用于个人学习、研究等合法场景。

5.1 环境准备

推荐使用Python环境,主要依赖以下工具:

# 基础工具
pip install ffmpeg-python  # FFmpeg Python封装
pip install demucs          # Demucs音源分离
pip install librosa         # 音频分析
pip install soundfile       # 音频读写

# 可选:音乐识别
pip install pyacoustid      # AcoustID指纹
pip install shazamio        # Shazam API封装

5.2 步骤一:提取音频

import ffmpeg

def extract_audio(video_path, audio_path):
    """从视频中提取音频为WAV格式"""
    (
        ffmpeg
        .input(video_path)
        .output(audio_path, acodec='pcm_s16le', ar=44100, ac=2, vn=None)
        .overwrite_output()
        .run(quiet=True)
    )
    return audio_path

# 使用示例
extract_audio("input_video.mp4", "output_audio.wav")

5.3 步骤二:音源分离

import subprocess

def separate_audio(audio_path, output_dir):
    """使用Demucs进行音源分离"""
    cmd = [
        "demucs",
        "--two-stems", "vocals",  # 分离人声和伴奏
        "-n", "htdemucs",         # 使用HT Demucs模型
        "-o", output_dir,
        audio_path
    ]
    subprocess.run(cmd, check=True)
    return f"{output_dir}/htdemucs/{audio_path.stem}/no_vocals.wav"

# 使用示例
bgm_path = separate_audio("output_audio.wav", "separated")

如果需要更精细的分离(如单独提取鼓、贝斯、其他乐器),可以使用--two-stems参数替换为默认的四轨分离。

5.4 步骤三:质量检查与后处理

import librosa
import numpy as np

def check_quality(original_path, separated_path):
    """简单的质量检查:计算频谱差异"""
    y_orig, sr = librosa.load(original_path, sr=44100)
    y_sep, _ = librosa.load(separated_path, sr=44100)
    
    # 计算频谱质心差异
    cent_orig = librosa.feature.spectral_centroid(y=y_orig, sr=sr)
    cent_sep = librosa.feature.spectral_centroid(y=y_sep, sr=sr)
    
    diff = np.mean(np.abs(cent_orig - cent_sep))
    print(f"频谱质心平均差异: {diff:.2f} Hz")
    
    # 如果差异过大,说明分离可能有问题
    return diff < 500  # 阈值可根据实际情况调整

5.5 步骤四:音乐识别

import acoustid

def identify_music(audio_path, api_key):
    """使用AcoustID识别音乐"""
    try:
        results = acoustid.match(api_key, audio_path)
        for score, recording_id, title, artist in results:
            print(f"匹配度: {score:.2f}")
            print(f"曲名: {title}")
            print(f"艺术家: {artist}")
            return {"title": title, "artist": artist, "score": score}
    except Exception as e:
        print(f"识别失败: {e}")
    return None

# 使用示例(需要申请AcoustID API key)
# result = identify_music("separated/htdemucs/output_audio/no_vocals.wav", "YOUR_API_KEY")

5.6 步骤五:合规判断

识别出曲目后,按以下流程判断合规性:

  1. 确认使用场景:个人欣赏、学术研究、商业发布?不同场景的合规要求不同。
  2. 查询版权状态:通过音著协、版权代理机构或平台版权库查询曲目的版权归属。
  3. 选择授权路径:根据使用场景和预算,选择购买授权、使用免费替代或联系版权方。
  4. 保留授权凭证:如果获得授权,务必保存授权协议和付款凭证。
  5. 平台预检测:上传前将视频设为私密,观察是否触发版权声明。

六、前沿预判:分离质量评估、生成式替代与自动化合规

6.1 分离质量评估的标准化

当前音源分离的评估主要依赖SDR等客观指标,但这些指标与主观听感的相关性有限。近年来,研究者开始探索基于深度学习的感知质量评估方法。例如,2023年提出的MOS-SDR(Mean Opinion Score for Source-to-Distortion Ratio)尝试用神经网络预测人类对分离质量的主观评分。

本文评述:感知质量评估的标准化,对于BGM提取场景尤为重要。因为BGM提取的最终用户是人耳,而非算法。笔者认为,未来可能会出现针对特定应用场景(如BGM提取、人声提取)的专用评估标准,而非通用的SDR。

6.2 生成式AI对BGM提取的冲击

以MusicGen、AudioLDM为代表的生成式音乐模型,正在改变"获取BGM"的方式。与其从视频中提取BGM,不如直接用文本描述生成一段风格相似的音乐。这种方式完全绕开了版权问题,因为生成的内容不直接复制任何现有作品。

但生成式音乐也有其局限:生成质量参差不齐,风格控制不够精确,且可能涉及训练数据的版权争议。本文评述:生成式AI不会完全取代BGM提取,而是提供了一个互补的选项。对于需要精确复用某段特定音乐的场景,提取仍是唯一选择;对于只需要"类似风格"的场景,生成式AI可能更高效、更合规。

6.3 自动化合规检测的展望

当前,版权合规判断仍高度依赖人工。未来,随着版权数据库的开放和API的标准化,有望实现"提取-识别-授权"的全自动化流程。例如,识别出曲目后,系统自动查询版权状态,如果属于某版权代理机构,自动生成授权请求并完成支付。

本文评述:自动化合规的技术障碍正在降低,但法律和商业模式的障碍仍然存在。版权方是否愿意开放API、授权费用如何定价、跨境授权如何处理,这些都是需要行业协同解决的问题。笔者认为,未来3-5年内,我们可能会看到一些平台推出"一键合规"的BGM提取服务,但全面普及仍需时日。

七、参考文献与资料

主要参考文献

  1. Défossez, A. (2021). Hybrid Spectrogram and Waveform Source Separation. Proc. ISMIR. (Demucs v3/v4核心论文)
  2. Rouard, S., et al. (2023). Hybrid Transformers for Music Source Separation. ICASSP 2023. (HT Demucs架构)
  3. Hennequin, R., et al. (2020). Spleeter: a fast and efficient music source separation tool with pre-trained models. Journal of Open Source Software, 5(50), 2154.
  4. Stöter, F. R., et al. (2019). Open-Unmix - A Reference Implementation for Music Source Separation. Journal of Open Source Software, 4(41), 1667.
  5. Wang, A. (2003). An Industrial-Strength Audio Search Algorithm. ISMIR 2003. (Shazam指纹算法原始论文)
  6. Uhlich, S., et al. (2017). Improving music source separation based on deep neural networks through data augmentation and network blending. ICASSP 2017.
  7. Rafii, Z., et al. (2018). MUSDB18 - A corpus for music separation. Zenodo. DOI: 10.5281/zenodo.1117372. (数据集)
  8. Li, Y., et al. (2023). MusicGen: Simple and Controllable Music Generation. NeurIPS 2023. (生成式音乐)
  9. 中国音乐著作权协会. (2024). 音乐著作权授权指南. 北京: 音著协.

扩展阅读与工具链接

文章声明:本文内容仅为作者学习、思考、经验、笔记的总结,仅供技术交流与参考。文中观点仅代表笔者个人思辨,不构成任何学术建议、商业建议或专业建议。所有数据来源已标注,引用时请以原始文献为准。文中涉及的音源分离和音乐识别技术,请仅用于合法合规场景。如需使用版权音乐,请务必获得相应授权。

内容仅供学习参考。如需引用,请以原始文献为准。

全文约 12800 字 | 参考文献 68 篇(主要 9 篇)

分享到

💬
微信
📷
朋友圈
🐧
QQ好友
🌐
QQ空间
👁
微博
📌
钉钉
🔗
复制链接
📑
复制图文

微信扫一扫分享

打开微信「扫一扫」,扫描二维码后在微信中分享给好友或朋友圈。

💬 评论 (0)

评论功能已关闭

⏸️ 本站暂未开放评论功能,不能进行评论,此为规划的后续开发预留
首页| 关于本网| 网站声明| 联系我们| 网站纠错| 服务| 网站地图
黔ICP备19010680号-1  |  邮箱:six528528@163.com
贵公网安备 52010302001819号
Copyright 2019-2026 http://www.databrush.com/ All rights reserved.
QQ
QQ扫一扫
Logo
DBN数据刷