# Flux de dades multimèdia

El flux de dades multimèdia (en anglès streaming media) és un flux de dades constant d'arxius multimèdia que són rebuts per un usuari final i enviades per un proveïdor. Les dades rebudes són visualitzades un cop rebudes, i no s'espera a obtenir el conjunt de l'arxiu. L'usuari pot reproduir les dades rebudes, sense que l'arxiu sencer s'hagi rebut. El flux de dades multimèdia és un tipus específic de flux de dades, especialitzat a les xarxes de telecomunicació. El flux de dades multimèdia va més enllà que la reproducció de vídeo o àudio a l'instant, ja que també es poden fer servir subtítols en directe o text a temps real (streaming text). El flux de dades en directe consisteix a captar les dades d'una càmera, un codificador per digitalitzar el contingut, un editor de mitjans, i una xarxa de distribució per mostrar el contingut captat.

## Història

A principis del 1920 George Owen Squier va aconseguir una patent d'un sistema de transmissió de dades mitjançant senyals elèctrics, que va ser la base per crear el sistema muzak, una eina per enviar música sense utilitzar la ràdio. Degut a la poca tecnologia dels ordinadors de l'època, aquest procés tecnològic va trigar uns anys a donar el seu fruit. A la dècada dels 80, la tecnologia dels ordinadors ja era prou poderosa com per enviar dades multimèdia. Els ordinadors necessitaven suficient CPU i amplada de banda per poder rebre l'arxiu, i una latència baixa perquè no es produïssin interrupcions en la reproducció de l'arxiu (subdesbordament de memòria intermèdia). Però tots aquests avanços tecnològics encara estaven limitats, i molts cops s'optava per baixar directament l'arxiu i guardar-lo al disc local.

### Noves tecnologies

Durant les últimes dècades s'han anat desenvolupant nous avanços tecnològics per poder fer del flux de dades una idea més pràctica i més present a la nostra vida quotidiana. Per una banda, els codificadors o còdec per a reduir la taxa de bits tant d'àudio i vídeo tals com mpeg, són imprescindibles pel gran volum de molts d'aquests arxius, especialment els de vídeo. Molts d'aquests compressors treballen en el pla espectral o freqüencial tant en imatge com en àudio, aprofitant les característiques tant de l'oïda (psicoacústica) com de la visió (SVH) per a eliminar la informació que no som capaços d'apreciar. Així doncs es combinen tant les tècniques de processament d'imatge i àudio, com el coneixement del la resposta humana amb les possibilitats de la codificació entròpica. Per altra banda, els contenidors multimèdia permeten multiplexar i ordenar les dades, de forma que coneixent el seu format podrem accedir als diferents canals de vídeo, àudio o metadades.

### Impacte a nivell empresarial

El flux de dades adreçat a la multimèdia ha estat molt lligat també al món empresarial, ja que gràcies a aquesta nova tecnologia se situava un nou tipus de mercat en l'economia mundial. Microsoft va desenvolupar un reproductor multimèdia anomenat ActiveMovie el 1995 que permetia el flux de dades multimèdia i va incloure un nou format de flux de dades, que va ser el precursor del format utilitzat en el Windows Media Player 6.4 el 1999. El juny de 1999 l'empresa Apple també desenvolupava el format QuickTime 4, tot i que va ser després que aquests formats van ser inclosos en el món de la pàgina web. Aquests formats no eren compatibles uns amb els altres i, per tant, era necessari tenir-los tots per tenir una compatibilitat completa. Cap allà al 2002, l'empresa Adobe va crear un nou format de flux de dades multimèdia anomenat Flash, el qual s'incloïa a la famosa pàgina de reproducció de vídeos Youtube. Youtube va fer augmentar considerablement el consum d'arxius multimèdia a través de la xarxa.

### Consum

El consum de multimèdia ha anat augmentant de manera exponencial aquestes últimes dècades, degut a també a l'exponencial desenvolupament de tecnologia en els camps de la Telemàtica, informàtica i processament audiovisual. Tot i això, en general els fluxos de dades amb contingut audiovisual tenen una mida força gran, i per això es necessita una compressió de l'arxiu abans de ser enviat. Gràcies a aquesta compressió, es poden visualitzar vídeos en alta definició. Avui en dia, es pot utilitzar el que es coneix com a flux de dades de multimèdia en directe (Live streaming), és a dir, les dades que estan sent produïdes les visualitzem en el mateix moment. Un altre tipus de flux de dades és l'anomenat flux de dades progressiu, que consisteix a guardar les dades que estem rebent i després reproduir-les.
Molts arxius multimèdia a la xarxa no són per accés a tot el públic, només es pot accedir a aquests arxius o serveis si realitzes un pagament previ. Per la seva banda companyies com Apple a través del servei iTunes permet comprar la descàrrega d'arxius de música protegida a través de gestió de drets digitals. L'èxit d'aquest sistema ha estat gran tot i el gran nombre de descàrregues il·legals que es fan cada dia, i ja s'han superat les cinc mil milions de cançons venudes a través d'iTunes. A banda de les empreses subministradores de serveis sobre IP, moltes altres es veuran beneficiades. Per exemple avui en dia es poden trobar un bon nombre d'empreses que treuen rendiment a la telefonia sobre IP, o que realitzen les videoconferències per internet.

## Emmagatzematge i amplada de banda del flux de dades

La velocitat de l'amplada de banda necessària és de 2,5 Mb/s o més per veure pel·lícules en streaming, i 10 Mb/s per veure contingut en alta definició. La mida d'un arxiu enviat es podrà calcular mitjançant el producte de la durada de l'arxiu per la velocitat de bits. Per un usuari i un arxiu, la fórmula seria la següent:
* Mida d'emmagatzematge = durada (en segons) x velocitat de bit (en bit/s)
Si s'utilitza un protocol de unidifusió, l'amplada de banda necessària per poder veure el contingut de l'arxiu sense cap interrupció dependria del nombre d'usuaris que volen accedir a l'arxiu:
* Amplada de banda necessària = velocitat de bit (en bit/s) x nombre d'usuaris
Si, per contra, hi hagués un protocol de multidifusió l'amplada de banda necessària no dependria del nombre d'usuaris, ja que el servidor enviaria un únic flux de dades.

## Codificació, corrent de bits, transport i control

Existeixen diferents codificacions segons el tipus de dades que es volen enviar:
* El flux de dades d'àudio utilitzarà les codificacions MP3, Vorbis o Advanced Audio Coding.
* El flux de dades de vídeo utilitzarà les codificacions H.264 o VP8.
Els contenidors d'streaming més utilitzat que comprimeixen les dades de l'arxiu són FLV, WebM, ASF o ISMA. El protocol de transport del flux de dades del servidor podrà ser MMS o Real Time Protocol. El protocol de transport del flux de dades client i que interactuarà amb el flux del servidor podrà ser MMS o RTSP.

## Eines necessàries

Per realitzar la comunicació, el transport, l'emissió i recepció de les dades són necessàries certes eines perquè aquest servei funcioni adequadament:
* Són necessaris protocols a nivell de dades que s'encarreguin de dividir l'arxiu complet en paquets per realitzar millor la seva transmissió i recepció. El protocol utilitzat per aquesta funció és el User Datagram Protocol (UDP). És un sistema simple però eficaç, en el qual si es detecta qualsevol error o corrupció d'un paquet utilitzarem tècniques de correcció d'errors.
* Per enviar dades audiovisuals a través de la xarxa s'utilitzen diferents protocols: Protocol de control a temps real (RTCP), Protocol de transport a temps real (RTP) i Protocol de flux de dades a temps real (RTSP). El RTSP funciona amb diferents protocols de transports, els quals després estaran muntats a sobre del protocol de dades UDP. A causa de les implicacions tècniques que suposa emetre contingut Streaming per Internet sota el protocol RTSP, algunes eines i empreses han desenvolupat un mètode alternatiu denominat pseudostreaming. Apple va crear el HTTPLiveStreaming com a model de transferència streaming (tramesa baix demanda) sota el protocol http.
* Un dels avantatges d'utilitzar protocols estàndards és el d'utilitzar una transmissió de flux de dades adaptada. HTTP utilitza aquest concepte per crear un flux de dades basat en la baixada progressiva de dades, és a dir, guardar el paquet (de mida molt petita) al mateix disc local de l'ordinador.
* També es poden tenir protocols lliure d'errors. Un protocol implementat d'aquesta forma és el Transmission Control Protocol (TCP). Aquest protocol garanteix la correcta distribució de cada bit de l'arxiu. Si el client detecta la pèrdua d'una part de l'arxiu, es demana al distribuïdor que torni a enviar les dades perdudes. És un protocol més complex d'implementar però és correcte si el temps d'espera (buffering) és acceptable.
* Els protocols de unidifusió serán els encarregats d'enviar una còpia separada de l'arxiu que es vol enviar en el client desitjat. És la forma de connexió més comuna a Internet, però falla quan molts usuaris volen accedir al mateix arxiu.
* Els protocols de multidifusió es van dissenyar per reduir el temps de càrrega entre el client i servidor quan s'utilitza el protocol d'unidifusió. Aquest protocol crea un flux de dades únic que s'envia a diferents clients. Depenent de les característiques de la xarxa utilitzada el protocol de multidifusió podrà o no ser possible de dur a terme. Aquest protocol dona problemes a l'hora de realitzar un flux continu d'informació, ja que en el client no pot controlar la reproducció d'informació.
* El protocol de multidifusió Internet Group Management Protocol (IGMP) s'encarrega de la comunicació multidifusió però sobre xarxes connectades a internet. Un dels problemes principals que tindrà la multidifusió a xarxes IP és que els routers i firewalls de la xarxa han de permetre l'accés als paquets del flux de dades.
* A través de les xarxes P2P és com es mou un volum més alt d'arxius multimèdia per internet. En aquesta tecnologia tots els nodes treballen com a clients i servidors a la vegada, amb la qual cosa els usuaris s'encarreguen d'oferir els continguts i l'amplada de banda. El seu avantatge rau en la gran varietat disponible de continguts i la senzillesa de trobar el que un busca. L'aplicació més popular sobre xarxes P2P és emule. Una variant molt utilitzada és BitTorrent.
* Una altra eina molt utilitzada avui en dia és el servei de podcasts, en el que un usuari se subscriu a un servei i aquest al tenir noves dades es descarreguen automàticament en l'ordinador. En aquest cas, algunes plataformes podcast també ens permeten rebre dades en streaming. Per a penjar aquests podcasts una de les eines més accessibles per l'usuari mitjà és el broadcast machine.

## Referències

* ↑ https://developer.apple.com/library/mac/#documentation/NetworkingInternet/Conceptual/StreamingMediaGuide/Introduction/Introduction.html

## Vegeu també

* Flux de dades
* Reproducció en línia
* Televisió per Internet
* Ràdio per Internet