Pregunta

Necesito dividir la transmisión de video mpeg4 (en realidad, desde la cámara de video de Android) para enviarla a través de RTP.La especificación es un poco grande para una referencia rápida.

Me pregunto si hay algún ejemplo/código fuente abierto para la paquetización de mpeg4.

Gracias por cualquier ayuda !

¿Fue útil?

Solución

El formato de archivo Mpeg4 también se llama ISO/IEC 14496-14.Busque en Google cualquier especificaciones que encuentre.Sin embargo, lo que está intentando hacer (editor RTP) será difícil por las siguientes razones:

  1. Mpeg4 tiene un encabezado al final del archivo.Lo que significa que el encabezado se escribirá sólo cuando finalice la transmisión de video.Dado que desea realizar transmisión de video en tiempo real, deberá adivinar dónde comienzan y terminan los paquetes de audio y video.Esto no será igual en todos los dispositivos Android, ya que pueden usar diferentes tamaños de video y parámetros de códec.Por lo tanto, su código dependerá del dispositivo y deberá admitir y probar muchos dispositivos diferentes.

  2. Algunos dispositivos no descargan los datos de vídeo en el archivo a intervalos regulares.Algunos solo se enjuagan una vez cada minuto aproximadamente.Esto interrumpirá su transmisión en tiempo real.

  3. No hay ningún código de ejemplo.Lo sé porque miré.Hay algunas empresas que hacen algo similar, pero principalmente se saltan el RTP.En lugar de eso, cargan progresivamente el archivo en su propio servidor y luego implementan el "corte" de la transmisión de video/audio y luego lo insertan en su backend de video/transcodificador.Solía ​​trabajar para una de esas empresas y así es como lo hicimos.La competencia AFAIK adoptó enfoques similares.La ventaja es que toda la complejidad está en el servidor y no es necesario actualizar a los clientes cuando algo falla o llegan nuevos dispositivos al mercado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top