Grado de Multimedia Universitat Oberta de Catalunya

Bienvenidos

Antes de la aparición de la versión 5 de HTML, si se deseaba incluir audio en una página web, no quedaban muchas opciones aparte de utilizar la tecnología Flash, propietaria de Adobe. Con HTML5 se introducen nuevas etiquetas que anuncian la incorporación de audio y vídeo en la web, sin necesidad de ningún tipo de plug-in, ya que el navegador es capaz de entenderlas. Pero ¿hasta qué punto es cierto?

La etiqueta audio

La especificación de HTML5 introduce el tag o etiqueta audio, de modo análogo a la etiqueta video, juntamente con funcionalidades básicas de reproducción de archivos de audio pregrabado y consulta de atributos sencillos, como la duración. Gracias a este hecho, efectivamente ya no se necesita ningún plug-in para manejar sonido (darle al play y al stop, por ejemplo) en la página web.

¿Es suficiente?

Con las funcionalidades asociadas a la etiqueta audio, plantearse realizar, por ejemplo, un piano que suene en tiempo real sobre el propio navegador deviene una tarea que, si bien es resoluble, no es trivial. La idea es llevarlo a cabo a partir de ficheros de sonido cortos, ya sea preconstruidos o construyéndolos mientras se ejecuta la página web (http://codebase.es/riffwave/). Esta técnica se quedaba corta en otro tipo de tareas, como la aplicación de filtros o efectos personalizados al sonido que se esté captando con el micrófono, por ejemplo, ya que no se puede partir de un archivo pregrabado y concatenar en forma de archivos cortos el audio que va llegando por el micrófono, esto no daba buenos resultados (http://acko.net/blog/javascript-audio-synthesis-with-html-5/).

Con el objetivo de expandir las funcionalidades del trabajo con sonido a través del navegador, el W3C crea el Audio Working Group (http://www.w3.org/2011/audio/) en marzo del 2011. Este grupo tiene en cuenta el trabajo llevado a cabo por el equipo de Mozilla, que desarrolló la Audio Data API (https://wiki.mozilla.org/Audio_Data_API), una especificación no estándar para su navegador Firefox. Un primer resultado del Audio Working Group ha sido la creación de la Web Audio API (http://www.w3.org/TR/webaudio/), en desarrollo en la actualidad y disponible en Chrome a partir de la versión 14 y previa activación del flag correspondiente (activar «Entrada de audio web» introduciendo about:flags en la barra de direcciones del navegador Chrome). Esta especificación permite procesar y sintetizar audio desde el propio navegador.

Librerías asociadas

Hay una librería de código abierto, Audiolet (http://oampo.github.com/Audiolet/), que simplifica el uso de las dos anteriores API de audio, al integrarlas en unas mismas instrucciones y simplificar su uso. Como toda simplificación, se pierde cierta libertad de creación, pero se gana en velocidad de desarrollo.

Más librerías pueden encontrarse en la web de Mozilla (https://wiki.mozilla.org/Audio_Data_API#JavaScript_Audio_Libraries), así como ejemplos demostrativos (en este caso, ligados a la Audio Data API de Mozilla).

Estándar no cerrado

La Web Audio API es una especificación en borrador. No está terminada y no todos los navegadores la aceptan. De hecho, únicamente Chrome y Safari la entienden. Mozilla tiene su Audio Data API y Explorer no se pronuncia, por citar algunos navegadores. De este modo, únicamente las posibilidades básicas definidas por la etiqueta audio están disponibles de forma generalizada.

Aún así, se desarrolla

A pesar de no haber un estándar cerrado ni acabado, existen diferentes ejemplos de síntesis de audio a través del navegador (Chrome o Safari),  http://chromium.googlecode.com/svn/trunk/samples/audio/index.html o los ejemplos citados en la web de Audiolet http://oampo.github.com/Audiolet/.

Es un desarrollo costoso, ya que un cambio en la especificación implica cambiar el propio desarrollo para hacerlo compatible con las versiones actualizadas de los navegadores que soportan dicha especificación.

Para saber más

Se puede consultar información completa y extensa sobre el estado de definición de la Web Audio API para manejar el sonido en http://www.w3.org/TR/webaudio/.

Un buen artículo que explica las posibilidades de la Web Audio API puede encontrarse en http://www.html5rocks.com/en/tutorials/webaudio/intro/?redirect_from_locale=es.

Últimos artículos

  • Técnicas de software, o cómo entender el software

    El software se ha convertido en una herramienta de uso habitual para la mayoría de la población occidental. Usamos software para realizar muchas tareas distintas, desde el envío de correo electrónico -para comunicarnos- hasta la codificación de textos como en el momento en que escribo este post. En el trabajo, en la universidad, todos trabajamos […]

  • Remediación, multimedia e hibridación de los medios

    Remediación , Multimedia y Hibridación de los medios El contexto tecnológico actual está construido como una remediación de los medios antiguos ,el ser humano reproduce los mismos procesos de interacción entre los objetos y los individuos desde los orígenes de la tecnología; y no sólo en las tecnologías digitales, sino desde las primeras invenciones mecánicas: […]

  • La programación en la web

    Hace algunos años, allá por los noventa, para crear una página web bastaba con tener algunos conocimientos de HTML, un editor de texto, un cliente FTP, un lugar donde alojarla y un contenido que publicar. El HTML era sencillo, no hacía falta aprender demasiadas cosas, pero a cambio, los resultados eran más bien pobres y […]