123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- # Copyright 2016 The Chromium Authors. All rights reserved.
- # Use of this source code is governed by a BSD-style license that can be
- # found in the LICENSE file.
- import("//build/config/chromeos/ui_mode.gni")
- import("//build/config/ozone.gni")
- declare_args() {
- # Indicates if X11 VA-API-based hardware acceleration is to be used.
- # See also the comment near the |use_vaapi| arg.
- use_vaapi_x11 = is_linux && ozone_platform_x11 &&
- (target_cpu == "x86" || target_cpu == "x64") && !is_castos
- }
- declare_args() {
- # Indicates if V4L plugin is used.
- use_v4lplugin = false
- # Indicates if Video4Linux2 codec is used. This is used for all CrOS
- # platforms which have v4l2 hardware encoder / decoder.
- use_v4l2_codec = false
- # Indicates if Video4Linux2 AML encoder is used. This is used for AML
- # platforms which have v4l2 hardware encoder
- use_v4l2_codec_aml = false
- # Indicates if VA-API-based hardware acceleration is to be used. This
- # is typically the case on x86-based ChromeOS devices.
- # VA-API should also be compiled by default on x11-using linux devices
- # using x86/x64.
- use_vaapi = use_vaapi_x11 || (is_chromeos_lacros &&
- (target_cpu == "x86" || target_cpu == "x64"))
- # Indicates if ChromeOS protected media support exists. This is used
- # to enable the CDM daemon in Chrome OS as well as support for
- # encrypted content with HW video decoders.
- # TODO(jkardatzke): Enable this for Lacros always, it is determined at runtime
- # in that configuration.
- use_chromeos_protected_media = false
- # Indicates if the ChromeOS protected media functionality should also be
- # utilized by HW video decoding for ARC.
- use_arc_protected_media = false
- # Indicates if ChromeOS protected media supports the AV1 codec. By default
- # H.264, VP9 and HEVC are enabled if protected media is enabled; AV1 is
- # optional.
- use_chromeos_protected_av1 = false
- }
- if (use_arc_protected_media) {
- assert(
- use_chromeos_protected_media,
- "use_chromeos_protected_media must be set if use_arc_protected_media is")
- }
- if (use_chromeos_protected_av1) {
- assert(
- use_chromeos_protected_media,
- "use_chromeos_protected_media must be set if use_chromeos_protected_av1 is")
- }
- # GN requires args that depend on other args to be declared in successive
- # declare_args() blocks.
- declare_args() {
- # VA-API also allows decoding of images, but we don't want to use this
- # outside of chromeos, even if video decoding is enabled.
- use_vaapi_image_codecs = use_vaapi && is_chromeos_ash
- }
|