尝试播放带有 VLC media player 的 YouTube URL 时通过 Python 绑定(bind),视频实际上并未播放。
这是我的播放代码:
def play(self, mrl):
self.instance = vlc.Instance()
try:
self.media = self.instance.media_new_location(mrl)
except NameError:
print('NameError: %s (%s vs LibVLC %s)' % (sys.exc_info()[1],
vlc.__version__,
vlc.libvlc_get_version()))
self.player = self.instance.media_player_new()
self.player.set_media(self.media)
event_manager = self.player.event_manager()
event_manager.event_attach(vlc.EventType.MediaPlayerEndReached, self.end_callback)
self.player.play()
while self.stillPlaying:
#do nothing
pass
我这样调用它:
play("http://www.youtube.com/watch?v=2hP-UGqA1Ek")
如果您确实使用 VLC 媒体播放器播放此类链接,它会“找到”视频并播放它。但我的代码所发生的只是页面的标准 HTTP GET,以及从 YouTube 返回页面内容,但没有视频。
最佳答案
这是因为您提供的链接不是视频的链接。 VLC 媒体播放器可以获取 YouTube 视频的实际链接,但 libVLC 不会这样做。
关于python - VLC Python 无法播放 YouTube 视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11436864/