18-03-2021, 13:35:38
Bonjour,
Dans le cadre du projet (un pibooth modifiable) ou j'ai déjà eu de l'aide, je me heurte a un nouveau problème.
Lors de la prise de vue, je veux qu'il s'affiche la camera en direct avec par dessus un compte à rebours avant le déclenchement de la prise de vue.
J'ai réussi à afficher en direct ce que la camera filme.
J'ai créer le compte a rebours.
mais voila quand je lance le programme, j'ai un délais de rafraichissement de la camera de 2s environ
qqu''un aurais une solution pour réduire le LAG ?
Si cela intéresse des personnes, j'ai fait un petit site sur l'avancement des mes projets en cours.
Si vous passez et que vous voulez laisser une contribution (intellectuelle)...
https://kiffkizz.wixsite.com/mesprojets/pibooth
Dans le cadre du projet (un pibooth modifiable) ou j'ai déjà eu de l'aide, je me heurte a un nouveau problème.
Lors de la prise de vue, je veux qu'il s'affiche la camera en direct avec par dessus un compte à rebours avant le déclenchement de la prise de vue.
J'ai réussi à afficher en direct ce que la camera filme.
J'ai créer le compte a rebours.
mais voila quand je lance le programme, j'ai un délais de rafraichissement de la camera de 2s environ
qqu''un aurais une solution pour réduire le LAG ?
Python
#coding:utf-8
# Les librairies
import sys
import pygame
import pygame.camera
import time
#les constantes
largeur_ecran=800
hauteur_ecran=600
nom_fonte_acc ="fonts/aAtos.ttf" # Nom de la fonte utilisée
largeur_compte=800 # Largeur de l'image de la camera
hauteur_compte=600 # Hauteur de l'image de la camera
taille_compte=200 # Taille du chiffre du compre a rebour
texte_compte=5 # Temps du compte a rebour
couleur_texte_compte=[255,255,255] # Couleur du chiffre du compre a rebour
pos_texte_compte=[(largeur_compte/2)-(taille_compte/10),(hauteur_compte/2)-(taille_compte/4)]
pos_texte_compte_fin=[0,(hauteur_compte/2)-(taille_compte/4)]
# Les variables
texte_compte_aff=texte_compte
# Initialisation de pygame et de la camera
pygame.init()
pygame.camera.init()
# definitione de la taille de la surface et de l'affichage de la camera
windows_surface = pygame.display.set_mode((largeur_ecran,hauteur_ecran),0)
cam_list = pygame.camera.list_cameras()
cam = pygame.camera.Camera(cam_list[0],(largeur_compte,hauteur_compte))
cam.start()
# Fonte du compte a rebour, la meme que celle de la page d'accueil
acceuil_fonte = pygame.font.Font(nom_fonte_acc, taille_compte)
launched = True
while launched :
for event in pygame.event.get() :
if event.type == pygame.QUIT :
launched = False
image1 = cam.get_image()
image1 = pygame.transform.scale(image1,(largeur_compte-20,hauteur_compte-20))
windows_surface.blit(image1,(10,10))
pygame.display.update()
# corp du programme ------------------------------------------------------------------------------------------------------------
# Texte a afficher
if texte_compte_aff == 0:
texte_cpt="Souriez"
else:
texte_cpt=str(texte_compte_aff)
# Mise en page du texte a afficher
texte_cpt = acceuil_fonte.render(texte_cpt, True, couleur_texte_compte)
# Affichage du texte
if texte_compte_aff == 0:
windows_surface.blit(texte_cpt, pos_texte_compte_fin )
else:
windows_surface.blit(texte_cpt, pos_texte_compte )
# mise a jour de l affichage
pygame.display.flip()
# Compte a rebour
texte_compte_aff -=1
time.sleep(1)
Si cela intéresse des personnes, j'ai fait un petit site sur l'avancement des mes projets en cours.
Si vous passez et que vous voulez laisser une contribution (intellectuelle)...
https://kiffkizz.wixsite.com/mesprojets/pibooth