Différences
Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| pratique:creatool:audio:stemspleet [31/05/2025 09:20] – créée Zatalyz | pratique:creatool:audio:stemspleet [16/06/2025 08:34] (Version actuelle) – [Raccourci via script bash] Zatalyz | ||
|---|---|---|---|
| Ligne 2: | Ligne 2: | ||
| ===== Demucs ===== | ===== Demucs ===== | ||
| - | * https:// | + | * https:// |
| - | https:// | ||
| - | Lien vers le soft, lien vers le modèle, liens vers la zik, lien vers le dossier où drop l' | + | Pour l' |
| - | < | + | |
| + | Pour résumer, on clone le dépôt comme c'est dit, on compile (et si on a Arch en théorie on a depuis longtemps installé tout ce qu'il faut pour), on télécharge les modèles (ils ne sont pas lourds), puis on sépare les pistes. | ||
| + | |||
| + | <WRAP center round tip 90%> | ||
| + | Je compile en sollicitant moins le cpu de mon côté, je n'ai pas un foudre de guerre. Pour savoir combien de cœur sont dispo, on fait la commande '' | ||
| + | </ | ||
| + | |||
| + | |||
| + | <code bash> | ||
| + | git clone --recurse-submodules https:// | ||
| + | mkdir -p build && cd build && cmake .. && make -j4 | ||
| + | # les modèles | ||
| + | git clone https:// | ||
| + | </ | ||
| + | |||
| + | La commande : lien vers le soft, lien vers le modèle, liens vers la zik, lien vers le dossier où envoyer | ||
| + | < | ||
| + | |||
| + | À noter que si la version de base demande qu'on lui indique le chemin complet vers le modèle, la version ft attent le dossier où sont les modèles. | ||
| + | |||
| + | ==== Bon format en entrée ==== | ||
| + | |||
| + | Si on n'a pas un wav échantilloné à 44100 Hz, ça râle. Hop, un coup de ffmpeg : | ||
| + | |||
| + | ffmpeg -i musik.mp3 -ar 44100 -ac 2 -acodec pcm_s16le sortie.wav | ||
| + | |||
| + | ==== Choix du modèle ==== | ||
| + | De base, sans autre précision, les modèles séparent en 4 pistes (basse, batterie, voix, autres). " | ||
| + | |||
| + | * ggml-model-hdemucs_mmi-v3-f16.bin : le plus rapide | ||
| + | * ggml-model-htdemucs-4s-f16.bin : devrait être plus précis que le précédent mais plus lent | ||
| + | * ggml-model-htdemucs-6s-f16.bin : sépare en 6 pistes (basse, batterie, guitare, piano, voix, autres), forcément encore plus lent. | ||
| + | * ggml-model-htdemucs_ft* : version affinée, la séparation prendra 4 fois plus de temps mais pourrait être un peu meilleure. | ||
| + | |||
| + | ==== Et choix du binaire ==== | ||
| + | Lors de la compilation, | ||
| + | |||
| + | * demucs.cpp.main : version de base, mono-thread | ||
| + | * demucs_mt.cpp.main : Multi-threaded | ||
| + | * demucs_v3.cpp.main : Version optimisée pour le modèle hdemucs_mmi-v3, | ||
| + | * demucs_v3_mt.cpp.main : idem en multi-threaded | ||
| + | * demucs.cpp.test : Implémentation du pipeline de fine-tuning d’un stem | ||
| + | * demucs_ft.cpp.main : idem en multi-threaded | ||
| + | |||
| + | ==== Raccourci via script bash ==== | ||
| + | Je me suis fait un alias dans mes raccourcis, il suffit ensuite de rentrer '' | ||
| + | - Ça crée un dossier (dans celui où est le mp3) | ||
| + | - Ça me convertisse dans le bon format de wav | ||
| + | - Ça transforme ça avec demuc, en n' | ||
| + | |||
| + | <code bash demuc.sh> | ||
| + | # | ||
| + | # Variables | ||
| + | DEMUCSEXEC="/ | ||
| + | MODEL="/ | ||
| + | |||
| + | # Vérification du fichier d' | ||
| + | if [ $# -ne 1 ]; then | ||
| + | echo "Usage : $0 chemin/ | ||
| + | exit 1 | ||
| + | fi | ||
| + | |||
| + | INPUT=" | ||
| + | |||
| + | if [ ! -f " | ||
| + | echo " | ||
| + | exit 1 | ||
| + | fi | ||
| + | |||
| + | # Création du dossier de sortie | ||
| + | BASENAME=$(basename " | ||
| + | NAME=" | ||
| + | INPUTDIR=$(dirname " | ||
| + | OUTDIR=" | ||
| + | mkdir -p " | ||
| + | |||
| + | # Conversion en wav 44.1 kHz si nécessaire | ||
| + | WAVFILE=" | ||
| + | echo " | ||
| + | ffmpeg -i " | ||
| + | |||
| + | # Appel de demucs | ||
| + | echo " | ||
| + | " | ||
| + | |||
| + | |||
| + | echo " | ||
| + | |||
| + | </ | ||
| + | |||
| + | L' | ||
| + | alias demuc="/ | ||
| ===== Autres soft ===== | ===== Autres soft ===== | ||
| Ligne 13: | Ligne 103: | ||
| * https:// | * https:// | ||
| * https:// | * https:// | ||
| + | * Utimate Vocal Remover : GUI embarquant (entre autre) demuc. Une plaie à compiler (plein de soucis de dépendances, | ||