pygameで動画の扱い方がどうすればいいかということで、いろいろと調べてみたのですが、正直答えが見つかりません。
単純にffmpeg か gstreamerをダウンロードすることによって動画の再生などは可能ですが、pygameで生成したスクリーン内で写す事ができません。
スポンサーリンク
pygame.movie.Movieを使う
調べたところ確かに
pygame.movie.Movie(filename)
というものがありました。
しかし、
import pygame #pygameをインポート
from pygame.locals import* #pygameの使用を簡単にする
import sys #sysをインポート
pygame.init() #pygameの初期化
screen=pygame.display.set_mode((480,360)) #スクリーンサイズを設定
pygame.display.set_caption("主人公を動かす") #タイトルの設定
mov=pygame.movie.Movie("a.mpg")
mov.play(-1)
while(1):
pygame.display.update() #スクリーンの更新
for event in pygame.event.get(): #イベントの設定
if event.type == QUIT: #もし終了ボタンをおされたら
pygame.quit() #終了する
sys.exit(0) #正常終了
if event.type==KEYDOWN:
if event.key==K_SPACE:
sys.exit()
と入力しても
raise NotImplementedError(MissingPygameModule)
NotImplementedError: movie module not available
(ImportError: No module named 'pygame.movie')
と出てきます。
私はwindowsをつかっています
調べてみると、windowsでの動作は不安定ということでした。
こちら(pygame.movie日本語)によれば、pymediaというものを使用してくださいと書かれていますが、それについての記事はほとんどが英語でした。
日本語で書かれているものがかなり少ないので、インストールしたとしても使いこなせる気がしません。
まとめ
調べて解決することができればよかったのですが、私の力ではここら辺が限界でした。
もし、「pygameでpygame.movieがつかえるよ!!」という人がいれば是非コメントで教えてください。
Macとかで実行すれば解決するんですかね?