Suppression preview pendant capture : plus de conflit gphoto2, capture propre
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
import io
|
||||
import logging
|
||||
import subprocess
|
||||
import threading
|
||||
import time
|
||||
from datetime import datetime
|
||||
|
||||
@@ -67,7 +66,6 @@ class Camera:
|
||||
self.webcam = None
|
||||
self.webcam_index = -1
|
||||
self.preview_dslr_ok = True # True si le dernier preview DSLR a reussi
|
||||
self._gp_lock = threading.Lock() # Un seul appel gphoto2 a la fois
|
||||
|
||||
def connecter(self, source=None) -> bool:
|
||||
"""Connecte la camera. source: 'gphoto2', 'webcam:0', 'webcam:2', etc."""
|
||||
@@ -225,8 +223,6 @@ class Camera:
|
||||
log.warning(f"Viewfinder non supporté : {e}")
|
||||
|
||||
def _preview_gphoto2(self) -> bytes | None:
|
||||
if not self._gp_lock.acquire(blocking=False):
|
||||
return None # Capture en cours, on saute ce frame
|
||||
try:
|
||||
fichier = self.camera.capture_preview()
|
||||
donnees = bytes(fichier.get_data_and_size())
|
||||
@@ -241,8 +237,6 @@ class Camera:
|
||||
except gp.GPhoto2Error as e:
|
||||
log.error(f"Erreur preview DSLR : {e}")
|
||||
return None
|
||||
finally:
|
||||
self._gp_lock.release()
|
||||
|
||||
def _preview_webcam(self) -> bytes | None:
|
||||
if not self.webcam or not self.webcam.isOpened():
|
||||
|
||||
Reference in New Issue
Block a user