blob: fbb2fc507267b33c20ff7d8faa589818d09a0831 [file] [log] [blame]
kwiberg087bd342017-02-10 08:15:44 -08001# Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
2#
3# Use of this source code is governed by a BSD-style license
4# that can be found in the LICENSE file in the root of the source
5# tree. An additional intellectual property rights grant can be found
6# in the file PATENTS. All contributing project authors may
7# be found in the AUTHORS file in the root of the source tree.
8
9import("../../webrtc.gni")
10if (is_android) {
11 import("//build/config/android/config.gni")
12 import("//build/config/android/rules.gni")
13}
14
15rtc_source_set("audio_codecs_api") {
16 sources = [
17 "audio_decoder.cc",
18 "audio_decoder.h",
19 "audio_decoder_factory.h",
kwiberg0eacd882017-06-17 15:45:28 -070020 "audio_decoder_factory_template.h",
ossueb1fde42017-05-02 06:46:30 -070021 "audio_encoder.cc",
22 "audio_encoder.h",
23 "audio_encoder_factory.h",
kwiberg65315832017-06-16 10:42:05 -070024 "audio_encoder_factory_template.h",
kwiberg087bd342017-02-10 08:15:44 -080025 "audio_format.cc",
26 "audio_format.h",
27 ]
28 deps = [
kwiberg529662a2017-09-04 05:43:17 -070029 "..:array_view",
kwiberg84f6a3f2017-09-05 08:43:13 -070030 "..:optional",
kwiberg087bd342017-02-10 08:15:44 -080031 "../..:webrtc_common",
ehmaldonadof6a861a2017-07-19 10:40:47 -070032 "../../rtc_base:rtc_base_approved",
kwiberg087bd342017-02-10 08:15:44 -080033 ]
34}
35
36rtc_static_library("builtin_audio_decoder_factory") {
37 sources = [
38 "builtin_audio_decoder_factory.cc",
39 "builtin_audio_decoder_factory.h",
40 ]
41 deps = [
42 ":audio_codecs_api",
ehmaldonadof6a861a2017-07-19 10:40:47 -070043 "../../rtc_base:rtc_base_approved",
kwiberge5eb7242017-08-25 03:10:50 -070044 "L16:audio_decoder_L16",
45 "g711:audio_decoder_g711",
kwiberg087bd342017-02-10 08:15:44 -080046 ]
kwiberge5eb7242017-08-25 03:10:50 -070047 defines = []
48 if (rtc_include_ilbc) {
49 deps += [ "ilbc:audio_decoder_ilbc" ]
50 defines += [ "WEBRTC_USE_BUILTIN_ILBC=1" ]
51 } else {
52 defines += [ "WEBRTC_USE_BUILTIN_ILBC=0" ]
53 }
54 if (rtc_include_opus) {
55 deps += [ "opus:audio_decoder_opus" ]
56 defines += [ "WEBRTC_USE_BUILTIN_OPUS=1" ]
57 } else {
58 defines += [ "WEBRTC_USE_BUILTIN_OPUS=0" ]
59 }
60 if (build_with_mozilla) {
61 defines += [
62 "WEBRTC_USE_BUILTIN_G722=0",
Karl Wiberg735a8382017-10-05 11:00:38 +020063 "WEBRTC_USE_BUILTIN_ISAC=0",
kwiberge5eb7242017-08-25 03:10:50 -070064 ]
65 } else {
Karl Wiberg735a8382017-10-05 11:00:38 +020066 deps += [
67 "g722:audio_decoder_g722",
68 "isac:audio_decoder_isac",
69 ]
70 defines += [
71 "WEBRTC_USE_BUILTIN_G722=1",
72 "WEBRTC_USE_BUILTIN_ISAC=1",
73 ]
kwiberge5eb7242017-08-25 03:10:50 -070074 }
kwiberg087bd342017-02-10 08:15:44 -080075}
ossueb1fde42017-05-02 06:46:30 -070076
77rtc_static_library("builtin_audio_encoder_factory") {
78 sources = [
79 "builtin_audio_encoder_factory.cc",
80 "builtin_audio_encoder_factory.h",
81 ]
82 deps = [
83 ":audio_codecs_api",
ehmaldonadof6a861a2017-07-19 10:40:47 -070084 "../../rtc_base:rtc_base_approved",
kwiberge5eb7242017-08-25 03:10:50 -070085 "L16:audio_encoder_L16",
86 "g711:audio_encoder_g711",
ossueb1fde42017-05-02 06:46:30 -070087 ]
kwiberge5eb7242017-08-25 03:10:50 -070088 defines = []
89 if (rtc_include_ilbc) {
90 deps += [ "ilbc:audio_encoder_ilbc" ]
91 defines += [ "WEBRTC_USE_BUILTIN_ILBC=1" ]
92 } else {
93 defines += [ "WEBRTC_USE_BUILTIN_ILBC=0" ]
94 }
95 if (rtc_include_opus) {
96 deps += [ "opus:audio_encoder_opus" ]
97 defines += [ "WEBRTC_USE_BUILTIN_OPUS=1" ]
98 } else {
99 defines += [ "WEBRTC_USE_BUILTIN_OPUS=0" ]
100 }
101 if (build_with_mozilla) {
102 defines += [
103 "WEBRTC_USE_BUILTIN_G722=0",
Karl Wiberg735a8382017-10-05 11:00:38 +0200104 "WEBRTC_USE_BUILTIN_ISAC=0",
kwiberge5eb7242017-08-25 03:10:50 -0700105 ]
106 } else {
Karl Wiberg735a8382017-10-05 11:00:38 +0200107 deps += [
108 "g722:audio_encoder_g722",
109 "isac:audio_encoder_isac",
110 ]
111 defines += [
112 "WEBRTC_USE_BUILTIN_G722=1",
113 "WEBRTC_USE_BUILTIN_ISAC=1",
114 ]
kwiberge5eb7242017-08-25 03:10:50 -0700115 }
ossueb1fde42017-05-02 06:46:30 -0700116}