viernes, 30 de mayo de 2008

Abrir con Audacity WAV comprimidos con el códec DVI ADPCM



Mi reproductor de MP3 tiene la funcionalidad de grabar audio. Se trata de un Titán de 2Gb con un chip Samsung. No es un lujo, pero la verdad que graba muy bien.

Los archivos los guarda en un formato WAV, comprimido, con un códec de Intel/DVI. ¿Por qué no los guarda en un WAV ordinario? La respuesta es simple: los archivos WAV ordinarios no tienen compresión, por lo tanto las grabaciones pesarían muchísimo. Podríamos grabar muy pocos minutos. ¿Y por qué no MP3 (si es un reproductor de MP3)? Bueno, me imagino que el problema será el de la velocidad. Supongo que este bicho irá comprimiendo a medida que captura el sonido. El códec que el Titán usa es el Intel/DVI ADPCM (Adaptive Differential Pulse Code Modulation) que es extremadamente rápido y efectivo: 2 horas y 21 minutos entran en 33893376 bytes (32,3 Mb). Como todos los formatos ADPCM logra la reducción de espacio mediante pérdida de información, que no afecta a nuestra capacidad auditiva.

Vayamos al grano. El otro día me bajé el Audacity, aplicación open source muy popular para grabar y editar sonido, con la idea de cortar algunos silencios en la grabación que tomé de una clase en la Facultad, y me encontré con la sorpresa de que Audacity no podía abrir estos WAV. Al querer abrir el archivo, un pop-up decía: "Error al importar: Audacity no reconoce este tipo de archivo. Si está descomprimido, intente importarlo usando Importar archivo en bruto".

Intenté lo que sugería el pop-up y por supuesto no funcionó. ¿No sería porque el archivo sí estaba comprimido?

Paso siguiente, consulté la wiki de Audacity y encontré que en http://audacityteam.org/wiki/index.php?title=WAV decía esto:

"the type of WAV files typically used in portable recorders with limited memory and/or disk space are often some kind of compressed ADPCM file inside a WAV container. Many software programs including Audacity can have problems with these sort of WAV files."

Conclusión: Audacity reconoce que no puede abrir y mucho menos manipular archivos de audio con este tipo de códecs, así que la solución que proponen es convertirlo a un WAV ordinario, sin compresión.

Ésta es la parte que seguro querías leer si llegaste hasta acá. ¿Cómo abrir este archivo con Audacity? Bueno, no sé, y no creo que se pueda. Por eso el título de este post es engañoso. Pero sí voy a dar una solución: Cómo convertir un archivo WAV comprimido con el códec Intel/DVI ADPCM a un archivo WAV sin compresión. O mucho mejor: a un MP3.

Paso 1: Descomprimir el archivo en un WAV ordinario.

Esto se puede hacer con algunos programas open source que andan dando vuelta. Yo usé uno de los que recomiendan en la wiki de Audacity. Para Windows se puede usar SuperPlayer, para Mac FFMPEGX y para Linux el mplayer.

Como tengo Ubuntu, me descargué el mplayer. Ya que es parte de la distribución, simplemente abriendo la consola y tipeando:

sudo apt-get install mplayer

Ya tenía el mplayer funcionando... El comando para descomprimir el WAV comprimido con el códec en cuestión es:

mplayer -ao pcm archivo.WAV

(Donde archivo.WAV será el audio que queremos descomprimir.)

La ejecución de esta linea genera un archivo llamado: audiodump.wav, que es el archivo descomprimido. Si no nos molesta el tamaño descomunal que tiene podemos quedarnos conformes así, ya que Audacity ya lo abre y lo puede editar sin problemas.

Paso 2: Pasar de WAV a MP3

Como yo no estoy conforme con lo que pesa este archivo (imaginen lo que puede pesar un WAV ordinario de 2 horas y media), voy a convertirlo a MP3, formato de archivo que también puedo manipular tranquilo con el Audacity.

El programa por excelencia para codificar en MP3 archivos WAV es el Lame. También parte de la distribución de Ubuntu, así que:

sudo apt-get install lame

Luego, para ejecutarlo:

lame audiodump.wav salida.mp3

¡Y listo! Ya tengo mi mp3 de tamaño moderado y manipulable por Audacity.

Nota: Para los que tengan Windows, van a tener que investigar cómo se descomprime el WAV con el SuperPlayer. El resto es igual. El Lame también está disponible para Windows y pueden ejecutarlo desde una consola DOS de la misma forma. (También hay una forma de incorporarlo como plugin al Audacity, mediante la dll correspondiente.)

Espero que les haya servido.

Por un mundo más libre!
Salud!