Demucs 音轨分离
本模型用于提取音乐中的人声部分,转载自 https://github.com/facebookresearch/demucs
模型效果
输入:
输出:
推理代码
安装 DiffSynth-Studio:
git clone https://github.com/modelscope/DiffSynth-Studio.git
cd DiffSynth-Studio
pip install -e .
推理代码:
from diffsynth.utils.demucs import AudioTrackSeparator
from diffsynth import ModelConfig
from modelscope import snapshot_download
import torch, torchaudio
model = AudioTrackSeparator(
torch_dtype=torch.float32,
device="cuda",
model_config=ModelConfig(model_id="DiffSynth-Studio/Demucs-Repackage", origin_file_pattern="model.safetensors")
)
snapshot_download("DiffSynth-Studio/Demucs-Repackage", allow_file_pattern="music_input.wav", local_dir="data")
music = torchaudio.load("data/music_input.wav")
vocals = model(music, target_sample_rate=48000)
torchaudio.save("music_output.wav", vocals, 48000)