martes, 21 de febrero de 2012

Ripeando cd de música desde consola. Algunos apuntes de Multimedia

Esta es prácticamente una entrada obligatoria en cualquier blog linuxero, y como se supone que ese es el motivo de este blog, ahí les va:

En el casi improbable caso que tengan un CD de música que les ande por allí y que quieran ripear en archivos mp3 -u ogg, que no esta nada mal-, y en vista que quizá ya estén tan acostumbrados a la consola que posiblemente estén leyendo esto desde links, lo que hay que hacer se resume en dos sencillos pasos.

Primero, hay que ripear propiamente todo el CD. Usamos cdparanoia desde Se hace así:
cdparanoia -vsZB
Donde v es el típico verbose de la mayoría de comandos. El s es para escanear donde hay un CD, y no es necesario si no tienes más que un lector.
B es la opción. Básicamente, es el único necesario para ripear. Pero le agregamos Z para que vaya más rápido evitando la verificación de datos y características de corrección de errores.
Ahora hay que convertir a mp3 propiamente dicho, pues lo que tenemos ahora son un montón de archivos wav que si bien es cierto son teóricamente la mejor calidad posible, son demasiado grandes.
Para convertirlo es necesario usar lame.
lame -hb 192 track01.cdda.wav track01.mp3
h es la opción de la esperanza. Trata de hacer un ripeo de calidad con valores predeterminados, y b es el famoso bitraje que le hemos seteado en 192. Si se setea a 160 por ejemplo, el peso del archivo disminuye un 16%, pero no he comprobado nada de la calidad con que queda.

Podemos darle más opciones para que salga algo más acabado. Veamos las etiquetas ID3 tag más interesantes.

--tt Titulo de la canción (30 caracteres máximo)
--ta Nombre del artista (30 caracteres máximo. Creo)
--tl Album     
--tn Número de track.
--tg Género

Por ejemplo, una canción podría ir de esta forma.
lame -h -b 192 --tt "Morningstar" --ta "Gehena" --tl \
"First Spell" --tn 5 track01.cdda.wav Gehena\ -\ Morningstar.mp3

Y bien, eso es todo por ahora. Lo puedes hacer en forma de script para varias canciones, vamos, esa es de las partes divertidas. Por ejemplo
for i in $(ls *.wav ); 
do 
  lame -h -b 192 --tt $(basename $i cdda.wav) --ta "Oradores" \ 
--tl "Vocabulario en Inglés" $i $(basename $i cdda.wav)mp3; done

Que logra su cometido. Alguien más avispado podrá resolver lo del nombre para cada uno... Algo con dialog, quizá...

Tomando en cuanta que se puede usar Rhytmbox, Banshee o EasyTAG para cambiar las etiquetas, creo que es bastante ayuda.

La fuente es esta. Incluso el script final, -que solo modifique un poco-.

Otros apuntes interesantes

Otros apuntes interesantes