Traducere automată · Originalul în engleză

HTDemucs & Deschis- unmix 4-Stem Muzica separare

Open-Unmix HQ împarte o piesă de muzică stereo în patru tulpini independente voce, tobe, BassCity in Germany, și altele. Patru modele independente BiLSTM (unul per tulpină) produc măști de magnitudine peste amestecul STFT; un postfiltru Wiener opțional le reconciliază. Rulează pe Apple Silicon prin MLX.

Sunt disponibile două motoare: Open-Unmix HQ (greutate ușoară, implicit) și HTDemucs (Demucs v4) Un model Hibrid Transformer de calitate superioară selectat cu --engine htdemucs Ambele rulați pe Apple Silicon prin MLX și de ieșire aceleași patru tulpini la 44.1 kHz.

Ce este?

Arhitectură

Patru tulpini independente, fiecare o copie a aceleiași rețele:

Etape Forma / funcționarea
STFT4096-punct FFT, 1024-hop, fereastra periodica Hann, reflect-pad. 2049 containere de frecventa pe cadru.
Normalizează intrareaRecoltă la 1487 coșuri de gunoi (2012/16 kHz), se aplică mediile învățate perbin + scala de la formare.
Codor Liniar 2974 → 512 + BatchNorm + tanh. Intrarea este de 2 canale × 1487 containere.
BiLSTM3 straturi, 256 ascunse pe directie (512 eficient). Captureaza context temporal peste rame.
DecodorSkip-concat de codor și ieșiri LSTM (1024) → Linear 1024 → 512 + BN + ReLU → Liniar 512 → 4098.
Denorm de ieșire + mascăSe multiplică în mod Element-înțelept cu magnitudinea amestecului; fază din amestec; iSTFT se suprapune-add.
Wiener (opțional) Măştile de proporţii electrice de-a lungul tuturor celor 4 estimări stem.

Model

Componentă Valoare
Parametrii / tulpina8,9M
Parametrii totali (4 tulpini)~35.6M
Rata de eșantionarestereo 44.1 kHz
Latenţă de bucatăOffline (Full-track STFT)
Greutateaufklarer/OpenUnmix-HQ-MLX (safetensions, ~136 MB)
În amontesigsep/open-unmix-pytorch (Stöter et al., JOSS 2019)

HTDemucs (Demucuri v4)

Pentru o calitate mai mare a separării HTDemucs, Meta's Hybrid Transformer Demucs. Acesta unește o ramură spectrogramă și o ramură de undă printr-un transformator cross-domeniu; expediate htdemucs_ft varianta este o pungă de patru submodele fin tunate, unul pe stem. Greutate descărcare de la HuggingFace pe prima utilizare. Pe un reper direcție MUSDB-eșantion (museval / BSSEval v4) se mediează +3.01 dB DST peste UMX-HQ, cu cele mai mari câștiguri la bass (+5.75 dB).

Componentă Valoare
Parametrii168M (4 × 42M submodele bine reglate)
Rata de eșantionarestereo 44.1 kHz
FereastraSegmente de 7,8 s, 25% suprapunere, triangular cross-fade
Greutateaufklaer/HTDemucs-FT-MLX (fp16, ~320 MB)
În amonte Facebook research/demucs (Rouard et al., ICASSP 2023)

Start rapid Swift

import SourceSeparation
import AudioCommon

let separator = try await SourceSeparator.fromPretrained()

let stereo = try AudioFileLoader.loadStereo(
    url: URL(fileURLWithPath: "song.wav"),
    targetSampleRate: 44100
)

let stems = separator.separate(audio: stereo, sampleRate: 44100)
// stems[.vocals], stems[.drums], stems[.bass], stems[.other]
// Each is [[Float]] — left channel, right channel.

try WAVWriter.writeStereo(
    left: stems[.vocals]![0],
    right: stems[.vocals]![1],
    sampleRate: 44100,
    to: URL(fileURLWithPath: "vocals.wav")
)

Pasează wiener: true (default) pentru cea mai bună calitate. Pass targets: [.vocals] pentru a extrage doar un subset de tulpini și sări peste celelalte modele.

CLI

speech separate song.wav                              # all 4 stems into song_stems/ (Open-Unmix)
speech separate song.wav --engine htdemucs            # Demucs v4 — higher quality
speech separate song.wav --engine htdemucs --htdemucs-precision int8  # smaller int8 bundle
speech separate song.wav --stems vocals               # vocals only
speech separate song.wav --stems vocals,drums         # subset
speech separate song.wav --output-dir /tmp/stems/     # custom output dir
speech separate song.wav --verbose                    # show timing

Când să utilizaţi

Unmixul se potriveşte când...

... aveți nevoie de o trecere ușoară, offline sursă-separare în interiorul unei aplicații sau conducte pe Apple Silicon. 8.9M params per stem păstrează descărcare și memorie modestă. Magnitudine-masculare plus Wiener oferă tulpini bune pe cel mai pop/rock conținut. Pentru izolare vocală de ultimă generație pe material studio, comutați la pachet HTDemucs (Demucuri v4) motor prin --engine htdemucs; Open-Unmix rămâne ușor, nava-in-your-ap-end al comerțului.