Python バインディングを介してVLC メディア プレーヤーで YouTube URL を再生しようとすると、実際にはビデオが再生されません。
再生を行う私のコードは次のとおりです。
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 からのページ コンテンツの返しだけですが、ビデオはありません。