Bonjour,

j'avais eu un coup de pouce il y a quelque temps par rapport à l'enregistrement d'une image issue d'une camera via l'utilisation de "Qtmultimedia.QCameraImageCapture".
le code qui m'avait été conseillé était le suivant (et il marche très bien):

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# préparation de la capture
self.imageCapture = QtMultimedia.QCameraImageCapture(self.camera)
 
# capture dans un fichier (et non dans un buffer)
self.imageCapture.setCaptureDestination(QtMultimedia.QCameraImageCapture.CaptureToFile)
 
# format de l'image à capturer
imageSettings = QtMultimedia.QImageEncoderSettings()
imageSettings.setCodec("image/jpeg");
self.imageCapture.setEncodingSettings(imageSettings)
 
# capture dans le fichier jpg fourni (avec chemin)
self.camera.searchAndLock()
self.imageCapture.capture(r"E:\Pythondev\Pydev3_qt5\python3\PyQt5\QCamera\toto.jpg")
self.camera.unlock()
la documentation fait référence à la possibilité d'utiliser à la place de "QtMultimedia.QCameraImageCapture.CaptureToFile" un buffer en utilisant l'appel:
QtMultimedia.QCameraImageCapture.CaptureToBuffer.

j'ai récemment appris à utiliser un Buffer pou y charger un fichier déjà existant (sur disque)...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
        buffer1 = QBuffer()
        buffer1.open(QIODevice.ReadWrite)
        self.image_originale = QImage(self.pixmap)
        self.image_originale.save(buffer1,"jpeg")
        b1 = BytesIO()
        b1.write(buffer1.data())
        b1.seek(0)
b1 contenant (si j'ai bien compris) l'image contenue dans Le "buffer1".

Aujourd'hui, j'essaye d'utiliser le "QCameraImageCapture.CaptureToBuffer" mais je n'arrive pas à combiner les deux méthodes ci dessus... est-ce possible ou ce sont deux types de buffer differents?

merci pour votre aide,