2011-04-30 18 views
13

soy muy nuevo para la transmisión multimedia, y tengo algunas dudas básicas para borrar:medios fundamentos de streaming - HTTP vs RTMP

  1. Por lo que yo puedo entender, la diferencia entre la transmisión HTTP (dicen través de Apache) y una transmisión RTMP (a través de Red5) es que los servidores de transmisión proporcionan control de buffering y avanzado como buscar, etc. ¿Tengo razón?

  2. ¿Puedo transmitir solo videos flash desde servidores RTMP como Red5? Si tengo que transmitir diferentes formatos de archivos, ¿debo recurrir a la transmisión HTTP? ¿Puedo usar herramientas como xuggler para transcodificar dinámicamente archivos y enviar de acuerdo con la solicitud del servidor Red5?

estoy posando todas estas dudas porque tengo que proporcionar el streaming a todos los clientes móviles - iPhone, Blackberry, Android - iPhone no soporta flash, por lo que es una buena idea ir a por Red5?

Respuesta

22

Permítanme ser un poco prolijo para borrar los detalles.

1) ¿Qué es "transmisión"? Por lo general, en el mundo de la transmisión de video es la entrega de marcos de acuerdo a tiempo real. Si tiene un video de 30 minutos, se lo enviará al usuario en 30 minutos.

Existen protocolos especiales dedicados exclusivamente a la transmisión por secuencias: RTSP (quizás el antiguo de la vida actual), RTMP, MJPEG, familia de protocolos basados ​​en http (apple, abobe, microsoft) y algunos otros protocolos de proveedores cerrados.

2) qué es "http-streaming" o "pseudo-streaming". Si solo coloca su archivo en el servidor HTTP, el usuario puede descargarlo y mirarlo. Si descarga un video completo, incluso puede buscarlo. Pero, ¿qué sucede si el usuario desea buscar en medio de la película sin descargar la primera parte? Debería de alguna manera decirle al servidor: abrir el contenedor de archivos, buscar este momento y empacar el archivo. Por lo tanto, el servidor HTTP debe conocer la estructura del contenedor de archivos para entregar la funcionalidad de búsqueda al cliente.

nginx y apache pueden hacerlo para contenedores flv y mp4, lo que está bien para el 100% del video, es posible reproducirlo a través de Flash Player.

3) ¿Qué es HTTP-messer con hoy en día? Apple, Adobe y Microsoft han diseñado e implementado la transmisión en la parte superior de HTTP. Significa que el cliente descarga un segmento de 10 segundos, manteniendo la tasa de fotogramas adecuada. La película de 30 minutos aún se descarga en 30 minutos, pero hay grandes retrasos entre las descargas de los segmentos. Es posible buscar en ese "formato", cambiar velocidades de bits, etc.

4) Los servidores RTMP Streaming como Red5 o erlyvideo pueden transmitir H.264, H.263, VP6 y video en pantalla. MPEG-4 (Xvid/DivX) o MPEG-2 no es compatible.

+0

Aquí una explicación clara y detallada entre la descarga progresiva HLS y HTTP: http://www.streamingmedia.com/Articles/Editorial/Featured-Articles/HTTP-Streaming-What-You-Need-to-Know-65749. aspx – Buzut