Implementación libre de Flash pretende alcanzar y superar la versión de Adobe para Linux

Implementación libre de Flash pretende alcanzar y superar la versión de Adobe para Linux

LightSpark con profiling activado / Alessandro Pignotti

Una de las críticas a la tecnología Flash de Adobe es que es cerrada, o al menos esa una de las explicaciones de Jobs para no permitirlo en el iPhone.  Pero algo que no muchos saben es que Adobe publicó la documentación del formato de los archivos de Flash hace tiempo (SWF) y es posible que terceros creen reproductores compatibles con este formato de contenido.

Es así como el año pasado se inicia el proyecto Lightspark, en donde se tomó la documentación de Adobe para implementar la tecnología necesaria que permita usar este contenido en Linux aprovechando las capacidades del sistema. El usar esta documentación está demostrando ser un camino mucho más exitoso que el seguido por Gnash, respaldado por Free Software Foundation pero construido en base a ingeniería inversa.

Detrás de este proyecto está Alessandro Pignotti, quien hoy ha declarado que Lightspark ya puede ser considerado beta.  Aunque aún no se ha llegado al punto de poder reemplazar completamente el plugin de Adobe por Lightspark, ya es tiempo de que los usuarios comiencen a probarlo y reportar defectos.

El objetivo a largo plazo de este proyecto no es sólo proveer un reproductor de Flash libre, sino que también dar a la tecnología Flash la dignidad de un estándar abierto.  Creo realmente que Flash es una tecnología poderosa, siendo su principal debilidad el ser cerrada. (Alessandro Pignotti).

Las características distintivas de Lightspark son:

  • Render basado en OpenGL: Esto permite usar la aceleración por hardware para dibujar todo el contenido, en donde se incluye también y el video.  Es un poco menos eficiente que usar los mecanismos estándares de aceleración para el despliegue de video en Linux, pero permite implementar otros aspectos como filtros o zonas translúcidas en forma natural.  No lo menciona, pero perfectamente podrían agregar la decodificación por hardware también.
  • Soporte casi completo de ActionScript 3.0: Se trata del lenguaje introducido en Flash 9, y está implementado como una mezcla de lenguaje interpretado y JIT (Just in Time Compilation).  Las versiones antiguas del lenguaje por ahora se corren en una tecnología distinta y no tan pulcra como la que soporta ActionScript 3.0, pero afortunadamente la mayoría de los sitios están dejando atrás las versiones antiguas del lenguaje.
  • Gran parte de la biblioteca de Flash que las aplicaciones necesitan para hacer tareas típicas está implementada (ej. video render y procesamiento de XML), pero aún queda mucho por hacer.  Según Pignotti al menos es fácil trabajar en este aspecto y aunque no lo dice, es un espacio en donde se pueden involucrar rápidamente otros desarrolladores.
  • Un plugin compatible con Mozilla:  Flash es una cosa y el plugin del browser es otra.  Pignotti dice que ha tratado de hacer algo robusto pese a las limitaciones de correr como plugin, por lo que invita a los usuarios a reportar sus bugs.

Lightspark ya está disponible en un repositorio PPA para Ubuntu y los usuarios que lo han probado dicen que no está listo para reemplazar al plugin de Adobe, pero que al menos en algunas cosas funciona mucho mejor, sobre todo en la reproducción de videos.

Link: Lightspark, an innovative FLOSS Flash palyer, reaches Beta status (Technology Temple)