crealogica.com
intranet intranetcontactar contactar
 
Buho blogConfiguraciónWebmailBiblioteca
 


Introducción

'Stream' significa 'chorro' o 'flujo', y alude a la descarga de un fichero que no tiene principio ni final: el caso más claro es una transmisión en directo. Una emisión en diferido no deja de ser un fichero muy grande y que se puede transmitir por HTTP, FTP, o cualquier otro medio habitual de descarga. Un stream debe ser transmitido de forma que cualquiera pueda conectar con él en cualquier momento, y no sólo al principio de la transmisión.
 
En el siguiente documento se especifican los requerimientos técnicos de un sistema de este tipo, y se propone una solución basada en software libre.
El funcionamiento del streaming se basa en tres componentes: un codificador, un servidor y un cliente.
  • El codificador trata el vídeo y audio que se deseen transmitir, los comprime y los transmite al servidor.
  • El servidor es quien carga con la tarea de multiplicar este hilo por transmitirlo a cada uno de los clientes.
  • Los clientes, por ejemplo QuickTime o Windows Media Player, reciben este hilo, lo descomprimen, y lo representan en pantalla.

Arquitectura de software

En Crealogica.com hemos desarrollado con éxito sistemas de streaming basados en los siguientes componentes:
  • Sistema operativo codificador: Windows XP, o Ubuntu Linux, con codificador Videolan VLC.
    Éste sistema suele ser un portátil conectado a una cámara y una ADSL o 3G.
  • Sistema operativo servidor: Debian 4.0 Stable
  • Servidor de web: Apache2.
  • Servidor de streaming: VideoLan VLC
  • Reproductor web: Reproductor Java Cortado, de la empresa Fluendo
Con éste sistema, hemos conseguido emitir con una calidad más que aceptable el siguiente tipo de stream:
  • Calidad: 256Kbps.
  • Utilizando el formato Ogg como contenedor
  • Theora como codec de vídeo
  • Ogg Vorbis como codec de audio
  • Reproductor cliente: No es necesario, ya que Cortado cumple esa función, pero se puede utilizar cualquier reproductor compatible con los codecs de Theora y Ogg Vorbis (es decir: prácticamente cualquier reproductor)
El cliente web puede ser un reproductor de medios empotrado, como Windows Media Player, o bien un applet Java que se encarga de visualizar los contenidos. Este applet estará en una página web, alojada en la misma máquina-servidor que el streaming.
 
Esta página, además del reproductor Cortado, contiene un enlace a la dirección de streaming HTTP (con el formato http://www.sudominio.com:8080 para poder abrirla con un reproductor de vídeo, y toda la información sobre como descargar e instalar los codecs de Theora y Ogg Vorbis.
 
El servidor está configurado para emitir los hilos que le envíen codificadores autorizados, y rechazar los de codificadores desconocidos. Un servidor mal configurado sería vulnerable a la retransmisión de contenidos no autorizados, que consumirían recursos y, en el peor caso, podrían poner en aprietos legales a quien lo opere.
 
El modelo propuesto en este documento se basa completamente en Software Libre, y -a diferencia de la mayoría de sistemas de vídeo actuales- no necesita el pago en concepto de royalties ni la adquisición de licencias de software para realizar todas sus funciones (es decir, la retransmisión y la recepción de una señal de vídeo a través de Internet).

Arquitectura de hardware

En una transmisión on-line, la señal puede ser:
  • 1.Un hilo de *raw vídeo, es decir un hilo de vídeo sin comprimir y que ha de ser codificado.
  • 2.Un hilo de vídeo tratado, pero que debe codificarse en otro formato por ser emitido.
  • 3.Un hilo de vídeo preparado por emitir, es decir que no necesita tratamiento.
Dado el ínfimo caudal de salida que ofrecen las subdesarrolladas operadoras de banda ancha en España, la única opción posible es la tercera, ya que si la señal no está comprimida al máximo, no se puede mandar la señal al servidor de streaming simplemente porque “no cabe” por la conexión a internet.
 
Por tanto, el sistema emisor de la señal debe ser lo suficientemente potente como para codificar la señal en tiempo real. En principio cualquier equipo más o menos moderno debería ser capaz de realizar ésta función sin problemas.
 
En cuanto al servidor, no es necesaria una gran máquina, pero sí una conexión de banda muy ancha.
Las necesidades de anchura de banda se calculan multiplicando el bitrate (bits por segundo) del vídeo que se está emitiendo por el número de conexiones clientes simultáneas.
 
[Ancho de banda] = [nº máximo clientes conectados] * [calidad del vídeo en bits por segundo]
 
Aplicando la fórmula anterior, un sistema de streaming con una conexión de 100Mbps, es capaz de emitir una señal de relativamente buena calidad (500kbps) a 200 personas simultáneas, además de poder recibir sin problemas diversos hilos de vídeo y audio e incluso codificarlos y transcodificarlos... Aunque, como ya hemos comentado, ésta última opción no tiene demasiado sentido, dado el ínfimo caudal de salida que permiten las conexiones ADSL y 3G españolas la única posibilidad real es emitir desde el origen un hilo de vídeo comprimido al máximo.

Como soluciones “estándar” disponemos de varias opciones:

  • 10Mbps a 20Mbps: para videoconferencias, formación a distancia, y actividades en las que el vídeo no vaya a ser visto por más de 30 o 40 personas.
  • 50Mbps/100Mbps: retransimisiones deportivas de pequeños clubs, y eventos privados que necesiten ser retransmitidos a un máximo de 200-300 personas. 
  • Para necesidades superiores, podemos ofrecer una solución a medida mediante “repetidores” y conexión a redes de alta capacidad, multiplicando el caudal disponible. Para estos casos, hay que contratar una suscripción mensual especial a una red de Alta Velocidad.

Todas las máquinas están equipadas con una electrónica mínima de una o dos tarjetas de 100Mbps, y Ethernet Gigabyte en los servidores más grandes.
 
Contacte con nuestro Servicio de Atención al Cliente para solicitar presupuestos e información ampliada.
 
 
Crealogica Crealogica
Diseño Web Diseño Web
Promoción Web Promoción Web
Servidores Servidores
Outsourcing Outsourcing
Contactar Contactar