Introducció

'Stream' vol dir 'fluxe', i al·ludeix a la descàrrega d'un fitxer que no té principi ni final: el cas més clar és una transmissió en directe. Una emissió en diferit no deixa de ser un fitxer molt gran i que es pot transmetre per HTTP, FTP, o qualsevol altre mitjà habitual de descàrrega. Un stream ha de ser transmès de manera que qualsevol pugui connectar amb ell en qualsevol moment, i no només al principi de la transmissió.
En el següent document s'especifiquen els requeriments tècnics d'un sistema d'aquest tipus, i es proposa una solució basada en programari lliure..
El funcionament de l'estreaming es basa en tres components: un codificador, un servidor i un client.
El codificador tracta el vídeo i àudio que es desitgin transmetre, els comprimeix i els transmet al servidor.
El servidor és qui carrega amb la tasca de multiplicar aquest fil per transmetre'l a cadascun dels clients.
Els clients, per exemple QuickTime o Windows Media Player, reben aquest fil, ho descomprimeixen, i ho representen en pantalla.
Arquitectura de software
En Crealogica.com hem desenvolupat amb èxit sistemes d'estreaming basats en els següents components:
- Sistema operatiu codificador: Windows XP, o Ubuntu Linux, amb codificador Videolan VLC.
Aquest sistema sol ser un portàtil connectat a una càmera i una ADSL o 3G .
Sistema operatiu servidor: Debian 4.0 Stable
Servidor de web: Apache2.
Servidor d'estreaming: VideoLan VLC
Reproductor web: Reproductor Java Cortado, de l'empresa Fluendo
Amb aquest sistema, hem aconseguit emetre amb una qualitat més que acceptable el següent tipus d'estream:
Qualitat: 256Kbps.
Utilitzant el format Ogg com a contenidor
-
Theora com codec de vídeo
Ogg Vorbis amb codec d'audio
Reproductor client: No és necessari, ja que Cortado compleix aquesta funció, però es pot utilitzar qualsevol reproductor compatible amb els codecs de Theora i Ogg Vorbis (és a dir: pràcticament qualsevol reproductor)
El client web pot ser un reproductor de mitjans encastat, com Windows Media Player, o bé un applet Java que s'encarrega de visualitzar els continguts. Aquest applet estarà en una pàgina web, allotjada en la mateixa màquina-servidor que el streaming.
Aquesta pàgina, a més del reproductor Cortado, conté un enllaç a l'adreça de l'estreaming HTTP (amb el format http://www.sudominio.com:8080 per a poder obrir-la amb un reproductor de vídeo, i tota la informació sobre com descarregar i instal·lar els codecs de Theora i Ogg Vorbis.
El servidor està configurat per a emetre els fils que li enviïn codificadors autoritzats, i rebutjar els de codificadors desconeguts. Un servidor mal configurat seria vulnerable a la retransmissió de continguts no autoritzats, que consumirien recursos i, en el pitjor cas, podrien posar en destrets legals a qui ho operi..
El model proposat en aquest document es basa completament en Programari Lliure, i a diferència de la majoria de sistemes de vídeo actuals- no necessita el pagament en concepte de royalties ni l'adquisició de llicències de programari per a realitzar totes les seves funcions (és a dir, la retransmissió i la recepció d'un senyal de vídeo a través d'Internet).
Arquitectura de hardware
En una transmisió on-line, la senyal pot ser:
1.Un fil de raw vídeo, és a dir un fil de vídeo sense comprimir i que ha de ser codificat.
2.Un fil de vídeo tractat, però que ha de codificar-se en altre format per ser emès.
-
3.Un fil de vídeo tractat, però que ha de codificar-se en altre format per ser emès
- 3.Un fil de vídeo preparat per emetre, és a dir que no necessita tractament..
Donat l'ínfim cabal de sortida que oferixen les subdesenvolupades operadores de banda ampla a Espanya, l'única opció possible és la tercera, ja que si el senyal no està comprimida al màxim, no es pot manar el senyal al servidor de streaming simplement perquè “no” cap per la connexió a internet.
Per tant, el sistema emissor del senyal ha de ser prou potent com per a codificar el senyal en temps real. En principi qualsevol equip més o menys modern hauria de ser capaç de realitzar aquesta funció sense problemes.
Quant al servidor, no és necessària una gran màquina, però sí una connexió de banda molt ampla.
Les necessitats d'amplària de banda es calculen multiplicant el bitratge (bits per segon) del vídeo que s'està emetent pel nombre de connexions clients simultànies.
[Amplada de banda] = [nº màxim de clients conectats] * [qualitat del video en bits per segon]]
Aplicant la fórmula anterior, un sistema d'estreaming amb una connexió de 100Mbps, és capaç d'emetre un senyal de relativament bona qualitat (500kbps) a 200 persones simultànies, a més de poder rebre sense problemes diversos fils de vídeo i àudio i fins i tot codificar-los i transcodificar-los... Encara que, com ja hem comentat, aquesta última opció no té massa sentit, donat l'ínfim cabal de sortida que permeten les connexions ADSL i 3G espanyoles l'única possibilitat real és emetre des de l'origen un fil de vídeo comprimit al màxim.
Com solucions “estàndard” disposem de diverses opcions:
|
|
|
|
|