blob: 07b7fdee74d31e5956e9f465c6b12511caaae645 [file] [log] [blame]
# Copyright 2014 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/chromecast_build.gni")
import("//build/config/headless_build.gni")
declare_args() {
# Allows distributions to link pulseaudio directly (DT_NEEDED) instead of
# using dlopen. This helps with automated detection of ABI mismatches and
# prevents silent errors.
link_pulseaudio = false
# Enable usage of FFmpeg within the media library. Used for most software
# based decoding, demuxing, and sometimes optimized FFTs. If disabled,
# implementors must provide their own demuxers and decoders.
media_use_ffmpeg = true
# Enable usage of libvpx within the media library. Used for software based
# decoding of VP9 and VP8A type content.
media_use_libvpx = true
# Neither Android nor iOS use ffmpeg, libvpx.
if (is_android || is_ios) {
media_use_ffmpeg = false
media_use_libvpx = false
}
# Override to dynamically link the cras (ChromeOS audio) library.
use_cras = false
# Enables runtime selection of PulseAudio library.
use_pulseaudio = false
# Enables runtime selection of ALSA library for audio.
use_alsa = false
# Alsa should be used on non-Android, non-Mac POSIX systems, and Chromecast
# builds for desktop Linux.
if (is_posix && !is_headless && !is_android && !is_mac &&
(!is_chromecast || target_cpu != "arm")) {
use_alsa = true
if (!use_cras) {
use_pulseaudio = true
}
}
# Use low-memory buffers on non-Android builds of Chromecast.
use_low_memory_buffer = is_chromecast && !is_android
# Enables the MPEG2-TS stream parser for use with Media Source. Disabled by
# default (except on Chromecast) since it's not available on the normal Web
# Platform and costs money.
enable_mpeg2ts_stream_parser = is_chromecast
# Enable HEVC/H265 demuxing. Actual decoding must be provided by the
# platform. Enable by default for Chromecast.
enable_hevc_demuxing = is_chromecast
# Experiment to enable mojo media application: http://crbug.com/431776
# Valid options are:
# - "none": Do not use mojo media application.
# - "browser": Use mojo media application hosted in the browser process.
# - "gpu": Use mojo media application hosted in the gpu process.
# - "utility": Use mojo media application hosted in the utility process.
enable_mojo_media = "none"
# TODO(GYP): This should be a platform define.
is_openbsd = false
}