pyglet 播放视频的问题
我刚接触pyglet,遇到了一个视频播放的问题。
我想用pyglet播放一个视频,但窗口一打开就立刻关闭,视频根本没播放。
你们有没有什么解决办法,能让我保持窗口打开来播放视频呢?
我用的是Windows Vista 64位,Python 2.5。
请帮帮我。
这是我的代码:
vidPath="vid.avi"
window = pyglet.window.Window()
source = pyglet.media.StreamingSource()
MediaLoad = pyglet.media.load(vidPath)
player = pyglet.media.Player()
player.queue(MediaLoad)
player.play()@window.event
...def on_draw():
... player.get_texture.blit(0,0)
非常感谢你的时间。
2 个回答
7
这可能有点晚了,讽刺的是,如果你在media_player.py的piglet文档中仔细查找,你可以把这些信息拼凑在一起。不过,对于那些花了几个小时试图让pygame在Windows上播放电影的人来说,尤其是那些无奈地尝试让pymedia与pygame正确对接并同步音频和视频,最终决定放弃转而使用piglet的人,这里有一个最简单的例子,可以让你顺利播放电影,并解决上面代码中的问题。
import pyglet
vidPath="TE5.mpg"
window = pyglet.window.Window()
player = pyglet.media.Player()
source = pyglet.media.StreamingSource()
MediaLoad = pyglet.media.load(vidPath)
player.queue(MediaLoad)
player.play()
@window.event
def on_draw():
window.clear()
if player.source and player.source.video_format:
player.get_texture().blit(0,0)
pyglet.app.run()
0
我觉得应该加上“pyglet.app.run()”这个调用。