Registratori digitali e Linux (ovvero sox per convertire i file audio)

Informatica

Ecco un'altra occasione per mostrare perché GNU/Linux è bello...

L'altro giorno mio fratello è venuto con alcuni file WAV registrati con un piccolo lettore MP3 di produzione cinese, che apparentemente erano illeggibili con molti dei programmi che avevamo sul computer.

Perché? Erano registrati in Mono a 4 bit con una frequenza di campionamento di 8000 Hz, e probabilmente c'era qualche altro pasticcio che impediva la corretta manipolazione da parte con i programmi più diffusi, come audacity, kaffeine, totem, audaciuos, ... Insomma, non erano file WAV "normali".

Cosa fare? Ricorrere a sox, il coltellino svizzero dell'elaborazione audio in ambito GNU/Linux!

sox è un programma che ha un mare di funzioni ed è in grado di fare di tutto ai file audio (un po' come Imagemagick con le immagini): tagliare, mixare, invertire, aggiungere effetti, convertire tra diversi formati... tutto da riga di comando! Ha tantissime opzioni e la sua pagina man è lunga più di 1200 righe!

Fortunatamente per noi, sox è anche abbastanza intelligente nell'esaminare i file che gli diamo in pasto, e spesso è capace di decidere da sé la cosa giusta da fare. In particolare, noi volevamo trasformare i file registrati con il lettore MP3 in normali file WAV pronti per essere tagliuzzati, affettati, incollati con audacity e poi masterizzati su un CD audio senza ulteriori conversioni.

L'uso più semplice di sox è questo, per convertire un file in un formato in un altro formato, in base all'estensione del file "outfile":

$ sox infile outfile

In particolare, il comando:

$ sox -V rec01.wav rec01.cdr

Converte il file "rec01.wav" registrato con il nostro lettore MP3 in file in formato CD audio, cioè a 8 bit a 44100 Hz. L'opzione "-V" chiede a sox di essere "verboso" e di dirci tutto quello che sta facendo.
Poiché prima di metterlo sul CD vogliamo manipolare questo file con audacity, chiediamo a sox di convertirlo nel comune formato WAV con questo comando e di metterlo nella directory "conversioni" creata sotto la directory corrente (così da preservare gli originali):

$ sox -V rec01.cdr conversioni/rec01.wav

Ecco, in questo modo ci ritroviamo nella sottodirectory "conversioni" un file WAV, "rec01.wav", che finalmente funziona regolarmente!

E se abbiamo registrato molti file audio con il lettore MP3? Che ne so, 50? Dobbiamo fare questa operazione singolarmente per ogni file? (che noia!)
Fortunatamente no! Non siamo mica in MS Windows! :-)

Con GNU/Linux ci basta fare un piccolo script che faccia tutto per noi, e ci permetta di ripetere l'operazione tutte le volte che vogliamo senza perdere altro tempo!
Ecco quindi il piccolo script che ho preparato per rendere utilizzabili i file WAV registrati con il lettore MP3 incriminato. L'ho chiamato "regdig2wav.sh", e va eseguito nella directory dove si trovano i file registrati:

#!/bin/bash
# regdig2wav.sh
# converte tutti i file audio registrati con il lettore mp3 presenti nella
# cartella corrente in wav utilizzabili normalmente (usa sox)
# mette i file risultanti nella directory "convertite" creata automaticamente
#
mkdir convertite
for i in *.wav
do
sox -V $i convertite/$i.cdr
sox -V convertite/$i.cdr convertite/$i
rm convertite/$i.cdr
done
exit
#FINE

Trackback URL for this post:

http://gerlos.altervista.org/trackback/188

commenti

Invia nuovo commento

Il contenuto di questo campo è privato e non verrà mostrato pubblicamente.
  • Allowed HTML tags: <a> <em> <strong> <del> <cite> <code> <img> <ul> <ol> <li> <dl> <dt> <dd> <pre>
  • Linee e paragrafi vanno a capo automaticamente.
  • Insert Flickr images: [flickr-photo:id=230452326,size=s] or [flickr-photoset:id=72157594262419167,size=m].
  • Indirizzi web o e-mail vengono trasformati in link automaticamente

Maggiori informazioni sulle opzioni di formattazione.

CAPTCHA
Per provare che sei un visitatore umano, rispondi a questa domanda. È per evitare l'inserimento di messaggi spam.
Image CAPTCHA
Enter the characters shown in the image without spaces, also respect upper and lower case.