使用libvlc和Python流式播放列表

时间:2018-08-15 12:11:01

标签: python video-streaming vlc libvlc

我想使用libvlc和Python播放完整的播放列表(m3u)。

我能够使用以下代码流式传输单个视频:

inst  = vlc.Instance()
param=[
    "test.mp4"
    ,"sout=#rtp{dst=224.1.1.10,port=10100,mux=ts}"
    ]
Media = inst.media_new(*param)
player = Media.player_new_from_media()
player.play()

问题是,似乎没有办法将选项传递给播放列表。创建vlc实例时,我试图通过它们,但这不起作用。

inst  = vlc.Instance('--sout=#gather:rtp{dst=224.1.1.10,port=10100,mux=ts}')
Media_list = inst.media_list_new(['test.m3u'])
list_player = inst.media_list_player_new()
list_player.set_media_list(Media_list)
list_player.play()

在本地播放时,相同的代码可以正常工作。

谢谢

1 个答案:

答案 0 :(得分:0)

好吧,似乎无法在VLC实例级别上设置流式传输选项。

我要做的是遍历媒体列表中的所有媒体,并通过add_option函数设置适当的选项。

如果必须这样做,请小心,因为必须在选项之前添加:

media.add_option(":sout=#gather:rtp{dst=%s,port=%d,mux=ts}"%(multicast_address,video_port))