Bookworm, picamera2 et plugin qt.qba.xcb

Je suis passé à bookworm suite à l’instabilité de la liaison wifi entre le pi et ma freebox pop sous Bullseye et qu’on ne retrouve pas sur le dernier OS.
Un bug apparait avec le module python picamera2 et plugin qt.qba.xcb (GitHub - raspberrypi/picamera2: New libcamera based python library) qu’on rencontre en exécutant la technique de video utilisée dans l’exemple yuv_to_rgb.py (avant dernier de la liste)
On obtient un cadre qt sans l’image désirée lié au plugin qt.qbq.xcb

>>> *login*@raspberrypi:~ $ python3
>>> Python 3.11.2 (main, Mar 13 2023, 12:18:29) [GCC 12.2.0] on linux
>>> Type "help", "copyright", "credits" or "license" for more information.
>>> #!/usr/bin/python3
>>> 
>>> import cv2
>>> 
>>> from picamera2 import Picamera2
>>> 
>>> cv2.startWindowThread()
0
>>> 
>>> picam2 = Picamera2()
[0:13:45.076782935] [2209]  INFO Camera camera_manager.cpp:284 libcamera v0.1.0+99-4a23664b
[0:13:45.125174340] [2212]  WARN RPiSdn sdn.cpp:39 Using legacy SDN tuning - please consider moving SDN inside rpi.denoise
[0:13:45.128559032] [2212]  INFO RPI vc4.cpp:444 Registered camera /base/soc/i2c0mux/i2c@1/ov5647@36 to Unicam device /dev/media1 and ISP device /dev/media2
[0:13:45.128928319] [2212]  INFO RPI pipeline_base.cpp:1142 Using configuration file '/usr/share/libcamera/pipeline/rpi/vc4/rpi_apps.yaml'
[0:13:45.134480956] [2209]  INFO Camera camera_manager.cpp:284 libcamera v0.1.0+99-4a23664b
[0:13:45.185249431] [2215]  WARN RPiSdn sdn.cpp:39 Using legacy SDN tuning - please consider moving SDN inside rpi.denoise
[0:13:45.189166757] [2215]  INFO RPI vc4.cpp:444 Registered camera /base/soc/i2c0mux/i2c@1/ov5647@36 to Unicam device /dev/media1 and ISP device /dev/media2
[0:13:45.189341586] [2215]  INFO RPI pipeline_base.cpp:1142 Using configuration file '/usr/share/libcamera/pipeline/rpi/vc4/rpi_apps.yaml'
>>> config = picam2.create_preview_configuration(lores={"size": (640, 480)})
>>> picam2.configure(config)
[0:13:45.201768012] [2209]  INFO Camera camera.cpp:1181 configuring streams: (0) 640x480-XBGR8888 (1) 640x480-YUV420 (2) 640x480-SGBRG10_CSI2P
[0:13:45.202275240] [2215]  INFO RPI vc4.cpp:608 Sensor: /base/soc/i2c0mux/i2c@1/ov5647@36 - Selected sensor format: 640x480-SGBRG10_1X10 - Selected unicam format: 640x480-pGAA
>>> picam2.start()
>>> 
>>> while True:
...     yuv420 = picam2.capture_array("lores")
...     rgb = cv2.cvtColor(yuv420, cv2.COLOR_YUV420p2RGB)
...     cv2.imshow("Camera", rgb)
... 
qt.qpa.xcb: QXcbConnection: XCB error: 148 (Unknown), sequence: 192, resource id: 0, major code: 140 (Unknown), minor code: 20

Ce qui n’est pas le cas en exécutant le même programme avec bullseye où on obtient une bonne vidéo.

Je n’ai trouvé aucune solution au problème et je vais attendre le correctif du plugin.

Salut, je te conseil, si ce n’est pas fait, de tester la caméra sous le même OS, mais avec un autre programme, pour t’assurer que la caméra est correctement pris en charge. Vu que tu utilise la PiCamera v2, regarde aussi les config pour désactiver le mode « legacy », qui prend en charge la PiCamera v1, pour etre sur de faire tourner les pré-requis adéquat.

Utilise également « v4l2-ctl » pour savoir comment ton système voit la caméra (spec etc…) et assure toi que /dev/video0 est présent et utilisable.

Je n’ai pas de PiCamera v2, n’ayant que des V1 sous la main, alors faudra que tu tentes de trouver la source du problème avec un peu de « taponnage ». Ou attendre que quelqu’un d’autre ai une réponse à ce problème.

Bonjour,
Je pense que mon message est suffisamment clair.
Tous les exemples de GitHub - raspberrypi/picamera2: New libcamera based python library (https://github.com/raspberrypi/picamera2/tree/main/examples) fonctionnent sauf yuv_to_rgb.py.
Il n(y a donc aucun doute à avoir sur le bon branchement et la bonne exploitation de ma camera.