2011-11-03 32 views
10

Necesito hacer una aplicación que transmita multimedia en vivo. Actualmente, mi aplicación está tomando marcos de imágenes de una cámara web (usando OpenCV) y enviándolas al cliente. También está enviando audio usando el módulo pymedia. El problema es que tanto la imagen como los paquetes de audio que llegan al cliente no están sincronizados.Transmisión de audio y video con Python

Así que he siguientes preguntas:

  1. ¿Hay algún módulo en Python para la transmisión en vivo-multimedia?
  2. ¿Puedo hacer que los marcos de audio e imagen de alguna manera estén sincronizados para el cliente?

PS. pymedia no ha estado en desarrollo desde 2006 y no está funcionando.

+0

¿Encontró la respuesta para esto? –

Respuesta

2

Usted puede utilizar el módulo de pitón de GStreamer. Me refiero a gst-python mencionado anteriormente. Use el protocolo rtmp para sincronizar videos de clientes/servidores. La última vez que utilicé gst-python, no hubo soporte para rtmp. En ese momento, mi solución fue limitar el tamaño del búfer. Cuando el búfer se llena, los marcos más antiguos se descartarán.

0

Lo que se necesita es una aplicación de línea de comandos que hace streaming multimedia, que debería ser mucho más fácil de encontrar que un módulo de Python. Su aplicación Python entonces llamar a la aplicación de streaming usando subprocess.Popen(), algo así como:

from subprocess import Popen, PIPE 

cmd = "c:\Program Files\appdir\streamer.exe" 
subprocess.Popen(cmd, stdout=PIPE, stderr=PIPE).communicate()) 
Cuestiones relacionadas