Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Streaming Audio Video
Streaming Audio Video
2. Introduccin
Qu significa la palabra 'streaming'?. 'Stream' significa 'chorro' o 'flujo' y alude a la
descarga de un fichero que no tiene principio ni final: el caso ms claro es una transmisin en
directo. Una emisin 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. La cuestin es que un
stream debe ser transmitido de modo que cualquiera pueda conectar con l en cualquier
momento, y no slo al principio de la transmisin.
Bajo el trmino Media Streaming se engloban una serie de productos y tcnicas cuyo
objetivo es la difusin de contenidos multimedia tales como audio y video. Este sistema de
distribucin se caracteriza por la visualizacin de los contenidos en el cliente sin la necesidad
de esperar la descarga completa de un fichero.
Con la recepcin de una pequea parte el cliente es capaz de entregar su contenido al
usuario, mientras contina recibiendo la corriente de datos (streaming) que ir mostrando
posteriormente. La parte almacenada acta como "colchn" entre el ancho de banda irregular
que caracteriza a las redes TCP/IP y el dbito continuo que requieren las transmisiones de
audio y video.
Los productos de media streaming contemplan la distribucin de contenidos tanto en una
intranet corporativa como en Internet. Los contenidos pueden estar almacenados
previamente en un servidor (video on demand, media streaming), o crearse en el mismo
momento de su difusin (live media streaming). En ambos casos el audio y el video se
distribuyen con un formato de codificacin (CODEC) que como su nombre indica, corresponde
al acrnimo de codificador/decodificador. Conocido como lossy, el esquema de compresin
DirectShow
Uso primario:
Reproductor de medios CD, DVD, web y disco duro.
- DirectShow (antes ActiveMovie) es una arquitectura multimedia
desarrollada por Microsoft. Es parte de Windows 98, Interner Explorer
versiones 3 y 4 y Windows 95 OSR2.
Comentarios:
Sustituy al Video for Windows y ActiveMovie.
- Soporta MPEG-1, MPEG-2, Advanced Streaming Format (.asf), Video
on Demand (VOD), Real Media (.rm), .avi, .mov, Indeo 5 y otros.
Digital Video (DV)
Uso primario:
Captura y grabacin de vdeo.
Formato de vdeo de alta calidad.
Usado en cmaras digitales y tarjetas capturadoras.
Mtodo de compresin:
El miniDV es un formato DV25 (25 Mb/s)
Frecuencia de muestreo de 13,6MHz
Formato de vdeo 4:2:0 o 4:1:1, NTSC o PAL
Compresin fija 5:1
Comentarios:
El DV tiene un flujo de datos fijo.
Es un estndar para cmaras, tarjetas capturadoras en DV nativo y
sistemas de edicin.
Es un formato aceptado universalmente con una excelente calidad de
imagen.
El volumen de datos es demasiado elevado para la distribucin de
video por internet.
MPEG-1
Uso primario:
CD-ROM video.
Video-CD
Web.
Optimizado para lectura en reproductores CD-R de x1 y x2
Mtodo de compresin:
Similar al JPEG, pero usa un flujo de datos fijo y no es escalable.
Comentarios:
Es un estndar aceptado internacionalmente.
Buena calidad de imagen en ventanas pequeas.
Los codificadores por hardware permiten la compresin en tiempo real.
La compresin por software es lenta.
MPEG-2
Uso primario:
Televisin por satlite
DVD y aplicaciones de video de alta calidad y flujo elevado de datos
Teledifusin
Mtodo de compresin:
El MPEG-2 est basado en el MPEG-1, pero est optimizado para
flujos elevados de datos y calidad de imagen escalable.
Comentarios:
Muy elevada calidad de imagen.
El MPEG-2 es el estndar utilizado en el DVD-Vdeo y proporciona
una calidad teledifusiva de audio y video elevada.
Lo utilizan la mayora de los distribuidores de cable y satlite.
Est soportado por DirectShow bajo Windows.
Soporta alta definicin HDTV hasta 1920 x 1080
MPEG-4
Uso primario:
- Web video
Mtodo de compresin:
- Proyecto europeo conocido como ACTS-MOMUSYS que, junto con
Microsoft, estn trabajando para consolidar el estndar del algoritmo
MPEG-4
Comentarios:
Con calidad escalable.
Soportado por Microsoft Windows Media es la refundacin del
formato DivX;-) que est ganando popularidad rpidamente.
MP3
Uso primario:
- Codificacin de archivos de audio para difusin por internet
Mtodo de compresin:
- El MP3 es la abreviacin de la compresin de audio estndar MPEG-1,
capa 3
QuickTime
Uso primario:
La baja compresin (2:1) es ideal para el almacenamiento durante la
edicin de video.
Utilizado para capturar video en los equipos Mac sin hardware
MJPEG.
Mtodo de compresin:
Compresin 4:2:2 YUV video en componentes.
Comentarios:
- No requiere hardware y mantiene la compresin sin prdidas.
- Su baja compresin requiere mucho espacio en disco duro y de elevada
transferencia de datos.
Es utilizable sobre la web
RealSystem
Uso primario:
Web
Mtodo de compresin:
Propietario, basado en MPEG
Comentarios:
- RealVideo y RealAudio estn optimizados para flujos de datos de
internet.
Sorenson Video
Uso primario:
- Web.
Video basado en CD para reproducir desde ordenadores Pentium o
PowerMac.
Mtodo de compresin:
Advanced Vector Quantization (VQ)
Comentarios:
Codec primario QuickTime.
- Video en CD-ROM se reproduce bien en Pentium mayores de
120MHz.
Basado en QuickTime para MacOS y Windows.
Es posible la codificacin con un flujo de datos variable (VBR)
Requiere un ordenador rpido con el codec Cinepak.
Reproduccin suave con resoluciones de 320 x 240 pixels.
Permite flujo de datos mayores de 100Kb/s
- Algunos colores, especialmente el rojo, tienden a sobresaturarse.
TrueMotion
Uso Primario:
Web
Todas las plataformas
Mtodo de compresin:
Wavelet TrueMotion-S
Compresin intracuadro.
Comentarios:
Escalable.
Soporte vdeo de alta calidad.
Almacenamiento con flujo de datos elevado.
3. Modelo de servicio
El esquema convencional para la instalacin de un servicio de "video streaming" tiene dos
actividades fundamentales y bien diferenciadas: la elaboracin de contenidos en un formato
digital utilizando procedimientos de compresin y la distribucin de los contenidos por la red a
los clientes o usuarios finales. Para la elaboracin de contenidos existe generalmente una
primera fase de captura de audio-video, ya se trate de eventos en directo o de contenidos
grabados (cintas de video, archivos multimedia), y una fase de compresin en la que se trata
separadamente el audio y el video. Los sistemas de videoconferencia multimedia en Mbone
cuentan incluso con aplicaciones distintas para cada componente. El resultado de esta
actividad puede ser un fichero multimedia, o una corriente (streaming).
5. Productos.
5.1. Real.
Es el formato ms utilizado en el mundo del streaming e incluso ha absorbido a alguno de
sus competidores como Vivo. Su cliente RealPlayer es una aplicacin ampliamente extendida
y es uno de los plug-in ms normales de cualquier explorador. Est disponible para mltiples
plataformas y se puede encontrar en paquetes que incluyen todas las herramientas
necesarias para poner en funcionamiento un sistema de streaming. Su principal problema es
el precio en las instalaciones avanzadas, aunque hay una versin bsica gratuita limitada en
varios aspectos que se puede utilizar libremente por un periodo de un ao. Los productos que
suministra la empresa son:
5.2. Quicktime.
Aunque surgido del mundo Macintosh, el cliente QuickTime Player est disponible tambin
para otros entornos (Windows). Su principal ventaja es que el servidor de streaming es
gratuito y tambin se encuentra disponible para entornos Windows y Unix. Como
inconvenientes podemos destacar la ausencia de un productor de contenidos asociado como
el que presenta el paquete de Real. La gestin del servidor se efecta desde una pgina web.
Los paquetes que podemos encontrar en este entorno son:
Windows Media Player: Cliente del estndar Windows Media en versin 7.1 para
Windows 98, 2000 y ME. Para Macintosh existe la versin 7.01, y versiones anteriores
para Windows 95, NT y Solaris.
Winamp291_full.exe
Shoutcast-1-9-5-windows.exe (Servidor de streaming).
Shoutcast-dsp-1-9-0-windows.exe (Plugin del Winamp, para enviar
audio al servidor de streaming).
Paquetes NSVTools.exe y VP6VFWCodec-6-2-6-0.exe (Conjunto de
aplicaciones y codecs para compresin de video en formato NSV)
NSVGui Classic.(Aplicacin para enviar nuestros videos NSV al servidor)
10
11
Donde pone MaxUser = 32 deberemos indicar el nmero mximo de usuarios a los que
permitiremos el acceso al servidor.
Donde pone Password = Nueva Password Introduciremos el password para acceder
al servidor.
Donde pone PortBase = 8000 Deberemos indicar el puerto por el que accederemos al
servidor, en este caso lo dejaremos en el 8000.
Estas son las principales opciones a configurar, aunque si queremos realizar audio bajo
demanda buscaremos las siguientes lneas y modificaremos la lnea donde aparece ContentDir
y la modificaremos por el directorio que contiene los archivos MP3 que queremos ofrecer. En
el caso de la imagen albergaremos los ficheros MP3 en el directorio ./content dentro de la
carpeta donde este instalado el servidor SHOUTcast. En nuestro caso C://Archivos de
programa/Shoutcast/content/
Una vez realizados los cambios deberemos presionar sobre Kill Server y reiniciaremos el
servidor con la nueva configuracin.
12
Pulsaremos las teclas Ctrl.+P y se abrir la ventana de preferencias del Winamp siguiente:
13
cuatro
Una vez hemos descrito las funciones de este plugin vamos a realizar la configuracin del
mismo.
14
En esta ventana podemos ver en primer lugar el apartado Status en el podemos ver el
estado del plugin, si esta conectado con el servidor o no.
Luego podemos ver dos botones: Connection y Yellowpages.
El primero de ellos nos muestra estos parmetros de configuracin:
15
16
Donde podemos ver que en Input Device podremos seleccionar entre Winamp y
Soundcard Input.
Si seleccionamos Winamp, enviaremos al servidor todo aquello que emita el Winamp, o
sea todo lo que pongamos en la lista de reproduccin del Winamp. En cambio si
seleccionamos Soundcard Input, nos aparecer esta ventana:
17
18
19
Vamos a explicar ahora el uso de programa NSVate para comprimir nuestros videos en
formato de streaming video NSV.
Con el NSVate podemos comprimir tanto video mpeg como avi. Esta aplicacin hace uso del
programa nsvenc.exe que es ejecutado en la lnea de comandos, aunque NSVate es un GUI
que nos facilitar el trabajo.
20
En esta ventana se muestra los Profiles (perfiles) que tengamos configurados hasta el
momento. En un principio solo tendremos el perfil por defecto (Default), pero vamos a definir
uno con las caractersticas que mas nos interese. Para ello haremos clic en la pestaa Make a
Copy y luego seleccionaremos la copia y le daremos a Edit para editar las preferencias.
Le daremos un nombre al perfil, en nuestro caso Perfil 1 y tras esto realizaremos los
cambios indicados en la imagen superior. Pincharemos en el botn:
21
22
Las opciones de audio las dejaremos tal cual estn en la imagen superior:
CBR /Mono /64kbps /Calidad Normal
Para configurar las opciones de video, presionaremos el botn:
23
Con este ltimo paso ya tendremos configurados los parmetros de compresin. Cabe
destacar que tambin podemos utilizar el codec de compresin VP3.
La diferencia entre los codec VP3 y VP6 radica principalmente en que el VP3 es de cdigo
abierto y el VP6 es cerrado. El VP6 saca una mejor calidad pero el VP3 se puede reproducir de
forma integrada en navegadores como el Firefox/Mozilla, mientras que el VP6 solo se puede
mostrar en el IExplorer.
En el caso que queramos utilizar el codec VP3 los cambios a realizar serian los siguientes:
24
Dejaramos la configuracin igual que la imagen superior. Hemos realizado cambios no solo
en el formato de video sino tambin en el las opciones de formato de NSV.
Una vez terminada la configuracin del formato de compresin pasaremos a comprimir los
ficheros que queramos servir. Para ello iremos al programa principal.
Nos aparecer una pantalla donde seleccionaremos el fichero que queremos comprimir.
25
Aqu seleccionaremos el Perfil que queremos utilizar para comprimir el video, y en Output
Filename Introduciremos el nombre, con extensin .nsv y el directorio donde los queremos
guardar.
Presionaremos sobre OK y el video ser aadido a la lista de compresin. As podemos ir
aadiendo todos los videos que queramos y le daremos al botn comprimir
o
Misc/Encode All/.
Despus de unos minutos ya tendremos nuestro/s videos comprimidos/s y listos para ser
lanzados por la aplicacin NSVGui Classic.
26
Antes de nada hay que configurar el contenido que mostrar el servidor cuando el cliente se
conecte a l, y esto se hace desde este programa. Presionamos el botn
27
Aqu rellenamos los campos que queramos que se muestren al conectar el cliente con el
servidor. Introduciremos la direccin del servidor SHOUTCast (127.0.0.1) el puerto (8000), el
Password y luego una descripcin del servidor que aparecer en el reproductor del cliente
junto con el nombre del Video. Luego presionaremos Save y guardaremos los cambios.
Ahora para empezar a emitir los videos tenemos dos opciones, la primera ser enviar un a
la lista de reproduccin los videos que queramos, o cargar una playlist realizada
previemanente.
Si elegimos la primera opcin tan solo debemos elegir del men de la izquierda en la parte
superior la carpeta origen de los ficheros que queremos aadir, luego seleccionar el video en
la parte inferior y presionar sobre el botn Add Video. Este automticamente se incluir a la
lista de reproduccin.
Si elegimos la segunda opcin, realizar una Playlist, primero debemos haber grabado la
lista de reproduccin. Para ello podemos actuar de la forma anterior, ir aadiendo los videos
que queramos y luego presionar en Save Playlist, o bien crear la lista de reproduccin con el
Winamp. Para ello abriremos el Winamp:
28
Pincharemos en el icono PL
, para que nos salga la lista de reproduccin. Una vez
tengamos la lista de reproduccin, pincharemos en el signo +
e iremos aadiendo
los ficheros a la lista.
Una vez tengamos los ficheros pincharemos en el icono
lista con el nombre que queramos con extensin .m3u.
guardaremos
la
Una vez cargada la lista en el programa NSVGui tan solo tendremos que apretar en el botn
Start Streaming
y empezaremos a enviar los videos hacia el servidor.
Para enviar estos videos hacia el cliente debemos asegurarnos que el servidor SHOUTCast
est en funcionamiento. Para comprobarlo tan solo debemos hacer doble clic en el icono del
servidor SHOUTCast, y comprobar que aparecen las lneas que hemos recuadrado en rojo en
la imagen inferior. Lo que nos indica que se esta emitiendo desde la direccin 127.0.0.1 con
el nombre Servidor Streaming Sistemas Multimedia.
29
Como hemos dicho, este programa lo utilizaremos para enviar video al servidor a partir de
una fuente externa, para ello lo primero que deberemos hacer es conectar la fuente antes de
ejecutar el programa. En nuestro caso concreto hemos conectado una Webcam al puerto USB.
Podemos comprobar en la imagen que la detecta automticamente el programa por que
aparece en la parte inferior Logitech QuickCam Express, el modelo de la cmara Web.
Una vez conectada la cmara Web, debemos seleccionar el destino de la captura, que ser
el servidor SHOUTCast. Para ello iremos a /File/Set Capture Destination:
30
31
Propiedades VIDEO
Propiedades AUDIO
32
33
Una vez configurado el audio, vamos a configurar los frames por segundo que queremos
capturar. Para ello iremos al men Capture y seleccionaremos la opcin Set Frame Rate:
34
35
y dejaremos la
Podemos seleccionar por ejemplo el formato de compresin de audio el Lame Mp3 al igual
que podemos variar tambin el formato de compresin de video por VP3. Todo segn las
necesidades y las posibilidades del ancho de banda que tengamos.
Una vez realizados todos los ajustes iremos al men Capture y seleccionaremos Start
Capture para empezar a capturar:
36
37
Dentro de los parmetros de este plugin los dejaremos como indicamos en la siguiente
imagen, aunque siempre podemos ir ajustando estos valores hasta que se reproduzca sin
cortes.
38
39
Indicaremos la direccin IP del servidor Web y el nombre del fichero de extensin .nsv
El propio Winamp le ir solicitando al servidor Web los datos del video e ir almacenando en
buffer y reproducindolo. Esto puede llevar a la confusin de que parezca que el reproductor
Winamp almacena el video en el disco duro del cliente debido a la alta velocidad de la red
local, pero tan solo hay que comprobar cualquier programa que muestre el estado de los
puertos del ordenador, como se encuentra el estado del puerto con una conexin establecida
con los clientes, y en cuanto paramos el video, libera la conexin.
40
<!--//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/-->
<!--// enter stream location/url here //-->
var leakurl = "http://205.188.234.35:8014/;stream.nsv";
<!--//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx//-->
En el caso que queramos que realice un vnculo a un fichero de audio bajo demanda,
sern sustituidas por las siguientes lneas:
<!--//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/-->
<!--// enter stream location/url here //-->
var leakurl = "http://DireccinIPServidor:Puerto/Directorio/Fichero.pls";
<!--//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx//-->
En el caso que queramos que realice un vnculo a un fichero de video bajo demanda,
sern sustituidas por las siguientes lneas:
<!--//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/-->
<!--// enter stream location/url here //-->
var leakurl = "http://DireccinIPServidor/NombreFichero.nsv ";
<!--//xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx//-->
41
Este componente ActiveX es solo para utilizarlo con Internet Explorer. S queremos integrar
el reproductor en Firefox/Mozilla/Netscape. Deberemos aadir estas lneas en la pgina Web:
En el caso que queramos realizar un vnculo a un fichero de audio o video en directo
sern sustituidas por las siguientes lneas
En el caso que queramos que realice un vnculo a un fichero de audio bajo demanda,
sern sustituidas por las siguientes lneas:
En el caso que queramos que realice un vnculo a un fichero de video bajo demanda,
sern sustituidas por las siguientes lneas:
42
7. Bibliografa
http://www.networkcomputing.com/showitem.jhtml?docid=1702f3
http://www.gentoo.org/doc/en/shoutcast-config.xml
http://www.cit.cornell.edu/atc/itsupport/streamingembed.shtml
http://www.maestrosdelweb.com/editorial/videofor/
http://archive.dstc.edu.au/RDU/staff/jane-hunter/video-streaming.html
http://www.radiotoolbox.com/docs/index.php?p_id=4&doc_id=5
http://www.maestrosdelweb.com/editorial/videonline/
http://www.maestrosdelweb.com/editorial/radioweb/
http://www.streamsolutions.co.uk/flash/New_Tutorials/Nsvcap/
http://forums.winamp.com/
http://www.steamcast.com/
http://www.redes-linux.com/manuales.php?catId=Streaming
http://www.webmonkey.com//00/45/index3a.html?tw=multimedia
http://www.shoutcast.com/
http://www.desarrolloweb.com/articulos/482.php?manual=15
http://www.videolan.org/
43