Skip to content

Commit 09fa415

Browse files
Marek Vasutadalessandro
authored andcommitted
chromium: Add v4l2 m2m stateless decode configuration options
Add configuration options to enable hardware video decoding using stateless V4L2 M2M device. This allows offloading e.g. h264 video playback to Hantro VPU on i.MX8MP where this was tested. To make that work, enable 'use-v4l2' and 'proprietary-codecs' PACKAGECONFIG. This commit was implemented with much great help from Jianfeng Liu . Signed-off-by: Marek Vasut <[email protected]>
1 parent 4fee3a6 commit 09fa415

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

meta-chromium/recipes-browser/chromium/chromium-gn.inc

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ BUILD_CC:toolchain-clang = "clang"
125125
BUILD_CXX:toolchain-clang = "clang++"
126126
BUILD_LD:toolchain-clang = "clang"
127127

128-
PACKAGECONFIG ??= "upower use-egl"
128+
PACKAGECONFIG ??= "upower use-egl use-v4l2"
129129

130130
# this makes sure the dependencies for the EGL mode are present; otherwise, the configure scripts
131131
# automatically and silently fall back to GLX
@@ -159,6 +159,10 @@ PACKAGECONFIG[upower] = ",,,upower"
159159
# but remember to also use proprietary codecs so that H.264 is supported. Also note
160160
# that not all the hardware configs might be supported.
161161
PACKAGECONFIG[use-vaapi] = "use_vaapi=true use_libgav1_parser=true,use_vaapi=false,libva"
162+
# Enable stateless V4L2 M2M video decoding support.
163+
# This requires 'proprietary-codecs' PACKAGECONFIG
164+
# to decode h264 streams on the V4L2 M2M device.
165+
PACKAGECONFIG[use-v4l2] = "use_v4l2_codec=true,use_v4l2_codec=false"
162166

163167
# Base GN arguments, mostly related to features we want to enable or disable.
164168
GN_ARGS = " \
@@ -376,6 +380,7 @@ CHROMIUM_EXTRA_ARGS ?= " \
376380
${@bb.utils.contains('PACKAGECONFIG', 'use-egl', '--use-angle=gles-egl', '', d)} \
377381
${@bb.utils.contains('PACKAGECONFIG', 'kiosk-mode', '--kiosk --no-first-run --incognito', '', d)} \
378382
${@bb.utils.contains('PACKAGECONFIG', 'gtk4', '--gtk-version=4', '', d)} \
383+
${@bb.utils.contains('PACKAGECONFIG', 'use-v4l2', '--ozone-platform-hint=wayland --enable-features=AcceleratedVideoDecoder,AcceleratedVideoDecodeLinuxGL,AcceleratedVideoDecodeLinuxZeroCopyGL', '', d)} \
379384
"
380385

381386
# V8's JIT infrastructure requires binaries such as mksnapshot and

0 commit comments

Comments
 (0)