summaryrefslogtreecommitdiff
path: root/chromium/media/media_options.gni
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-06 12:48:11 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-13 09:33:43 +0000
commit7b5b123ac58f58ffde0f4f6e488bcd09aa4decd3 (patch)
treefa14ba0ca8d2683ba2efdabd246dc9b18a1229c6 /chromium/media/media_options.gni
parent79b4f909db1049fca459c07cca55af56a9b54fe3 (diff)
downloadqtwebengine-chromium-7b5b123ac58f58ffde0f4f6e488bcd09aa4decd3.tar.gz
BASELINE: Update Chromium to 84.0.4147.141
Change-Id: Ib85eb4cfa1cbe2b2b81e5022c8cad5c493969535 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/media/media_options.gni')
-rw-r--r--chromium/media/media_options.gni91
1 files changed, 28 insertions, 63 deletions
diff --git a/chromium/media/media_options.gni b/chromium/media/media_options.gni
index 1d62f7f714a..ef8fbe4de4a 100644
--- a/chromium/media/media_options.gni
+++ b/chromium/media/media_options.gni
@@ -29,6 +29,7 @@ media_subcomponent_deps = [
"//media/muxers",
"//media/renderers",
"//media/video",
+ "//media/webcodecs",
]
if (is_fuchsia) {
@@ -158,20 +159,6 @@ enable_library_cdms =
(is_linux && !is_chromecast) || is_mac || is_win || is_fuchsia
declare_args() {
- # Experiment to enable mojo media services (e.g. "renderer", "cdm", see
- # |mojo_media_services|). When enabled, selected mojo paths will be enabled in
- # the media pipeline and corresponding services will hosted in the selected
- # remote process (e.g. "utility" process, see |mojo_media_host|).
- # This is explicitly disabled for Fuchsia.
- enable_mojo_media =
- !is_fuchsia &&
- (is_android || is_chromeos || is_mac || is_win || enable_library_cdms ||
- (is_desktop_linux && use_vaapi) || is_chromecast)
-
- # Enable the TestMojoMediaClient to be used in mojo MediaService. This is for
- # testing only and will override the default platform MojoMediaClient, if any.
- enable_test_mojo_media_client = false
-
# When enabled, this feature allows developers to use a runtime flag to
# choose the implementation of the renderer that is used. On a build which
# enables the mojo renderer, if --disable-mojo-renderer is passed at start-up,
@@ -195,65 +182,43 @@ declare_args() {
# (which takes precedence), or by setting |alternate_cdm_storage_id_key|.
# The key must be a string of at least 32 characters.
alternate_cdm_storage_id_key = ""
-
- # This feature is still under development. See crbug.com/641132.
- enable_cdm_proxy = false
}
-# This feature can only be enabled when using Mojo media. Furthermore, the
-# "renderer" service must be enabled, which is asserted in
-# //media/mojo/services/BUILD.gn
-assert(
- !enable_runtime_media_renderer_selection || enable_mojo_media,
- "Runtime media renderer selection only applies when mojo media is enabled.")
-
assert(!enable_cdm_host_verification || is_mac || is_win,
"CDM host verification is only supported on Mac and Windows.")
-assert(enable_library_cdms || !enable_cdm_proxy,
- "CDM Proxy should only be enabled when library CDM is enabled.")
-
+# Default |mojo_media_services| and |mojo_media_host| on various platforms. See
+# comments below for valid values. Can be overridden by gn build arguments from
+# the --args command line flag.
_default_mojo_media_services = []
-_default_mojo_media_host = "none"
-
-# Default mojo_media_services and mojo_media_host on various platforms.
-# Can be overridden by gn build arguments from the --args command line flag
-# for local testing.
-if (enable_mojo_media) {
- if (is_chromecast) {
- _default_mojo_media_services = cast_mojo_media_services
- _default_mojo_media_host = cast_mojo_media_host
- } else if (is_android) {
- _default_mojo_media_services = [
- "cdm",
- "audio_decoder",
- "video_decoder",
- ]
- _default_mojo_media_host = "gpu"
- } else if (is_chromeos || is_mac || is_win ||
- (is_desktop_linux && use_vaapi)) {
- _default_mojo_media_services = [ "video_decoder" ]
- _default_mojo_media_host = "gpu"
- }
-
- if (enable_library_cdms) {
- _default_mojo_media_services += [ "cdm" ]
+_default_mojo_media_host = ""
+
+if (is_chromecast) {
+ _default_mojo_media_services = cast_mojo_media_services
+ _default_mojo_media_host = cast_mojo_media_host
+} else if (is_android) {
+ _default_mojo_media_services = [
+ "cdm",
+ "audio_decoder",
+ "video_decoder",
+ ]
+ _default_mojo_media_host = "gpu"
+} else if (is_chromeos || is_mac || is_win || (is_desktop_linux && use_vaapi)) {
+ _default_mojo_media_services = [ "video_decoder" ]
+ _default_mojo_media_host = "gpu"
+}
- # Having a CDM running means it could require a CdmProxy running in the GPU
- # process.
- assert(
- _default_mojo_media_host == "none" || _default_mojo_media_host == "gpu",
- "For now, mojo_media_host should not overwrite it with a different " +
- "value if it has been set.")
- _default_mojo_media_host = "gpu"
- }
+# When |enable_library_cdms| is true, the "cdm" service will run in a separate
+# CdmService in the CDM (utility) process. Therefor there's no need to specify
+# |_default_mojo_media_host| which controls where the MediaService runs in.
+# On Fuchsia, |enable_library_cdms| is only enabled to build libclearkeycdm.so,
+# the mojo CDM service is not used.
+if (enable_library_cdms && !is_fuchsia) {
+ _default_mojo_media_services += [ "cdm" ]
}
-# Use another declare_args() to pick up possible overrides of enable_mojo_media
-# from --args command line flags. See "gn help declare_args".
declare_args() {
# A list of mojo media services that should be used in the media pipeline.
- # Must not be empty if |enable_mojo_media| is true.
# Valid entries in the list are:
# - "renderer": Use mojo-based media Renderer service.
# - "cdm": Use mojo-based Content Decryption Module.
@@ -270,10 +235,10 @@ declare_args() {
# |mojo_media_services| still run in the MediaService in the process specified
# by "mojo_media_host".
# Valid options are:
- # - "none": Do not use mojo media service.
# - "browser": Use mojo media service hosted in the browser process.
# - "gpu": Use mojo media service hosted in the gpu process.
# - "utility": Use mojo media service hosted in the utility process.
+ # - "": Do not use mojo media service.
mojo_media_host = _default_mojo_media_host
}