Message ID | 20251014191133.1359834-1-t-lannynd@ti.com |
---|---|
State | New |
Headers | show |
Series | [meta-arago,scarthgap] meta-arago-distro: chromium: Avoid placing incomplete H264 NALUs in buffer | expand |
meta-arago / na / 20251014191133.1359834-1-t-lannynd PRC Results: PASS ========================================================= check-yocto-patches: PASS ========================================================= Patches ---------------------------------------- WARN - [meta-arago][scarthgap][PATCH] meta-arago-distro: chromium: Avoid placing incomplete H264 NALUs in buffer WARN: Commit message does not include file/recipe name: meta-arago-distro: chromium: Avoid placing incomplete H264 NALUs in buffer. (COMMIT-MESSAGE-2) patch WARN: Commit message should not include directory path to recipe: meta-arago-distro: chromium: Avoid placing incomplete H264 NALUs in buffer. meta-arago-distro: (COMMIT-MESSAGE-3) patch ========================================================= apply-yocto-patch: PASS ========================================================= scarthgap ===================== Summary: - Patch Series: [meta-arago][scarthgap][PATCH] meta-arago-distro: chromium: Avoid placing incomplete H264 NALUs in buffer - Submitter: From: Thorsten Lannynd <t-lannynd@ti.com> +From: Alexandros Frantzis <alexandros.frantzis@collabora.com> - Date: Date: Tue, 14 Oct 2025 14:11:33 -0500 +Date: Wed, 11 Jun 2025 11:07:05 +0300 - Num Patches: 1 - Mailing List (public inbox) Commit SHA: 952c5e63010911513d7623a66c0aed8350cc1bff Applied to: - Repository: lcpd-prc-meta-arago - Base Branch: scarthgap-wip - Commit Author: Andrew Davis <afd@ti.com> - Commit Subject: meta-arago-extras: hevc-arm-decoder: Remove this recipe - Commit SHA: 4e4e64fca24816d48a42d84c6973d1e2577b463d Patches ---------------------------------------- All patches applied ========================================================= check-yocto-repo: PASS ========================================================= scarthgap ===================== PASS
diff --git a/meta-arago-distro/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-ozone-wayland-132.0.6834.83/0004-Avoid-placing-incomplete-H264-access-units-in-buffer.patch b/meta-arago-distro/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-ozone-wayland-132.0.6834.83/0004-Avoid-placing-incomplete-H264-access-units-in-buffer.patch new file mode 100644 index 00000000..e0ca7dfd --- /dev/null +++ b/meta-arago-distro/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-ozone-wayland-132.0.6834.83/0004-Avoid-placing-incomplete-H264-access-units-in-buffer.patch @@ -0,0 +1,48 @@ +From 8542b683ca6a0774a452eb3d7cadc834d4f41436 Mon Sep 17 00:00:00 2001 +From: Alexandros Frantzis <alexandros.frantzis@collabora.com> +Date: Wed, 11 Jun 2025 11:07:05 +0300 +Subject: [PATCH] media/gpu/v4l2: Avoid placing incomplete H264 access units in + buffers + +Upstream-Status: Pending + +Don't place SPS, PPS, etc NALUs in their own separate buffers +unconditionally, as they are not full access units by themselves, +and may confuse the decoder. +--- + media/gpu/v4l2/v4l2_stateful_video_decoder.cc | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/media/gpu/v4l2/v4l2_stateful_video_decoder.cc b/media/gpu/v4l2/v4l2_stateful_video_decoder.cc +index 422cc72a34a83..61ab2f5bf1ab2 100644 +--- a/media/gpu/v4l2/v4l2_stateful_video_decoder.cc ++++ b/media/gpu/v4l2/v4l2_stateful_video_decoder.cc +@@ -1340,7 +1340,7 @@ H264FrameReassembler::FindFrameBoundary(const uint8_t* const data, + return std::nullopt; + } + previous_slice_header_.reset(); +- return FrameBoundaryInfo{.is_whole_frame = true, ++ return FrameBoundaryInfo{.is_whole_frame = false, + .is_start_of_new_frame = true, + .nalu_size = nalu_size}; + case H264NALU::kPPS: +@@ -1350,7 +1350,7 @@ H264FrameReassembler::FindFrameBoundary(const uint8_t* const data, + return std::nullopt; + } + previous_slice_header_.reset(); +- return FrameBoundaryInfo{.is_whole_frame = true, ++ return FrameBoundaryInfo{.is_whole_frame = false, + .is_start_of_new_frame = true, + .nalu_size = nalu_size}; + case H264NALU::kNonIDRSlice: +@@ -1389,7 +1389,7 @@ H264FrameReassembler::FindFrameBoundary(const uint8_t* const data, + case H264NALU::kReserved18: + // Anything else than SPS, PPS and Non/IDRs marks a new frame boundary. + previous_slice_header_.reset(); +- return FrameBoundaryInfo{.is_whole_frame = true, ++ return FrameBoundaryInfo{.is_whole_frame = false, + .is_start_of_new_frame = true, + .nalu_size = nalu_size}; + default: +-- +GitLab diff --git a/meta-arago-distro/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-ozone-wayland-arago.inc b/meta-arago-distro/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-ozone-wayland-arago.inc index d5a790fe..53669cf5 100644 --- a/meta-arago-distro/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-ozone-wayland-arago.inc +++ b/meta-arago-distro/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-ozone-wayland-arago.inc @@ -11,4 +11,5 @@ SRC_URI:append = " \ file://0001-chromium-gpu-sandbox-allow-access-to-PowerVR-GPU-fro.patch \ file://0002-chromium-gpu-sandbox-Allow-GPU-sandbox-access-to-V4L.patch \ file://0003-chromium-gpu-v4l2-Fix-OUTPUT-queue-streaming-in-V4L2.patch \ + file://0004-Avoid-placing-incomplete-H264-access-units-in-buffer.patch \ "
Add patch to prevent SPS, PPS and other NALUs from being placed in seperate buffers unconditionally. These are not full access units and may confuse the V4L2 stateful decoder. This patch adds improved performance and stability for H264 video decoding. Signed-off-by: Thorsten Lannynd <t-lannynd@ti.com> --- ...complete-H264-access-units-in-buffer.patch | 48 +++++++++++++++++++ .../chromium/chromium-ozone-wayland-arago.inc | 1 + 2 files changed, 49 insertions(+) create mode 100644 meta-arago-distro/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-ozone-wayland-132.0.6834.83/0004-Avoid-placing-incomplete-H264-access-units-in-buffer.patch