2009-12-07 187 views
1

我是pyglet的新手,我遇到了視頻問題.. 我試圖使用pyglet播放視頻..但不是在窗口中播放視頻,而是立即退出,終止.. 你們有這個問題的任何解決方案我怎麼能拿着窗口播放視頻? 我使用Windows Vista 64倍與Python 2.5 請幫助pyglet播放視頻的問題

這裏是代碼:

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)

感謝ü非常的寶貴時間

回答

0

我覺得叫「pyglet .app.run()「缺失。

7

如果你在media_player.py仔豬文檔中挖掘出足夠多的東西,你可以將它們組合在一起,但對於那些花時間試圖讓pygame在Windows上播放電影的人來說,這可能有點晚了,具有諷刺意味的是, ,並且絕望地試圖讓pymedia正確地與pygame進行交互,並讓音頻與視頻同步,並決定放棄並切換到仔豬,這裏是一個準系統的最低限度的例子,它將獲得一個電影播放,修復了代碼中的問題以上。

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

嘗試幾個小時才能讓pygame在windows上播放視頻正是我所做的,並最終在這裏結束。謝謝! (有一種方法可以將視頻幀轉換爲字符串,並將它們重新加載到pygame中:http://pastebin.com/LLYDQwyz) – 2013-11-03 20:28:49

+0

謝謝!但請注意,代碼段中不需要'source'變量 – Nagasaki45 2014-06-03 14:38:23