Sistema de video streaming
basado en aplicaciones de
código abierto
Johnny Richard Laura Quispe
INICTEL-UNI – Lima, Marzo 2008
Agenda
1. Video Streaming: Conceptos, Algoritmos y Sistemas
• Conceptos de video streaming y aplicaciones de comunicación
• Media streaming: Protocolos y estándares
2.Servidores de Video Streaming comerciales
3.Integración y desarrollo de un sistema de video streaming de código abierto.
4.Comparaciones
5.Conclusión
Una aplicación de comunicación de video puede ser punto a punto, multicast o de tipo broadcast.
El video puede ser precodificado o quizá codificado en tiempo real.
Conmutación de paquetes o conmutación de circuitos.
Puede la transmisión soportar tasa de muestreo constante o variable.
Calidad de servicio.
Compresión de video.
1. Video Streaming: Conceptos, Algoritmos y Sistemas
• Conceptos de video streaming y aplicaciones de comunicación
• Media streaming: Protocolos y estándares
Codificación multimedia: H.263 para video y MPEG-4 para video y audio (AMR para 3GPP).
Transporte multimedia: RTP para datos, usualmente sobre UDP/IP y RTCP para mensajes de control, usualmente sobre UDP/IP
Control de la sesión multimedia: RTSP
Anunciación y descripción de multimedia: SDP
1. Video Streaming: Conceptos, Algoritmos y Sistemas
➢ Aspectos a considerar:✔ Modelos de Difusión✔ Métodos de difusión: Unicast, Multicast, Broadcast, etc.
✔ Bloqueos en la transmisión: Firewall, NAT, IPS,etc.
✔ Condiciones de acceso de parte de los clientes.
✔ Consideraciones respecto al reproductor de video que los clientes deben o pueden utilizar.
➢ Selección de programas y/o aplicaciones que formaran parte de la plataforma a implementar.
● Consideraciones generales para la Implementación de sistemas de video streaming
3. Integración y desarrollo de un sistema de video streaming de código abierto
3. Integración y desarrollo de un sistema de video streaming de código abierto
➢ Darwing Streaming Server➢ VideoLan Server – VideoLan Client➢ Red5 – Open Streaming Flash Server➢ Fenice➢ Icecast Streaming Media Server➢ Flumotion Streaming Media Server➢ Helix DNA Server
• Servidordes existentes
● Herramientas para el desarrollo del servidor
La implementación del servidor está basada en un 80% en el VLC media player, y en un 20% en otros proyectos tales como ffmpeg, FLV-tool, PHP, perl, Mysql, VSFTPD y Apache.
3. Integración y desarrollo de un sistema de video streaming de código abierto
● Características desarrolladas
➢Emisión en vivo➢Video en demanda – VoD (formato FLV)➢Retransmisión de eventos➢Emisión multicast, unicast y loopback➢Grabación en tiempo real del flujo retransmitido➢Transcodificacion de videos en tiempo real➢Administración mediante web
3. Integración y desarrollo de un sistema de video streaming de código abierto
4. Comparaciones
SiNoSiSiSi(QTSS & MacOS)
NoNoSi
(QTSS)SiDarwing
StreamingServer
SiNoNoSiSi
(HelixUniv.Producer)
SiSiSiSiHelix Universal
Server
SiSiSiSiSiSiSiNoSiSistema de
video implementado
TarjetasCodific.DVB
IEEE 1394FirewireArchivoMMSHTTP
RTP/TCP
RTP/UDP
FuenteCodificaciónTiempo real
Protocolos de Transporte
● Entradas y protocolos soportados
4. Comparaciones
NoSiSiSiNoNoSiNoSiNoSiDarwing Streaming
Server
SiSiSiSiSiSiSiSiSiSiSiHelix Universal
Server
SiSiSiSiSiSiSiNoNoSiSiSistema de videoimplementado
AnuncMult.RecepTransGrab.
envivo
WMenc.
QT&RTPencoding
RealNet. enc.
LogsMon. Recursos
Adm. WEB
DistribuciónBroadcasting CodificaciónAcceso y Monitoreo
● Características de funcionamiento y administración
5. Conclusiones
➢ Se comprobó la eficiencia y versatilidad del sistema de video implementado, cuyas características se asemejan a servidores comerciales existentes en el mercado con la diferencia que su costo es de S/ 0.00 soles en lo que concierne a licencias de uso.➢Por otro lado, se demostró que el nuevo estándar para la compresión de video AVC/H.264 desarrollado por la ITU-T-VCEG junto con el ISO/IEC-MPEG, demostró ser de gran eficiencia en la compresión de video.
FIN DE PRESENTACION FIN DE PRESENTACION
GRACIASGRACIAS
Demostracion
Enlaces de interés
http://www.videolan.org/http://www.apache.org/http://www.perl.org/http://ffmpeg.mplayerhq.hu/http://libflv.sourceforge.net/http://search.cpan.org/~clotho/FLV-Info-0.17/
http://developer.apple.com/opensource/server/streaming/index.htmlhttp://osflash.org/red5http://www.icecast.org/http://klaus.geekserver.net/FLVPlayer.tar.gzhttp://www.flumotion.net/