QCameraImageCapture et Buffer
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:
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:
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,