Потоковая передача медиафайлов через DLNA/UPnP

В настоящее время я использую Raspbmc на своем Raspberry Pi и активировал потоковую визуализацию UPnP.

Моя цель - написать простой Python для потоковой передачи видео или музыкального плейлиста.

Я попробовал Coherence, но я выбрасываю кучу исключений, и я не совсем понимаю, как обстоят дела с хаотичной документацией. Поэтому я ищу более легкий путь / библиотеку.

Какой самый простой способ передавать медиафайлы на телевизор с помощью Python?

3 ответа

Существует легкая чистая библиотека Python dlnap, которая позволяет воспроизводить мультимедиа на устройствах DLNA/UPnP в одной локальной сети.

Вы можете использовать привязку GUPnP для python через gi.repository. Поиск документации по ГУПнП и ГССДП, ГУПнП АВ.

Вы можете соединить их с чем-то вроде мини-веб-сервера с базой данных django+SQLite, чтобы определить тип службы каталогов контента (CDS), также вы можете использовать Gstreamer (существует привязка к python, называемая Gst). С помощью этих элементов вы можете создать собственный сервер, используя SSDP для обнаруженных вещей; Из gstreamer вы можете получить метаданные о каждом элементе мультимедиа, а также использовать "rtspsrc" из gstreamer для потоковой передачи.

Только для аудио я получил хорошие результаты с rygel. Самое сложное - настроить разъем GstLaunch pulseaudio в.config/rygel.conf. Вот мой раздел, но вы можете получить правильный источник импульса с помощью следующей команды:

pactl list | egrep -A2 '^(\*\*\* )?Source #' | grep 'Name: .*\.monitor$' | awk '{print $NF}' | tail -n1

Вот мой раздел GestLaunch:

[GstLaunch]
enabled=true
launch-items=myaudiowav;myaudiompeg

myaudiowav-title=WAV audio on @HOSTNAME@
myaudiowav-mime=audio/x-wav
myaudiowav-launch=pulsesrc device=alsa_output.pci-0000_00_14.2.analog-stereo.monitor ! audio/x-raw,channels=2 ! wavpackenc

myaudiompeg-title=MPEG audio on @HOSTNAME@
myaudiompeg-mime=audio/mpeg
myaudiompeg-launch=pulsesrc device=alsa_output.pci-0000_00_14.2.analog-stereo.monitor ! audio/x-raw,channels=2 ! lamemp3enc target=quality q
uality=6
Другие вопросы по тегам