python有没有一键扒谱和音乐背景旋律与人声分离的库?
网友回复
有,使用demucs进行人声伴奏提取,然后对提取的Basic Pitch 伴奏转录为 MIDI 音符,如果精度不够,demucs可可指定提取单个乐器的伴奏,Demucs 的 htdemucs_6s 模型可以分离出 6 种音轨:鼓、贝斯、其他、人声、钢琴、吉他。
cmd = [ sys.executable, "-m", "demucs", "--two-stems", "other", # 只分离出“其他乐器(伴奏主体)” "-n", "htdemucs_6s", # 指定使用 6 分轨模型 "-o", output_dir, input_audio_path ]如果你只把分离出来的 piano.wav 或 guitar.wav 喂给 Basic Pitch,精度会呈指数级上升
示例代码如下:
import os
import sys
import subprocess
from basic_pitch import ICASSP_2022_MODEL_PATH
from basic_pitch.inference import predict_and_save
# ==============================================================================
# Step 1: 使用 Demucs 进行人声伴奏分离
# ==============================================================================
def separate_vocals(input_audio_path, output_dir):
print("\n[Step 1] 正在使用 Demucs 进行人声与伴奏分离...")
# --two-stems=vocals 参数会将音频分离为人声 (vocals.wav) 和伴奏 (no_vocals.wav)
cmd = [
sys.executable, "-m", "demucs",
"--two-stems", "vocals",
"-o", output_dir,
input_a...点击查看剩余70%


