pyglet播放视频的问题

Moa*_*ghi 1 python video pyglet

我是pyglet的新手,我有视频问题..我正在尝试使用pyglet播放视频..但不是在窗口中播放视频,它只是立即退出并终止..你们有什么解决方案吗?对于这个问题我怎么能抓住窗户玩vedio?我使用Windows vista 64x与python 2.5请帮忙

这是代码:

vidPath="vid.avi"
widnow = 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)

vidPath="vid.avi"
widnow = 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)

vidPath="vid.avi"
widnow = 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)

vidPath="vid.avi"
widnow = 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)

vidPath="vid.avi"
widnow = 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)

非常感谢你的时间

小智 7

这可能有点晚了,具有讽刺意味的是,如果你在media_player.py小猪文档中挖掘得足够多,你就可以将它们拼凑在一起,但对于我们这些花了几个小时试图让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()
Run Code Online (Sandbox Code Playgroud)