
Nel preparare una compilation di mp3 per una festa di miei amici mi sono imbattuto in vari problemi, ma con l’aiuto di Google li ho risolti nel giro di poco.
Li riporto qui con le soluzioni:
Convertire una cartella di file MPC in MP3
su un sito francese ho trovato queste due righe comode e veloci:
for a in *.mpc; do n=`echo $a| cut -d. -f1`.wav;mppdec$a$n;done for a in *.wav; do n=`echo $a| cut -d. -f1`.mp3;lame -h$a$n;done
l’unico requisito è di aver installato mppdec, che è il decoder per i file MPC e si trova qui.
Il problema di queste due righe è che non funzionano se nei nomi dei file ci sono spazi o simboli, così ho trovato questo semplice script per toglierli (toglie anche le maiuscole…):
for f in *; do
file=$(echo $f | tr A-Z a-z | tr ' ' _)
[ ! -f $file ] && mv "$f" $file
done
Codificare da CD in mp3 con Sound Juicer:
bisogna aver installato il giusto plugin di Gstreamer, che è “lame” e si trova nel pacchetto gstreamer0.10-plugins-ugly-multiverse (in Dapper).
Una volta installato, dalle preferenze di Sound Juicer si sceglie “Modifica Profili” -> “Nuovo” e si crea un profilo con i seguenti dati:
nome: MP3 160 Kb/s CBR
pipeline Gstreamer: audio/x-raw-int,rate=44100,channels=2 ! lame name=enc vbr=0 bitrate=160
estensione: mp3
attivo: [x]
oppure, per codificare con bitrate variabile:
nome: MP3 VBR
pipeline Gstreamer: audio/x-raw-int,rate=44100,channels=2,vbr-quality=5! lame name=enc
estensione: mp3
attivo: [x]
Cambiando il parametro vbr-quality si varia la qualità della compressione, da 0 per la massima fino a 9 per la minima. Il valore di default (omettendo il parametro) è 5.
Per abilitare anche gli id3 v2.4 basta aggiungere in fondo alle pipeline di gstreamer quest’altro comando (grazie Roberto):
! id3v2mux
sarà sufficiente poi selezionare uno di questi profili in Sound Juicer per codificare in MP3.
nota: a volte è necessario riavviare Sound juicer perchè un profilo funzioni
-aggiornamento: a richiesta inserisco la pipeline per codificare in m4a con Sound-Juicer:
nome: AAC lossless
pipeline gstreamer: audio/x-raw-int,rate=44100,channels=2 ! faac ! ffmux_mp4
estensione: m4a
attivo: [x]
Ci tengo a precisare che con il plugin ffmpeg attuale di Gstreamer in Ubuntu Edgy (gstreamer0.10-ffmpeg, versione 0.10.1) i muxer sono disabilitati, quindi la pipeline non funziona. In Ubuntu Feisty ci sarà la versione 0.10.2 con i muxer abilitati, sempre che i problemi legali legati ai formati proprietari non costringano a disabilitarne la compilazione.
Se quello che serve però sono degli AAC che suonino in un iPod, gli sviluppatori di Gstreamer sul canale irc mi hanno consigliato quest’altra pipeline, che in una buona percentuale dei casi dovrebbe funzionare:
audio/x-raw-int,rate=44100,channels=2 ! faac outputformat=1 profile=LOW name=enc
Purtroppo non ho un iPod per provare, quindi non posso dire di più.

non ciò capito niente
In effetti almeno la prima parte non è molto chiara, almeno per chi non ha un minimo di dimestichezza con la riga di comando…
“Codificare in mp3 con Sound Juicer…”
Grazie e complimenti per la sintesi
Grazie per la dritta sui parametri da passare a SoundJuicer che secondo me e’ ottimo e va piu’ veloce di Grip
…non c’è di che, tanto più che li ho postati soprattutto per ricordarmeli in futuro
E per estrarre tracce audio da un cd in apple lossless? Magari anche protetto!?
Naturalmente senza usare iTunes. (Mi manca tanto)
Grazie per le dritte, dopo aver scaricato mppdec sono riuscito a convertire dei files .mpc in files .mp3.
ciao
Nelle pipe di Gstreamer degli mp3 io aggiungerei ” ! id3v2mux” come consigliato dalla guida di gstreamer presente in Ubuntu.
Così aggiungi anche gli id3v2.4
(non sapevo che per avere la VBR in mp3 bastasse non mettere parametri al codec… sono mesi che cerco di capire come si fa: ed era così semplice!!! lol)
@Roberto: Grazie, aggiorno subito
in un sol colpo:
for a in *.mpc; do n=`echo $a | cut -d “.” -f 1`; mppdec “$a” | lame -h -b 192 – “$n.mp3″; done
enjoy
@sigkill: ed è proprio un bel colpo! Grazie
Fantastico, mi è passato per le mani oggi per la prima volta un album in formato mpc e in 5 minuti stava già diventando mp3…. fantastico!
Grazie delle info, non sapevo esistesse mppdec!
ah forse è bene dire che mppdec non supporta file che contengono spazi. (Quando la gente si deciderà ad usare nomi di file standard senza mille simboli assurdi?
)
Ermm… errore mio, è il ciclo for che non supporta file e directory che contengono spazi. Chiedo scusa
@TDFS: mi piace tutto questo entusiasmo! Comunque degli spazi l’avevo scritto, se leggi bene, e credo che il comando scritto qui sopra nel commento di sigkill funzioni anche con gli spazi, appena ho per le mani un mpc provo…
Per il problema degli spazi basta cambiare la variabile IFS
IFS=$’\n’
prima di eseguire i cicli, così prenderà come separatore solo il ritorno a capo.
Hello, wonderful and informative web site.
Bye.
ciao ulisse, mi hai segnalato questa tua guida in ubuntu-it ma non sapevi come determinare un min e un max per il VBR. ebbene ho trovato la soluzione qui: http://www.pizon.org/articles/adding-mp3-support-to-gnome.html . molto interessante e utile.
ciao.
@linux-info: grazie, aggiorno subito la guida
figurati =)
ps: hai sbagliato pipeline per il VBR. quella corretta per un VBR 128/256 é
audio/x-raw-int,rate=44100,channels=2 ! lame name=enc mode=0 vbr-quality=6