我目前正在Raspberry Pi上运行Raspbmc并激活UPnP流式渲染。
我的目标是编写一个简单的Python来流式传输视频或音乐播放列表。
我已经尝试了Coherence,但是它抛出了一堆异常,我并没有真正理解为documentation is pretty chaotic。所以我正在寻找一种更简单的方法/库。
使用Python将媒体文件流式传输到电视的最简单方法是什么?
答案 0 :(得分:1)
仅限音频, 我和rygel取得了不错的成绩。 棘手的部分是在.config / rygel.conf中配置GstLaunch pulseaudio连接器。 这是我的部分,但您可以使用以下命令获得正确的pulseaudio源:
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
答案 1 :(得分:1)
有一个轻量级的纯python库dlnap,允许在同一本地网络中的DLNA / UPnP设备上播放媒体
答案 2 :(得分:0)
您可以通过the gi.repository将GUPnP绑定用于python。在documentation搜索GUPnP和GSSDP,GUPnP AV。
你可以将它们与运行django + SQLite数据库的迷你网络服务器结合起来定义一种内容目录服务(CDS),你也可以使用Gstreamer(一种叫做Gst的python绑定)。使用这些元素,您可以使用SSDP为发现的内容构建自定义服务器;从gstreamer你可以获得有关每个媒体项的元数据,也可以使用gstreamer的“rtspsrc”进行流式传输。