From 6d1315f3465b67b5b5c061d536e071f931219a19 Mon Sep 17 00:00:00 2001 From: nicoboy Date: Sun, 19 Jul 2026 11:50:13 +0200 Subject: [PATCH] =?UTF-8?q?fix:=20contr=C3=B4le=20explicite=20bitrate/keyf?= =?UTF-8?q?rame/SPS-PPS=20pour=20v4l2h264enc?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sans extra-controls, v4l2h264enc utilisait ses valeurs par défaut (bitrate non maîtrisé, pas de repeat_sequence_header), ce qui pouvait désynchroniser le décodeur côté Jetson en cas de perte de paquet. --- camera_server.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/camera_server.py b/camera_server.py index 44ef130..40c64be 100644 --- a/camera_server.py +++ b/camera_server.py @@ -129,7 +129,8 @@ def _build_pipeline(cfg: dict, encoder: str) -> str: f"libcamerasrc ! " f"video/x-raw,width={w},height={h},format=NV12,framerate={fps}/1 ! " f"v4l2convert ! " - f"v4l2h264enc ! " + f"v4l2h264enc extra-controls=\"controls,video_bitrate={cfg['bitrate_kbps']*1000}," + f"video_bitrate_mode=1,h264_i_frame_period={fps*2},repeat_sequence_header=1\" ! " f"video/x-h264,level=(string){level} ! " f"h264parse ! " f"{sink}"