Потоковое аудио и видео с Python - PullRequest
10 голосов
/ 03 ноября 2011

Мне нужно создать приложение для потоковой передачи мультимедиа.В настоящее время мое приложение берет кадры изображения с веб-камеры (используя OpenCV) и отправляет их клиенту.Он также отправляет аудио с помощью модуля Pymedia.Проблема заключается в том, что и изображение, и аудиопакеты, поступающие на клиент, не синхронизированы.

Поэтому у меня возникают следующие вопросы:

  1. Есть ли в python какой-либо модуль для live-потоковая передача мультимедиа?
  2. Можно ли как-то синхронизировать кадры аудио и изображений для клиента?

PS.pymedia не разрабатывается с 2006 года и не работает.

Ответы [ 3 ]

3 голосов
/ 03 ноября 2011

Вы можете попробовать gst-python module.

Подробнее см. В документации gstPython .

2 голосов
/ 03 ноября 2011

Вы можете использовать модуль Python gstreamer. Я имею в виду gst-python, упомянутый выше. Используйте протокол RTMP для синхронизации видео клиент / сервер. В прошлый раз, когда я использовал gst-python, не было поддержки rtmp. В то время моим решением было ограничить размер буфера. Когда буфер заполнится, самые старые кадры будут удалены.

0 голосов
/ 03 ноября 2011

Что вам нужно, это приложение командной строки, которое выполняет потоковую передачу мультимедиа, которое должно быть намного легче найти, чем модуль Python.Ваше приложение Python будет затем вызывать потоковое приложение, используя subprocess.Popen (), что-то вроде:

from subprocess import Popen, PIPE

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