blob: c2b470930784a99c50d4efe48b7f642365d3c39f [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.
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 or 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
# TODO(GYP): How to handled the "embedded" use case?
# Original conditional: (OS=="linux" or OS=="freebsd" or OS=="solaris") and embedded!=1
if (is_posix && !is_android && !is_mac) {
use_alsa = true
if (!use_cras) {
use_pulseaudio = true
# Enables the MPEG2-TS stream parser for use with Media Source. Disabled by
# default since it's not available on the normal Web Platform and costs money.
enable_mpeg2ts_stream_parser = false
# Enables browser side Content Decryption Modules. Required for android where
# the typical PPAPI based CDM is not available.
enable_browser_cdms = is_android
# TODO(GYP): This should be a platform define.
is_openbsd = false