2017-02-12 2 views
0

Je crée un simple pygame, et ne peux pas trouver comment faire un clip d'aperçu de Moviepy en plein écran. Utiliser Moviepy pour ma cinématique d'ouverture. Voici mon code:Moviepy fullscreen

import moviepy 
import os 
from moviepy.editor import * 
import pygame 

pygame.display.set_caption('Game title') 

os.environ["SDL_VIDEO_CENTERED"] = "1" 

clip = VideoFileClip('qq.mp4') 

clip.preview() 

execfile("startGame.py") 

Je ne suis pas sûr que ce soit la meilleure pratique pygame à utiliser pour une ouverture cinématographique en plein écran ...

+0

Avez-vous essayé de saisir la taille réelle de l'écran à partir de quelque part, puis de redimensionner l'affichage pygame? – tburrows13

+0

Ouais. Je ne me souviens pas exactement du code, mais j'ai essayé pas mal de choses. Il serait juste redimensionné à sa taille d'origine. – user2648117

+0

Ok, alors, utilisez 'clip.resize (height = screenheight)' ou quelque chose comme ça. Vraisemblablement, vous voulez qu'il y ait une bande noire le long du bas + haut/côtés si le format de l'écran n'est pas le même que celui de la vidéo? – tburrows13

Répondre

0

j'ai changé en Python \ Python36-32 \ Lib \ site-packages \ moviepy \ video \ io ligne preview.py 94

screen = pg.display.set_mode(clip.size) 

à

screen = pg.display.set_mode(clip.size,pg.FULLSCREEN) 

et redimensionné le clip sous ma résolution (1280x800). Sinon, il génère une erreur.

import pygame 
from moviepy.editor import VideoFileClip 
pygame.init() 
clip = VideoFileClip('Intro.mpg') 
clipresized = clip.resize (height=700) 
clipresized.preview() 
game_loop() 
pygame.quit() 
quit() 

J'utilise moviepy pour la même raison que vous faites et mon code ressemble beaucoup à la vôtre (cela ne signifie pas qu'il est juste). Ce n'est pas la meilleure façon de le faire et visser le lib pour d'autres utilisations, mais cela a fonctionné pour moi.