Skip to content

Commit 98a35b3

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 59e82cb commit 98a35b3

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
@@ -123,7 +123,7 @@ BUILD_CC:toolchain-clang = "clang"
123123
BUILD_CXX:toolchain-clang = "clang++"
124124
BUILD_LD:toolchain-clang = "clang"
125125

126-
PACKAGECONFIG ??= "upower use-egl"
126+
PACKAGECONFIG ??= "upower use-egl use-v4l2"
127127

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

161165
# Base GN arguments, mostly related to features we want to enable or disable.
162166
GN_ARGS = " \
@@ -374,6 +378,7 @@ CHROMIUM_EXTRA_ARGS ?= " \
374378
${@bb.utils.contains('PACKAGECONFIG', 'use-egl', '--use-angle=gles-egl', '', d)} \
375379
${@bb.utils.contains('PACKAGECONFIG', 'kiosk-mode', '--kiosk --no-first-run --incognito', '', d)} \
376380
${@bb.utils.contains('PACKAGECONFIG', 'gtk4', '--gtk-version=4', '', d)} \
381+
${@bb.utils.contains('PACKAGECONFIG', 'use-v4l2', '--ozone-platform-hint=wayland --enable-features=AcceleratedVideoDecoder,AcceleratedVideoDecodeLinuxGL,AcceleratedVideoDecodeLinuxZeroCopyGL', '', d)} \
377382
"
378383

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

0 commit comments

Comments
 (0)