Aprendiendo a escribir scripts. Convertimos ficheros WMA en ficheros MP3

Desde que comencé a usar GNU/Linux me picó la curiosidad por saber desarrollar mis propios scripts con bash. Las cosas más básicas las se, pero siempre he querido aumentar mis conocimientos del tema y he de reconocer que no he podido ponerme. Cuando no hay necesidad o incentivación (económica, laboral o estudiantil) las cosas las dilata uno en el tiempo, dejando pasar a los procesos prioritarios.

Tras esta parrafada, os comento acerca de un script para convertir archivos de audio, de formato WMA a MP3, que he encontrado en DiarioLinux, aunque originalmente apareció en LinuxQuestions. A parte de la utilidad que pueda llegar a tener, me ha llamado la atención porque creo que es un buen método para que todos nos introduzcamos un poquito más en ese campo en el que nuestro sistema operativo favorito gana por goleada, el de la consola y la programación de scripts para ser interpretados con ella. Sin lugar a dudas, un ejemplo práctico y útil, hace más fácil esta labor.

Expliquemos el proceso en español:

  1. Creamos un archivo llamado wmamp3
  2. Copiamos este código:
  3. #!/bin/bash

    current_directory=$( pwd )

    #remove spaces
    for i in *.wma; do mv "$i" `echo $i | tr ' ' '_'`; done

    #remove uppercase
    for i in *.[Ww][Mm][Aa]; do mv "$i" `echo $i | tr '[A-Z]' '[a-z]'`; done

    #Rip with Mplayer / encode with LAME
    for i in *.wma ; do mplayer -vo null -vc dummy -af resample=44100 -ao pcm -waveheader $i && lame -m s audiodump.wav -o $i; done

    #convert file names
    for i in *.wma; do mv "$i" "`basename "$i" .wma`.mp3"; done

    rm audiodump.wav

  4. Guardamos el fichero
  5. Le damos permiso de ejecución: chmod +x ~/wmamp3
  6. Podemos copiar este archivo a /bin para que este disponible directamente sin marcar la ruta (recordad que tenéis que hacerlo como superusuarios)
  7. Podemos dirigirnos ya al directorio que contenga los archivos en el formato de audio de Microsoft y pasarlos con sólo escribir wmamp3.

Es muy útil para automatizar procesos que solemos repetir mucho este tipo de scripts. Pueden llegar a ahorranos mucho tiempo (más aún que cualquier interfaz gráfico).

Comentarios

carazo:

Si tenéis más scripts de este tipo que os resulten útiles, ponedlos aquí para que todos podamos disfrutar de ellos.

Enviar un comentario nuevo

El contenido de este campo se mantiene privado y no se mostrará públicamente.
CAPTCHA
Esta pregunta sirve para protegernos del spam.
 __     __         ____   __     __          ____  
\ \ / / ___ / ___| \ \ / / __ _ | ___|
\ \ / / / __| \___ \ \ \ / / / _` | |___ \
\ V / | (__ ___) | \ V / | (_| | ___) |
\_/ \___| |____/ \_/ \__,_| |____/
Enter the code depicted in ASCII art style.