Si les dijera que Google está ayudado a financiar una versión optimizada para ARM del códec de video Theora, probablemente a muchos no les importe. Tal vez, si les dijera que ha corrido el rumor de que Google liberará VP8 algunos se hagan pis encima. No obstante, por lo general, los códecs de audio y de video son un clásico ejemplo de esas cosas que a nadie le importan, hasta que dejan de funcionar. |
Publiquemos videos que puedan ser reproducidos en cualquier dispositivo
Esa sí que es una bonita idea, pero muy difícil de alcanzar. Hasta el momento, no hay un método estándar para distribuir videos en internet. Algunos sitios usan Flash, pero esto restringe su audiencia a aquellos que tienen reproductores y plug-ins de Flash instalados, excluyendo de ese modo a todos los teléfonos móviles e incluso a otros dispositivos móviles (estoy pensando en los productos Apple: iPod, iPad, etc.). Algunos utilizan reproductores embebidos diseñados en Java, pero eso restringe su audiencia a aquellos que utilizan dispositivos lo suficientemente poderosos como para decodificar audio y video en una máquina virtual, excluyendo así a gran parte de las personas que usan laptops. Incluso algunos utilizan reproductores nativos embebidos (como el Windows Media Player), lo que reduce su audiencia a un único sistema operativo y automáticamente excluye a todos aquellos que utilicen alguno de los otros sistemas operativos populares (BSD, Linux, Unix, OS X, etc.). Finalmente, otros sitios sólo ofrecen sus videos como links y dejan el trabajo sucio al reproductor de video que el visitante tenga instalado en su máquina… eso si tiene la suerte de tener uno, y si ese reproductor soporta ese formato de video.
Ninguna de estas alternativas se acercan al objetivo de «funcionar sin esfuerzo» y ninguna de ellas pareciera llegar a hacerlo en el futuro. Nos guste o no, la profusión de diferentes dispositivos con acceso a internet dificultan aún más la tarea de alcanzar este objetivo. Allá lejos y hace tiempo, bastaba con comprobar que nuestro video podía ser reproducido en las PCs y las Macs. Ahora tenemos Android, ChromeOS, iPhoneOS, Linux, Maemo, Symbian y tantos otros. No sólo eso, además, tenemos que lidiar con procesadores de muy diferentes potencias, desde desktops hasta laptops, pasando por las netbooks, los PDAs y los teléfonos móviles. El problema está creciendo, no achicándose.
Afortunadamente, tenemos buenas noticias gracias a la introducción de HTML 5. Esta nueva versión de HTML (el lenguaje básico para escribir páginas web) introduce una etiqueta video.
Esto permitirá que los diseñadores web puedan crear sus sitios especificando la apariencia de los videos de una manera estándar. Cómo los exploradores de internet, en forma individual, implementan la reproducción de esos videos es algo que les concierne enteramente -ya sea que decodifiquen los videos ellos mismos o que utilicen reproductores embebidos o externos, la decisión final la tendrá el usuario y esto no forzará al creador del contenido a reducir sus opciones y la de sus visitantes. Las mejores noticias son que el soporte para esto ya está llegando –Firefox, Opera, Chrome y Safari ya están brindando un soporte parcial para HTML 5 y el resto de los exploradores probablemente en poco tiempo también lo harán.
¿Problema resuelto?
Bueno, lamentablemente, no. Contar con una forma consistente de publicar video es un gran comienzo, pero todavía queda el problema de qué formato utilizar. No hay uno que satisfaga todas las necesidades y preferencias. ¿Estamos navegando un sitio web utilizando un teléfono móvil con una pantalla pequeña? ¿O una netbook? ¿Una desktop PC? ¿O tal vez nuestro nuevo televisor HD? El tamaño de la pantalla, la velocidad de la conexión a internet y el poder del procesador afectan la elección. Del mismo modo que hemos visto cómo la calidad de los videos mejoró, pasando de VHS a DVD y de DVD a BluRay, el video en la web va a ser cada vez de mejor calidad.
Las tecnologías existentes (php, asp, javascript, etc.) permiten la creación a medida de las etiquetas de video utilizadas según los exploradores o dispositivos en uso. Sin embargo, lo que queda claro es que precisamos de una base desde la que trabajar, un formato en el que descansar si todo lo demás fracasa. Éste no precisa ser el formato más complejo, ni el más publicitado, ni siquiera tiene que ser el formato en cuyo desarrollo haya más compañías involucradas. Todo lo que se precisa es que se encuentre disponible libremente, en cualquier parte. El códec que puede cumplir este trabajo es Ogg Theora, una versión del códec VP3 lanzado al público por On2 hace algunos años. Funciona bastante bien tanto en lo que respecta a la calidad y los ratios de compresión, y ha obtenido resultados bien respetables en comparación con algunos de sus rivales más populares como MPEG4, siendo Ogg Theora mucho más fácil de decodificar. La característica más importante que lo hace sobresalir respecto de sus rivales es el hecho de que sea libre. No estamos hablando aquí solamente de que sea gratuito, sino libre. La especificación del stream y del código fuente del (de)codificador están disponibles para su descarga pública y pueden ser usados y modificados libremente por cualquier persona. Theora fue diseñado y es mantenido con el objetivo de evadir las patentes «privativas». Ningún otro códec puede acercarse a Theora en este punto: la ausencia de royalties.
Entonces, ¿qué falta?
La decodificación de video consume mucho procesador. De modo de poder cumplir con el sueño de que funcione en todos y cada uno de los dispositivos hace falta un esfuerzo bastante doloroso. La complejidad de Theora es sensiblemente menor que la de sus competidores; otros códecs frecuentemente requieren hardware dedicado en forma exclusiva para alcanzar sus objetivos, pero con un desarrollo cuidadoso, Theora puede ser utilizado sin que esto sea necesario. De hecho, en desktops y laptops la decodificación en tiempo real puede ser administrada por un reproductor Java embebido (como el excelente Cortado), permitiendo la reproducción de videos en exploradores que todavía no soportan la etiqueta video de HTML 5. Para la creciente cantidad de PDAs, teléfonos, netbooks, tablet PCs esto no es una opción. En vez de tener procesadores poderosos, estos dispositivos fueron diseñados utilizando los procesadores ARM mucho más modestos y frugales. A pesar de su velocidad ha crecido considerablemente en los últimos años, todavía no se los puede comparar con sus primos para desktops y laptops. Estos dispositivos basados en ARM todavía necesitan mucho trabajo por delante para poder incluir el soporte de la reproducción de videos Ogg.
Aquí es donde la concesión de Google entra en juego, ayudando a financiar el desarrollo de TheorARM (una versión libre optimizada para su uso en dispositivos basados en procesadores ARM).
¿Google es bueno, mami?
- Presto/Opera: HTML5 mediante GStreamer (incluye sólo Ogg/Theora).
- WebKit/Chrome: HTML5 mediante ffmpeg (Ogg/Theora y H.264/MP4).
- Gecko/Firefox: HTML5 con Ogg/Theora.
- WebKit/Epiphany: HTML5 mediante GStreamer (Ogg/Theora garantizado).
- WebKit/Safari: HTML5 mediante QuickTime (H.264/MOV/M4V, puede reproducir Ogg/Theora con XiphQT components).
Para ver más información | Google Open Source
El anuncio es especialmente relevante ya que abre la posibilidad de que el futuro del vídeo en Internet -que está comenzando a centrarse seriamente en el estándar HTML5- se base en un estándar abierto como VP8 y no en el códec H.264 que estaba comenzando a imponerse en sitios como YouTube o Vimeo.
Yo creo que el estandar seria el VP8. el problema con el estandar es que no tendrias que pagar o tendrias que pagar a una sola persona.
Es cierto…