bonjour,

Voici ma question, je suis en train de programmer un frontend pour Mame.
pour chaque jeu, j'affiche une vidéo de 30s.
Pour l'instant j'utilise le module Movie de Pygame et cela fonctionne correctement.

Je voudrait aller plus loin et dépasser les limite de se module, à savoir :
pouvoir redimensionner les vidéo lues et utiliser autre chose que du MPEG 1. Je m'explique :

Je voudrais afficher une vidéo de dimension (Hauteur ,Largeur) en fonction des dimensions de l'écran de l'utilisateur.
En gros pour un petit format les dimensions seront H et L, pour un plus gros ecran H*1.5 et L * 1.5 etc.

J'arrive à afficher une vidéo avec le module VLC. Pour cela il faut passer l'id de la fenêtre à VLC pour qu'il puisse afficher la vidéo dedans.
Le problème est que cela affiche la vidéo en plein écran et non pas dans un coin l'écran.
Une pygame.surface n'ayant pas d'ID je n'arrive pas a indiquer à VLC qu'il faut afficher la vidéo dans une surface à tel endroit dans ma fenêtre.

Je vous mets le bout de code pour explication.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
vlc = vlc.Instance()
film = vlc.media_new(repertoire_courant  + '/data/films/Altered Beast.mpeg')
lecteur = vlc.media_player_new()
win_id = pygame.display.get_wm_info()['window'] #recupération de l'id de la fenetre
lecteur.set_hwnd(win_id) # passage de l'information à VLC
lecteur.set_media(film) # passage de la video à VLC
lecteur.play()'''
je voudrais pouvoir créer une surface et dire à VLC d'afficher la vidéo sur cette surface.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
surface_film = pygame.Surface((100,100))
surface_film.fill([0, 0, 0])
surface_rect = surface_film.get_rect()

Il y très peu de tuto la dessus, merci d'avance pour votre aide.