From a6cea5619a78cac1b48a995ab4c99ed98667d4b1 Mon Sep 17 00:00:00 2001 From: nicoboy Date: Tue, 9 Jun 2026 16:59:10 +0200 Subject: [PATCH] fix: videoconvert wrapping textoverlay dans pipeline hw MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit textoverlay ne digère pas I420 directement depuis v4l2convert. Ajout de videoconvert avant et après textoverlay, puis v4l2convert ! video/x-raw,format=I420 juste avant v4l2h264enc. Co-Authored-By: Claude Sonnet 4.6 --- camera_server.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/camera_server.py b/camera_server.py index 4d129b3..53980e0 100644 --- a/camera_server.py +++ b/camera_server.py @@ -98,12 +98,14 @@ def _build_pipeline(cfg: dict, encoder: str, overlay_text: str) -> str: if encoder == "hw": bitrate_bps = cfg["bitrate_kbps"] * 1000 - # Explicit NV12 cap after v4l2convert so textoverlay and v4l2h264enc agree on format return ( f"libcamerasrc ! " f"video/x-raw,width={w},height={h},format=NV12,framerate={fps}/1 ! " - f"v4l2convert ! video/x-raw,format=I420 ! " + f"v4l2convert ! " + f"videoconvert ! " f"{overlay} ! " + f"videoconvert ! " + f"v4l2convert ! video/x-raw,format=I420 ! " f"v4l2h264enc video-bitrate={bitrate_bps} " f'extra-controls="controls,repeat_sequence_header=1" ! ' f"video/x-h264,level=(string){level} ! "