2011-06-19 3 views
4

J'essaie de faire en sorte que Pygame lance des vidéos au format mpg pour l'intro de mon RPG. Mais ça ne marche pas. J'ai lu les docs de pygame et il dit que le support vidéo est actuellement instable et que je devrais utiliser pymedia à la place. Personnellement, je ne peux pas faire des têtes ni des queues de pymedia. Donc, y a-t-il un moyen de jouer des vidéos avec pygame?Comment lire des vidéos avec pygame?

+0

J'ai trouvé que le programme d'exemple de recodage vidéo posté sur pymedia.org ne fonctionnait pas avec le dernier instantané CVS de pymedia. Donc, je comprends pourquoi vous étiez frustré par cette API. Si vous vous sentez froggy vous pourriez aller chercher ffmpeg et SWIG et le faire vous-même. – wberry

+0

N'y a-t-il pas d'autres bibliothèques média python tierces? – ApprenticeHacker

+0

pymedia, pyffmpeg et pygame sont les seuls que j'ai trouvés candidats à de "bons outils de développement" pour la vidéo en Python. J'étais frustré par pymedia. pyffmpeg a l'air génial mais a une dépendance sur Cython que je n'ai pas pu travailler sur mon système. PyGame a un support de lecture vidéo mais j'avais besoin de plus que de la simple lecture. – wberry

Répondre

3

(j'ai décidé de risquer l'affichage cela comme une réponse plutôt qu'un commentaire.)

Les trois candidats « d'espoir » pour le montage vidéo/traitement en Python que j'ai trouvé sont PyMedia (que j'ai abandonné) , PyGame (qui peut répondre à vos besoins mais ne répond pas aux miens) et pyffmpeg (ce qui est très prometteur mais dépend de Cython, et je ne pouvais pas faire fonctionner Cython sur mon système).

La plupart des applications d'édition ou de traitement vidéo matures (commerciales ou open source) utilisent les bibliothèques FFmpeg d'une manière ou d'une autre. PyMedia inclut une version modifiée des bibliothèques libav *, par exemple. Même de nombreux outils commerciaux utilisent ces bibliothèques en violation de la licence FFmpeg. FFmpeg est implémenté en C, et n'a pas de hook pour les autres langages "out of the box". L'apprentissage de l'API pour les librairies libav * n'est pas pour les âmes sensibles (pas de docs directs fournis, il suffit de lire la source et les exemples et FAQ), mais pour autant que je sache, FFmpeg est essentiellement comment la vidéo est faite dans le "monde réel". Donc, si vous ne trouvez pas une solution prête à l'emploi pour Python qui répond à vos besoins, vous pouvez utiliser SWIG ou un autre générateur d'interface pour envelopper les bibliothèques FFmpeg en stock comme point de départ. J'ai l'intention de le faire moi-même à l'avenir si je trouve le temps.

+0

Eh bien, je vais (j'espère) apprendre FFMpeg directement à partir de C, et il peut être utile pour moi là-bas, mais malheureusement je ne Ne le vois pas utilisé dans mon jeu de python pendant un moment, jusqu'à ce que quelques bonnes liaisons soient développées. Merci! J'avais aussi besoin d'une bonne bibliothèque vidéo pour le C/C++, donc votre réponse me sauve une autre question. :RÉ – ApprenticeHacker

Questions connexes