Convirtiendo archivos AMR a MP3

Le ha pasado que sus usuarios reciben un archivo atachado en un e-mail que resulta haber sido enviado desde un Blackberry, iPhone o Andorid, que contiene un "importante" mensaje pero que según sus usuarios está corrupto porque no pueden abrirlo y culpan a tu servidor de correo, o le pides a alguien que te envié en nuevo mensaje de bienvenida para el PBX que sólo acepta WAV o MP3 como formato y reciber un archivo con extensión AMR. Pues a mi me ha estado pasando muy a menudo, así que he decidio escribir un mini-howto de como personalizar una versión de FFmpeg para soportar la conversión de AMR to MP3.

Por defecto FFmpeg no soporta ni AMR, ni MP3 en la mayoría de distros (en realidad las principales) por la sencilla razón de que ambos son formatos propietarios e incluirlos por defecto, más alla del hecho de que va contra el espiritu del Open Source, sería una violación de patentes y términos de licencia, que las comunidades que soportan dichas distribuciones no pueden hacer ya que se verían expuestas a demandas legales. Eso no quiere decir que para tu uso particular no puedas compilar desde las fuentes para obtener una versión de FFmpeg que tengas los codecs de ambos formatos.

Pues bien comencemos con el mini-Howto.

Primero, debemos descargar e instalar la librería x264 (Aquí sólo mostramos los comandos que debe tipear):

# cd /usr/src
# git clone git://git.videolan.org/x264.git
# cd x264
# ./configure
# make   
#make install
#ldconfig

Ahora, debemos descargar e instalar la librería que dará soporte al formato arm llamada opencore-amr:

# cd /usr/src
# wget http://downloads.sourceforge.net/project/opencore-amr/opencore-amr/0.1.2/opencore-amr-0.1.2.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fopencore-amr%2Ffiles%2F&ts=1285678081&use_mirror=surfnet
# tar -zxvf opencore-amr-0.1.2.tar.gz
# cd opencore-amr-0.1.2
# ./configure
# make all
# make install

Seguimos con los requerimientos, ahora a descargar e instalar la librería que da soporte al mp3 que se llama LAME:

 # cd /usr/src
# wget http://downloads.sourceforge.net/project/lame/lame/3.98.4/lame-3.98.4.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Flame%2Ffiles%2Flame%2F&ts=1285677746&use_mirror=softlayer
# tar -zxvf lame-3.98.4.tar.gz
# cd lame-3.98.4
# ./configure
# make all
# make install

 Ya tenemos todas las dependencias ahora a instalar FFmpeg desde las fuentes y activando el soporte para AMR y MP3:

# cd /usr/src
# svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg-svn
# cd ffmpeg-svn
# ./configure –enable-gpl –enable-pthreads –enable-libx264 –enable-libmp3lame –enable-version3 –enable-libopencore-amrnb –enable-libopencore-amrwb
# make all

Listo ya tenemos el binario que necesitamos, pero para evitar problemas y que esté en conflicto con otras versiones de ffmpeg que puedan estar instaladas le vamos a cambiar el nombre y luego moverlo manualmente a "/bin"

# mv ffmpeg ffmpeg+amr+mp3
# cp ./ffmpeg+amr+mp3 /bin

Listo ahora ya podemos convertir el formato de los archivoc de AMR a MP3 de la siguiente manera:

$ ffmpeg+amr+mp3 -i file_name.amr file_name.mp3

Espero les sea de utilidad este información.

Portal cautivo WifiDog

Internet se ha vuelto más ubicuo en los últimos años, el abaratamiento del acceso de banda ancha a través de ADSL y cable ha llevado Internet a casi cualquier rincon en una ciudad, si a eso le añadimos la proliferación de routers que traen incorporado el acceso wi-fi, es posible que en zonas densamente pobladas no haya un sólo centímetro cuadrado sin cobertura Internet, todo lo anterior sin considerar el continuo abaratamiento en los precios de acceso 2G y 3G a través de celulares.

Muchas empresas, especialmente aquellas que dependen del tráfico de público como restaurantes, cafés u hoteles, ofrecen acceso gratuito a sus access point a través de una contraseña que se entrega a los clientes, este método no siempre es el más apropiado ya que el hecho de que la contraseña no sea actualizada frecuentemente y que sea distribuida verbalmente abre la posibilidad de que esta sea usada potencialmente por personas que no usaran los servicios del establecimiento comercial.

WifiDogUna forma alternativa de controlar el acceso es através de portales cautivos, dentrol de los muchos que hay he encontrado que WifiDog es uno de los más completos y fáciles de implementar, además de ser uno de los pocos que permiten la administración de múltiples nodos a través de un sólo control panel.

Wifidog es un producto Open Source desarrollado por la comunidad de hotspots públicos de Quebec (Canadá)  Île Sans Fil ("Isla inalámbrica"). Cómo todo portal cautivo tiene dos partes, el servidor de autenticación y el gateway. El servidor de autenticación está hecho en PHP y usa PostgreSQL como su motor de base datos, además de estar desarrollado en base a Smarty, con lo cual es muy sencillo cambiar el look del site por defecto. El gateway está programado 100% en C y utiliza sólo llamadas estándar de Linux, con lo cual puede ser integrado en cualquier servidor que haga de firewall o routers compatibles con los proyectos DD-WRT, OpenWRT y Tomato. Yo lo he probado con DD-WRT v2.4 y funciona sin mayores problemas, ya que la parte gateway de Wifidog está ya incluída en la versión standard.

Una de las características interesantes de Wifidog, es que permite que sea el propio usuario que registrándose con su dirección de correo electrónico gane acceso al hotspot, además que nos permite definir cuantos usuarios concurrentemente deseamos soportar a través de cada nodo wifi (por defecto son 10). Ya que tenemos una dirección de correo electrónico podemos posteriormente enviarle ofertas y promociones a nuestros usuarios, además gracias a su muy detallado sistema de estadísticas podemos identificar los 10 usuarios más móviles, los 10 más frecuentes, los 10 que usan más ancho de banda, etc., con lo que la administración de múltiples hotspot se vuelve bastante sencilla. En dos palabras "super recomendable", para todo negocio que tenga más de un local comercial y un hotspot público en ella. Otra alternativa es que permite crear un red de hotspot federados de negocios independientes pero relacionados al mismo rubro que pueden promover sus actividades de manera conjunta a través de ofrecer el acceso público wifi, ya que una cuenta de acceso creado en WifiDog permite que el usuario se conecte en cualquiera de los nodos que forman parte de la misma red y en cada nodo verá el logo del negocio que le está brindando el acceso en una determinada ubicación geográfica.

Más allá del deseo

Aunque el título de este post pudiera parecer el de una película porno de finales de los setenta, en realidad deseo comentar sobre los múltiples fallidos intentos de la comunidad Linux de querer convertir a Linux en el sistema operativo de nuestro escritorio.

El último de tales intentos fue la migración de todas las PCs de la administración pública del cantón suizo de Soleura, que hace 9 años inició el ambicioso proyecto de desterrar Windows de los escritorios de su administración pública, el día de hoy a través de Slashdot, me enteré de que han decidido abandonar completamente el proyecto y volver a Windows 7 para el 2011.

Roconozco, que yo desde hace mucho también he sido uno de los que anunciaban la llegada de la era del pinguino a los escritorios, tal vez el momenton que más cerca estuvo Linux de ser un sistema operativo de masas fue con la llegada de las netbooks, a finales del 2007, pero las cosas han cambiado radicalmente y la misma supervivencia del PC (con Windows, Linux u OS X) está gracias a los smartphones y tables ahora en duda, si alguien lo duda les recomiendo que le den una lectura a las declaraciones de Bryan Dunn CEO de Best Buy (la cadena de almacenes de electrónica de consumo más grande en U.S.A.), que señala al iPad como una de las razones de la rápida caída en ventas de netbooks, según Wall Street Journal.

El querer que todos tengan en sus escritorios Linux como sistemas operativo y Open Office como su suite de escritorio, es como querer que todos manejemos un tractocamion, claro no hay cosa que no podamos remolcar, pero el entrenamiento suele ser largo y no todos están listos para tanto poder.

Los que hayan leído este blog sabrán que aunque soy un fan de Linux, no soy un taliban de Linux, es decir no soy un fundamentalista como Stallman que cree que el infiel debe convertirce o perecer. Linux es ante todo una tecnología como su mismo creador Linus Torvalds ha dicho repetidas veces, y como tal tiene un ciclo de vida.

Claramente hay una línea divisoria en las aplicaciones modernas, el cliente (casi siempre un browser o algo similar) y el servidor. Mientras Linux es y probablemente siga siendo el rey en el sector de los servidores web, por otro lado en el lado del cliente nos hemos estado moviendo del polifuncional PC a los smartphones primero y ahora con increíble rapidez a las tablets, de las cuales el iPad es sólo una de las muchas opciones que hay.

¿Podrá llegar Linux en algún momento a tomar el escritorio?, en estos momentos me parece una pregunta sin sentido, ya que la existencia misma del escritorio como lo conocemos está en duda. Al final si usas un Nexus One o un Samsung Galaxy Tab, estás usando Linux en última instancia. Aunque no uses ni las X, ni KDE o GNOME.

Es necesario más pragmatismo en las comunidades Open Source y menos fanatismo y sobervia, ya que actualmente los más activos "colaboradores" de proyectos Open Source, no son los tan valiosos y necesarios programadores sino los "Evangelizadores".

Copia hasta superar al original

Ayer Google presentó "Instant Search", la forma como lo presentó, es decir con gran cobertura de medios y con el mismo Sergey Brin entre los panelistas que dieron la cara a la prensa, nos haría pensar que esto es algo único, revolucionario, una prueba más de la infinita capacidad de innovación de Google. Sin embargo hoy día Stephen Hood en un tweet nos hizo recordar que la idea ya había sigo explorada entre el 2005/2006 por Yahoo!. Aquí el video en cuestion que lo probaría:

 

 

Pero este post no es sobre si las búsquedas instantáneas, predictivas, asistidas o como querramos llamarlas es una idea original, sino sobre una filosofía mucho más profunda que el fundador de Zynga, Mark Pincus les dijo a sus empleados en una reunion de trabajo:

"I don’t fucking want innovation. You’re not smarter than your competitor. Just copy what they do and do it until you get their numbers." (fuente: SFWeekly)

La traducción: "No quiero la maldita innovación. Ustedes no son más inteligentes que sus competidores. Sólo copien lo que ellos hacen y haganlo hasta que ustedes obtienen sus números."

Y Zynga ha llegado a ser la empresa líder en juegos sociales, sencillamente copiando a sus rivales. Este no es un ejemplo único dicho sea de paso, obviamente habrá quien dirá que Microsoft copio a Apple y que Apple copio a Xerox. Pero incluso estó va mucho más alla, ya que Japón en sólo cincuenta años consiguió lo que a Europa le tomo doscientos, sencillamente porque copió la revolución industrial, no trató de ser original y crear una nueva revolución industrial.

A veces la mayoría de ideas de negocios fallan por el escrúpulo de querer ser 100% original, al parecer la famosa frase de Mariategui "ni calco, ni copia, sino creación heroíca", como tantas otras que acuño y que suenan bonito a un punto tal que nos emocionan, resultan ser simplemente una forma de poesía y no una guía para tratar de conseguir que algo funcione. Por otro lado la frase de Pincus encirra en si misma la belleza brutal de lo simple y la prueba de la realidad.

La razón de que la mayoría de las nuevas ideas fallan, es justamente debido a que son nuevas. Por otro lado la mayoría de las personas que creen tener buenas ideas en realidad no las tienen y por eso sus ideas fallan. Sin embargo por simple probabilidad entre tantos ideas fallidas algunas habrán que realmente valen su peso en oro, pero están enterradas en algún lugar o envueltas en otras ideas menos interesantes. El plan de juego para un emprendedor es pues, no inventar la piedra filosofal, sino escabar hasta encontrar el oro.

Es más está idea no es nueva y se aplica también en el software libre, no en vano Erich S. Raimond acuño la frase: "Los buenos programadores saben qué código escribir. Los grandes programadores saben qué código reescribir" (La Catedral y el bazar).

Me pregunto si está lógica fuera cierta, una interpretación para lo absurdo que puede parecer ser el mundo en el que vivimos sería, que en realidad Dios no creo el mundo, sino que el diablo fue el que lo creo. Lo que estaría haciendo Dios es sencillamente copiar hasta perfeccionar. 😉

Un fracaso más que importa (2)

Aunque el título del presente post ya es repetido y nos puede recordar la primera frase del popular vals de Juan Mosto "Que importa", que fuera popularizado por Lucha Reyes y que usualmente es usado cada vez que se habla de fútbol (otro de los grandes temas de fracaso nacional), no se preocupen, no hablaré ni de fútbol o amores no correspondidos. Por el contrario les hablaré de tecnología y como el deseo o las buenas intenciones no son suficientes para resolver problemas.

En este blog hace mucho que no tocaba el tema de la OLPC, durante ciertos momentos del 2007 y del 2008, este era un tema recurrente porque se dicutía sobre la implementación del proyecto y los tremendos beneficios que traería a la educación peruana, aquellos que hayan seguido este blog recordarán que siempre fui bastante crítico del proyecto (todos los post relacionados al OLPC), en la forma y fines que fue presentado.

Bueno luego de 3 años de experimentación/implementación lo único que ha quedado claro es que, el famoso programa de "Una laptop por niño", se terminó convirtiendo en siete niños por latop (según OLPCNews) y con reportes de que luego de dos años de uso un porcentaje significativo de las laptops no están operativas por falta de mantenimiento o repuestos, pareciera poco racional que el gobierno siga insistiendo en el proyecto y ahora planee comprar más XO-1.5 para distribuirlas en las escuelas secundarias, según informa la agencia de noticias oficial Andina.

Aunque muchos no lo puedan creer (es más yo no lo puedo creer), el Perú se convertirá en el líder mundial en cuanto a adquisición y despliegue de OLPC, ya se poseeían 260,000 laptops, pero se han adquirido 300,000 laptops más con lo cual se supera las 400,000 que Uruguay (el actual líder mundial) ha desplegado. La pregunta obvia es si hay algún estudio del Ministerio de Educación que demuestre que hay una mejora luego de dos años con el proyecto para poder evaluar la conveniencia o no de seguir con el mismo, y la respuesta obvia es que no lo hay.

El Perú, al igual que la mayoría de países latinoamericanos, es un país de fé. El Perú tiene fé que comprando las laptops, todos los problemas estructurales del sistema educativo peruano como un profesorado no entrenado apropiadamente, altamente politizado, carente de motivación y una infraestructura educativa muy mal mantenida y llena de carencias, desapareceran gracias a las maquinitas verdes. Al parecer como los problemas no han desaparecido, se concluyó que la razón debe ser porque han faltado más laptops y ahora hay que incluir a secundaria, ciertamente un acto de fé que quisiera compartir; eso y también el optimismo que veo en muchos de mis compatriotas tienen cada vez que comienza una rueda clasificatoria mundialista, que sin ser Nostradamus o el pulpo Paul todos sabemos como terminará para nosotros.

Estamos dilapidando el poco dinero que el estado ha podido ahorrar en estos últimos años de bonanza minera en proyectos que difícilmente podrán cambiar la situación del promedio de la población, simplemente porque no es cuestión de voluntad política, ni de gasto social. Es cuestión de sentido común y corregir el rumbo si se detecta que algo está mal, lamentablemente en una sociedad en la cuál se le dá tanto peso a la fé, un error no es visto como una oportunidad de aprender, sino por el contrario la prueba de que todo lo que hiciste, haces y podrías hacer está mal. Es por ello que un fracaso más no importa, ya que al final todo es cuestión de fé.