{"id":326,"date":"2013-03-14T10:27:35","date_gmt":"2013-03-14T10:27:35","guid":{"rendered":"http:\/\/multimedia.uoc.edu\/blogs\/fem\/?p=326"},"modified":"2013-03-21T15:03:37","modified_gmt":"2013-03-21T15:03:37","slug":"audio-en-la-web","status":"publish","type":"post","link":"http:\/\/multimedia.uoc.edu\/blogs\/fem\/audio-en-la-web\/","title":{"rendered":"\u00c0udio a la web"},"content":{"rendered":"<p>Abans de l\u2019aparici\u00f3 de la versi\u00f3 5 d\u2019HTML, si es volia incloure \u00e0udio en una p\u00e0gina web, no quedaven gaires opcions a part de fer sevir tecnologia Flash, propiet\u00e0ria d\u2019Adobe. Amb HTML5 s\u2019introdueixen noves etiquetes que anuncien la incorporaci\u00f3 d\u2019\u00e0udio i v\u00eddeo a la web, sense necessitat de cap tipus de connector (<i>plug-in<\/i>), ja que el navegador les ent\u00e9n. Fins a quin punt \u00e9s cert, per\u00f2?<\/p>\n<h2>L&#8217;etiqueta <i>audio<\/i><\/h2>\n<p>L\u2019especificaci\u00f3 d\u2019HTML5 introdueix l\u2019etiqueta (<i>tag<\/i>) <i>audio<\/i>, de manera an\u00e0loga a l\u2019etiqueta <i>video<\/i>, juntament amb funcionalitats b\u00e0siques de reproducci\u00f3 d\u2019arxius d\u2019\u00e0udio pregravat i consulta d\u2019atributs senzills, com la durada. Gr\u00e0cies a aquest fet, ja no cal cap connector per a manejar so (per a fer <i>play<\/i> i <i>stop<\/i>, per exemple) en la nostra p\u00e0gina web.<\/p>\n<h2>N&#8217;hi ha prou?<\/h2>\n<p>Amb les funcionalitats associades a l\u2019etiqueta <i>audio<\/i>, plantejar-se fer, per exemple, un piano que soni en temps real sobre el mateix navegador \u00e9s una tasca que, si b\u00e9 \u00e9s resoluble, no \u00e9s trivial. La idea \u00e9s fer-ho a partir de fitxers de so curts, sia preconstru\u00efts o construint-los mentre s\u2019executa la p\u00e0gina web (<a href=\"http:\/\/codebase.es\/riffwave\/\">http:\/\/codebase.es\/riffwave\/<\/a>). Aquesta t\u00e8cnica feia curt en un altre tipus de tasques, com l\u2019aplicaci\u00f3 de filtres o efectes personalitzats al so que estigui capturant el micr\u00f2fon, per exemple, ja que no es pot partir d\u2019un arxiu pregravat, i el fet de concatenar en forma d\u2019arxius curts l\u2019\u00e0udio que va arribant pel micr\u00f2fon no donava bons resultats (<a href=\"http:\/\/acko.net\/blog\/javascript-audio-synthesis-with-html-5\/\">http:\/\/acko.net\/blog\/javascript-audio-synthesis-with-html-5\/<\/a>).<\/p>\n<p>Amb l\u2019objectiu d\u2019expandir les funcionalitats del treball amb so per mitj\u00e0 del navegador, el W3C crea l\u2019Audio Working Group (<a href=\"http:\/\/www.w3.org\/2011\/audio\/\">http:\/\/www.w3.org\/2011\/audio\/<\/a>) el mar\u00e7 del 2011. Aquest grup t\u00e9 en compte el treball fet per l\u2019equip de Mozilla, que va desenvolupar l\u2019Audio Data API (<a href=\"https:\/\/wiki.mozilla.org\/audio_data_api\">https:\/\/wiki.mozilla.org\/audio_data_api<\/a>), una especificaci\u00f3 no est\u00e0ndard per al seu navegador Firefox. Un primer resultat de l\u2019Audio Working Group ha estat la creaci\u00f3 del Web Audio API (<a href=\"http:\/\/www.w3.org\/tr\/webaudio\/\">http:\/\/www.w3.org\/tr\/webaudio\/<\/a>), en desenvolupament avui dia i disponible en el Chrome a partir de la versi\u00f3 14 activant pr\u00e8viament l\u2019indicador de seguiment (<i>flag<\/i>) corresponent (s\u2019ha d\u2019activar \u201cEntrada d\u2019\u00e0udio web\u201d introduint <i>about:flags<\/i> a la barra d\u2019adreces del Chrome). Aquesta especificaci\u00f3 permet processar i sintetitzar \u00e0udio des del navegador mateix.<\/p>\n<h2>Biblioteques associades<\/h2>\n<p>Hi ha una biblioteca de codi obert, Audiolet (<a href=\"http:\/\/oampo.github.com\/audiolet\/\">http:\/\/oampo.github.com\/audiolet\/<\/a>), que simplifica l\u2019\u00fas de les dues API d\u2019\u00e0udio anteriors, integrant-les en unes mateixes instruccions i simplificant-ne l\u2019\u00fas. Com tota simplificaci\u00f3, es perd certa llibertat de creaci\u00f3, per\u00f2 es guanya en velocitat de desenvolupament.<\/p>\n<p>Es poden trobar m\u00e9s biblioteques a la web de Mozilla (<a href=\"https:\/\/wiki.mozilla.org\/Audio_Data_API#JavaScript_Audio_Libraries\">https:\/\/wiki.mozilla.org\/Audio_Data_API#JavaScript_Audio_Libraries<\/a>), i tamb\u00e9 exemples demostratius (en aquest cas, lligats a l\u2019Audio Data API de Mozilla).<\/p>\n<h2>Est\u00e0ndard no tancat<\/h2>\n<p>La Web Audio API \u00e9s una especificaci\u00f3 en esborrany. No est\u00e0 acabada i no l\u2019accepten tots els navegadors. De fet, nom\u00e9s l\u2019entenen el Chrome i el Safari, mentre que el Mozilla t\u00e9 el seu Audio Data API i l\u2019Explorer no s\u2019hi pronuncia, per esmentar alguns navegadors. D\u2019aquesta manera, solament estan disponibles de manera generalitzada les possibilitats b\u00e0siques definides per l\u2019etiqueta <i>audio<\/i>.<\/p>\n<h2>Tot i aix\u00f2, es desenvolupa<\/h2>\n<p>Encara que no hi ha un est\u00e0ndard tancat ni acabat, hi ha diferents exemples de s\u00edntesi d\u2019\u00e0udio per mitj\u00e0 del navegador (Chrome o Safari) (<a href=\"http:\/\/chromium.googlecode.com\/svn\/trunk\/samples\/audio\/index.html\">http:\/\/chromium.googlecode.com\/svn\/trunk\/samples\/audio\/index.html<\/a>) o els exemples esmentats a la web d\u2019Audiolet (<a href=\"http:\/\/oampo.github.com\/audiolet\/\">http:\/\/oampo.github.com\/audiolet\/<\/a>).<\/p>\n<p>\u00c9s un desenvolupament cost\u00f3s, ja que un canvi en l\u2019especificaci\u00f3 implica canviar el desenvolupament per a fer-lo compatible amb les versions actualitzades dels navegadors que funcionen amb aquesta especificaci\u00f3.<\/p>\n<h2>Per saber-ne m\u00e9s &#8230;<\/h2>\n<p>Podeu consultar informaci\u00f3 completa i extensa sobre l\u2019estat de definici\u00f3 de la Web Audio API, per a manejar el so, a <a href=\"http:\/\/www.w3.org\/tr\/webaudio\/\">http:\/\/www.w3.org\/tr\/webaudio\/<\/a>.<\/p>\n<p>Podeu trobar un bon article que explica les possibilitats de la Web Audio API a <a href=\"http:\/\/www.html5rocks.com\/en\/tutorials\/webaudio\/intro\/?redirect_from_locale=es\">http:\/\/www.html5rocks.com\/en\/tutorials\/webaudio\/intro\/?redirect_from_locale=es<\/a>.<\/p>","protected":false},"excerpt":{"rendered":"<p>Abans de l\u2019aparici\u00f3 de la versi\u00f3 5 d\u2019HTML, si es volia incloure \u00e0udio en una p\u00e0gina web, no quedaven gaires opcions a part de fer sevir tecnologia Flash, propiet\u00e0ria d\u2019Adobe. Amb HTML5 s\u2019introdueixen noves etiquetes que anuncien la incorporaci\u00f3 d\u2019\u00e0udio i v\u00eddeo a la web, sense necessitat de cap tipus de connector (plug-in), ja que &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/multimedia.uoc.edu\/blogs\/fem\/audio-en-la-web\/\" class=\"more-link\">Continua llegint <span class=\"screen-reader-text\">\u00ab\u00c0udio a la web\u00bb<\/span><\/a><\/p>\n","protected":false},"author":34,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11],"tags":[84,88,87,86,85],"class_list":["post-326","post","type-post","status-publish","format-standard","hentry","category-technologies","tag-audio","tag-audio-data-api","tag-html5","tag-web","tag-web-audio-api","entry"],"_links":{"self":[{"href":"http:\/\/multimedia.uoc.edu\/blogs\/fem\/wp-json\/wp\/v2\/posts\/326","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/multimedia.uoc.edu\/blogs\/fem\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/multimedia.uoc.edu\/blogs\/fem\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/multimedia.uoc.edu\/blogs\/fem\/wp-json\/wp\/v2\/users\/34"}],"replies":[{"embeddable":true,"href":"http:\/\/multimedia.uoc.edu\/blogs\/fem\/wp-json\/wp\/v2\/comments?post=326"}],"version-history":[{"count":19,"href":"http:\/\/multimedia.uoc.edu\/blogs\/fem\/wp-json\/wp\/v2\/posts\/326\/revisions"}],"predecessor-version":[{"id":424,"href":"http:\/\/multimedia.uoc.edu\/blogs\/fem\/wp-json\/wp\/v2\/posts\/326\/revisions\/424"}],"wp:attachment":[{"href":"http:\/\/multimedia.uoc.edu\/blogs\/fem\/wp-json\/wp\/v2\/media?parent=326"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/multimedia.uoc.edu\/blogs\/fem\/wp-json\/wp\/v2\/categories?post=326"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/multimedia.uoc.edu\/blogs\/fem\/wp-json\/wp\/v2\/tags?post=326"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}