Move core/forwarders to internal.
[chromium-blink-merge.git] / media / media_options.gni
blobcd7440a8db696cd32aaa9f652cd1646ac9063f06
1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
5 declare_args() {
6   # Allows distributions to link pulseaudio directly (DT_NEEDED) instead of
7   # using dlopen. This helps with automated detection of ABI mismatches and
8   # prevents silent errors.
9   link_pulseaudio = false
11   # Enable usage of FFmpeg within the media library. Used for most software
12   # based decoding, demuxing, and sometimes optimized FFTs. If disabled,
13   # implementors must provide their own demuxers and decoders.
14   media_use_ffmpeg = true
16   # Enable usage of libvpx within the media library. Used for software based
17   # decoding of VP9 and VP8A type content.
18   media_use_libvpx = true
20   # Neither Android nor iOS use ffmpeg or libvpx.
21   if (is_android || is_ios) {
22     media_use_ffmpeg = false
23     media_use_libvpx = false
24   }
26   # Override to dynamically link the cras (ChromeOS audio) library.
27   use_cras = false
29   # Enables runtime selection of PulseAudio library.
30   use_pulseaudio = false
32   # Enables runtime selection of ALSA library for audio.
33   use_alsa = false
35   # TODO(GYP): How to handled the "embedded" use case?
36   # Original conditional: (OS=="linux" or OS=="freebsd" or OS=="solaris") and embedded!=1
37   if (is_posix && !is_android && !is_mac) {
38     use_alsa = true
39     if (!use_cras) {
40       use_pulseaudio = true
41     }
42   }
44   # Enables the MPEG2-TS stream parser for use with Media Source. Disabled by
45   # default since it's not available on the normal Web Platform and costs money.
46   enable_mpeg2ts_stream_parser = false
48   # Experiment to enable mojo media application: http://crbug.com/431776
49   # Valid options are:
50   # - "none": Do not use mojo media application.
51   # - "browser": Use mojo media application hosted in the browser process.
52   # - "utility": Use mojo media application hosted in the utility process.
53   enable_mojo_media = "none"
55   # TODO(GYP): This should be a platform define.
56   is_openbsd = false