franz159 Inviato 26 Aprile 2021 Inviato 26 Aprile 2021 Ciao, il mio lettore USB della macchina riconosce solo mp3. Vorrei fare una conversione di qualche migliaio di brani da flac a mp3. Mi sapreste suggerire qualche tool adatto, possibilmente per mac? Grazie
UpTo11 Inviato 26 Aprile 2021 Inviato 26 Aprile 2021 XLD, xACT o al limite fre:ac (si chiama proprio così, con i due punti). Tutti hanno la possibilità di sfruttare le CPU multicore, convertendo più file contemporaneamente. Se ne devi convertire parecchi tieni conto che il computer, soprattutto se un portatile, scalderà parecchio, assicurati che ci sia ricircolo d'aria attorno.
aleniola Inviato 26 Aprile 2021 Inviato 26 Aprile 2021 Confermo XLD su mac, comodissimo proprio per i batch Lo imposti e poi trascini la cartella dei file sull’icona xld nel dock. A quel punto fa tutto da solo
UpTo11 Inviato 26 Aprile 2021 Inviato 26 Aprile 2021 2 ore fa, UpTo11 ha scritto: XLD, xACT o al limite fre:ac Questi sono tutti e 3 free. Quando devo convertire tanti file in diverse cartelle mi faccio una copia da qualche parte, nella cartella principale cerco ".flac" nella casella di ricerca del Finder, scelgo "Audio FLAC" nel menù che compare, una volta che ho la lista dei file Cmd+A per selezionarli tutti e infine click col pulsante destro del mouse -> "Apri con" e seleziono XLD. Mi faccio una copia delle cartelle perché ho attivato l'opzione di rimuovere i file originali una volta convertiti. In questo modo converto tutto in mp3 conservando la stessa struttura delle cartelle, che per me è più comodo. 1
foreman Inviato 26 Aprile 2021 Inviato 26 Aprile 2021 Ciao, da riga di comando è molto semplice. Io solitamente lo faccio da Linux, ma credo che tu possa fare la stessa cosa anche da MAC, puoi usare anche un raspberry, ma ovviamente ci vorrà più tempo. Puoi installare il programma ffmpeg per la conversione, se vuoi ti passo il comando che mi sono fatto io.
franz159 Inviato 5 Maggio 2021 Autore Inviato 5 Maggio 2021 @foreman mi passeresti il comando che usi tu? 🙂
foreman Inviato 5 Maggio 2021 Inviato 5 Maggio 2021 @franz159 Certo! Guarda questo te l'ho fatto al volo, non ho avuto modo di provarlo, provalo e fammi sapere. #!/bin/bash SAVEIFS=$IFS export IFS=$'\n' for file in $(find . -name "*.flac"); do IFS=$SAVEIFS echo "Converting file $file..." ffmpeg -i "$file" -q:a 0 -map_metadata 0 -id3v2_version 3 "${file%.flac}.mp3" cd - > /dev/null done In pratica se lo lanci da una directory, lui da li in giù converte tutti i file mp3 che trova (mettendoli nello stesso path degli originali). Se vuoi cambiare destinazione fammi sapere che modifichiamo. 1
franz159 Inviato 5 Maggio 2021 Autore Inviato 5 Maggio 2021 @foreman Grazie MOLTISSIMO, va benissimo.... appena riesco provo e ti faccio sapere, ma dovrei riuscire a cavarmela....
UpTo11 Inviato 5 Maggio 2021 Inviato 5 Maggio 2021 56 minuti fa, foreman ha scritto: cd - > /dev/null Questa riga non mi torna. Non cambia directory in precedenza, perché dovrebbe tornare alla directory precedente ad ogni iterazione?
foreman Inviato 5 Maggio 2021 Inviato 5 Maggio 2021 @UpTo11 hai ragione, non serve! Ho fatto copia e incolla tra due script e mi è rimasto quel refuso!
franz159 Inviato 6 Maggio 2021 Autore Inviato 6 Maggio 2021 @foreman qualche piccolo aggiustamento in termini di logging e per forzare l'output a 44100, ma adesso ho lo script pronto! Testato su un folder con subfolders per circa 400 files. Grazie ancora!!! Domani comincio il processing di 832Gb di musica "leggera". (ma rigorosamente non "leggerissima" 🙂 ).... vediamo un po' come va!
foreman Inviato 6 Maggio 2021 Inviato 6 Maggio 2021 Alla faccia! Ripensadoci, forse sarebbe comodo creare i file convertiti una cartella di output mantenendo alperatura originale. Se non erro nelle opzioni si ffmpeg che ti ho passato crea un file a bitrate variabile. Quando hai trovato la "quadra" direi di pubblicarlo qui, così magari anche altri utenti possono giovarne.
UpTo11 Inviato 6 Maggio 2021 Inviato 6 Maggio 2021 5 ore fa, franz159 ha scritto: per forzare l'output a 44100 Trattandosi di MP3 potrebbe essere pignoleria, ma occhio che il resampler predefinito di ffmpeg non è il massimo e se non ricordo male non applica il dithering di default. Puoi attivare il resampler soxr in ffmpeg che supporta anche il dithering: -af aresample=44100:resampler=soxr:precision=28:osf=s16:dither_method=triangular Come dither_method poi scegliere anche lo shibata. Sarebbe da capire però se i file già a 44100 sono passati invariati dal resampler/dithering, ad esempio provando con e senza sullo stesso file e confrontando l'output. Infine, si potrebbero sfruttare più core della CPU lanciando diverse conversioni in parallelo. Quando posti il comando finale posso provare a darci un'occhiata in questo senso.
UpTo11 Inviato 6 Maggio 2021 Inviato 6 Maggio 2021 Allora, per convertire più file contemporaneamente, sfruttando le CPU multicore, è possibile usare GNU parallel da linea di comando. È uno script di perl che si può installare facilmente su qualsiasi Linux, Windows (Cygwin) o Mac (MacPorts, Brew, ecc...). È possibile scegliere quanti processsi di conversione eseguire contemporaneamente con l'opzione -j N di parallel. Se non viene specificata parallel esegue un numero di processi di conversione pari al numero di core presenti sulle CPU. Nei miei esempi qui sotto ne uso 4 (-j 4 nella riga di comando). La conversione si riduce ad una unica linea di comando da eseguire nella cartella principale, quella che contiene i file FLAC, anche organizzati in sottocartelle. Il comando conserva comunque la struttura delle cartelle. La prima versione che vi mostro converte i file salvando gli MP3 in una directory diversa da quella dei file FLAC, ma mantenendo comunque la struttura delle cartelle. I file FLAC originali sono conservati, non vengono rimossi. Ad esempio se i FLAC da converitre si trovano in una cartella di nome FLAC, i file MP3 saranno creati in una cartella di nome MP3 a fianco della FLAC: cd /percorso/alla/cartella/FLAC OUTDIR="../MP3" find . -type f -iname "*.flac" -print0 | parallel -0 --eta -j 4 -a - "[ -d ${OUTDIR}/{//} ] || mkdir -p ${OUTDIR}/{//} ; ffmpeg -v 8 -i {} -vn -dn -sn -q:a 0 -c:a libmp3lame -map_metadata 0 -id3v2_version 3 ${OUTDIR}/{.}.mp3" Modificando la variabile OUTDIR potete creare i file MP3 dove vi è più comodo. La seconda versione invece, converte i file FLAC in MP3 nella stessa cartella, cancellando i FLAC una volta convertiti. Quindi il risultato finale avrà la stessa struttura delle cartelle, ma file MP3. Questa versione conserva qualsiasi altro tipo di file presente, ad esempio immagini di copertina, libretti PDF, CUE sheet, ecc...: cd /percorso/alla/cartella/FLAC find . -type f -iname "*.flac" -print0 | parallel -0 --eta -j 4 -a - "ffmpeg -v 8 -i {} -vn -dn -sn -q:a 0 -c:a libmp3lame -map_metadata 0 -id3v2_version 3 {.}.mp3 && rm -f {}" Le ho testate entrambe su circa 50 GB di file FLAC, oltre 3200 file in totale. Gli argomenti del comando di conversione con ffmpeg possono essere modificati a piacere, ad esempio forzando il resampling come accennato nei post precedenti.
franz159 Inviato 7 Maggio 2021 Autore Inviato 7 Maggio 2021 @UpTo11 Grazie ancora per tutti gli input. Alla fine, per ora, ho usato lo script inizialmente fornitomi da @foreman con le poche modifiche che ho indicato qualche post addietro. Per riferimento lo trovate qui: http://www.francescomoretta.com/foto/varie/melius/convert2mp3.sh.txt Per eseguirlo, va ovviamente tolto il ".txt" finale dal nome, aggiunto solo per facilità di visualizzazione da web. Lo lancio nel folder "padre" così per conservare standard output e standard error in un log: ./convert2mp3.sh > convert2.log 2>&1 Ho creato una copia iniziale della struttura di folder da convertire (praticamente /folder-iniziale/artista/album) in un altro folder, così da poter cancellare ogni flac non appena convertito in mp3. Il tutto è in "cottura"... Ieri, in 9h 30 minuti, dalle 9:30 am alle 19:00 ho convertito sul mko mac i primi 12987 file, circa 22 al minuto. Oggi secondo round, 1478 conversioni so far... 🙂
Messaggi raccomandati
Crea un account o accedi per lasciare un commento
Devi essere un membro per lasciare un commento
Crea un account
Iscriviti per un nuovo account nella nostra community. È facile!
Registra un nuovo accountAccedi
Sei già registrato? Accedi qui.
Accedi Ora