Spleeter
Tipus | programari i programari de codi obert |
---|---|
Versió inicial | |
Versió estable | |
Llicència | llicència MIT |
Característiques tècniques | |
Sistema operatiu | Microsoft Windows, Linux i macOS |
Escrit en | Python |
Format de fitxer de lectura | |
Format de fitxer d'escriptura | |
Equip | |
Desenvolupador(s) | Deezer |
Més informació | |
Lloc web | research.deezer.com… (anglès) |
| |
Spleeter by Deezer és una eina de separació de fonts de música de codi obert construida en Python i basada en algorismes TensorFlow pre-entrenats. Va ser publicada el 4 de novembre de 2019, amb configuracions per dividir un arxiu en dues, quatre o cinc pistes d'àudio independents des de l'interfície de línia d'ordres.[1][2] El programari és d'accés lliure i gratuït, i està disponible a GitHub a través d'una llicència MIT.[3]
El desenvolupament de l'aplicació està principalment destinat a la recuperació d'informació musical (MIR), però també pot ser utilitzada per a fins creatius i comercials amb la condició que no s'infringeixin els drets d'autor dels arxius originals.[4]
Característiques
[modifica]Separació de pistes
[modifica]La funció principal de Spleeter consisteix a analitzar arxius de música i desconstruir-los en diverses seccions, que es guarden com arxius en format WAV al directori especificat a la línia d'ordres. Els resultats inclouen pistes dedicades a veus, acompanyaments i instruments específics, com guitarres i percussió.[5]
Model de dues pistes
[modifica]
La configuració per defecte permet dividir l'arxiu d'entrada en dues pistes: veu i acompanyament. Un cop instal·lada la biblioteca de Spleeter i els complements necessaris, s'ha introduir la següent fórmula a la línia d'ordres, substituint el camp directori_entrada
per la ruta d'accés dels arxius que es volen separar i el camp directori_sortida
per la ubicació on es crearà la carpeta amb els arxius resultants, titulats vocals.wav
i accompainment.wav
.[5]
spleeter separate -i directori_entrada.mp3 -o directori_sortida
Model de quatre pistes
[modifica]
Una altra opció és dividir l'arxiu d'entrada en quatre pistes: veus, percussió, baix i "altres". Per fer-ho s'ha d'introduir una fórmula similar a la predeterminada, afegint la variable -p
per especificar la quantitat de pistes de sortida desitjades.[5] Aquestes es crearan a la carpeta seleccionada sota el nom de vocals.wav
, drums.wav
, bass.wav
i other.wav
, respectivament.
spleeter separate -i directori_entrada.mp3 -o directori_sortida -p spleeter:4stems
Model de cinc pistes
[modifica]
El programari predeterminat també permet dividir l'arxiu d'entrada en cinc pistes: veus, percussió, baix, piano i "altres". En aquest cas també s'ha d'especificar el nombre de pistes a la variable -p
, les quals s'anomenaran vocals.wav
, drums.wav
, bass.wav
, piano.wav
i other.wav
, respectivament.[5]
spleeter separate -i audio_example.mp3 -o audio_output -p spleeter:5stems
Entrenament de model
[modifica]
Per crear un model pre-entrenat personalitzat, s'ha de descarregar una sèrie de cançons, tant íntegres com separades en pistes diferents, de la base de dades musDB, les quals han de figurar com a llistat a un arxiu CSV.[5][6] També s'ha de crear o descarregar un arxiu de configuració JSON on figurin les opcions per a l'entrenament i s'especifiqui el directori de la base de dades en format CSV.[7] Un cop s'han preparat aquests requisits, s'ha d'introduir la següent fórmula, canviant el camp arxiu_de_configuració.json
per la ruta del arxiu JSON i el camp directori_base_dades
per la ubicació dels arxius a analitzar.
spleeter train -p arxiu_de_configuració.json -d <directori_base_dades>
Avaluació de model
[modifica]
Finalment, per posar a prova un model personalitzat és necessari descarregar la base de dades d'àudio musDB i introduir la següent fórmula a la línia d'ordres, canviant el camp num_pistes
(sense parèntesi) per la quantitat de pistes en què el model ha de separar l'arxiu i el camp directori_base_dades
per la ubicació dels arxius per avaluar.[5][6]
spleeter evaluate -p spleeter:(num_pistes)stems --mus_dir </directori_base_dades> -o eval_output
Referències
[modifica]- ↑ «Deezer Research - Spleeter» (en anglès). Deezer, 2019. [Consulta: 18 desembre 2020].
- ↑ Vincent, James. «This open-source AI tool quickly isolates the vocals in any song» (en anglès), 05-11-2019. [Consulta: 18 desembre 2020].
- ↑ «Spleeter / License» (en anglès). GitHub, 28-10-2019. [Consulta: 18 desembre 2020].
- ↑ Moussallam, Manuel. «Releasing Spleeter: Deezer R&D source separation engine» (en anglès), 03-02-2020. [Consulta: 18 desembre 2020].
- ↑ 5,0 5,1 5,2 5,3 5,4 5,5 «2. Getting started» (en anglès). GitHub, 18-02-2020. [Consulta: 18 desembre 2020].
- ↑ 6,0 6,1 «MUSDB18» (en anglès). SigSep, 09-10-2019. [Consulta: 18 desembre 2020].
- ↑ «Spleeter / base_config.json» (en anglès). GitHub, 28-10-2019. [Consulta: 18 desembre 2020].