blob: 35c3cbf9b406809587133aaee112b8e95e74f364 [file] [log] [blame]
kwiberg96da0112017-06-30 04:23:22 -07001# 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_static_library("audio_encoder_opus_config") {
Per Kjellandera7f2d842018-01-10 15:54:53 +000016 visibility = [ "*" ]
kwiberg96da0112017-06-30 04:23:22 -070017 sources = [
Alex Loiko44c21f42019-04-25 15:09:32 +020018 "audio_encoder_multi_channel_opus_config.cc",
19 "audio_encoder_multi_channel_opus_config.h",
kwiberg96da0112017-06-30 04:23:22 -070020 "audio_encoder_opus_config.cc",
21 "audio_encoder_opus_config.h",
22 ]
23 deps = [
ehmaldonadof6a861a2017-07-19 10:40:47 -070024 "../../../rtc_base:rtc_base_approved",
Mirko Bonadei3b56ee72018-10-15 17:15:12 +020025 "../../../rtc_base/system:rtc_export",
Danil Chapovalov0bc58cf2018-06-21 13:32:56 +020026 "//third_party/abseil-cpp/absl/types:optional",
kwiberg96da0112017-06-30 04:23:22 -070027 ]
28 defines = []
29 if (rtc_opus_variable_complexity) {
30 defines += [ "WEBRTC_OPUS_VARIABLE_COMPLEXITY=1" ]
31 } else {
32 defines += [ "WEBRTC_OPUS_VARIABLE_COMPLEXITY=0" ]
33 }
34}
35
Alex Loiko44c21f42019-04-25 15:09:32 +020036rtc_source_set("audio_decoder_opus_config") {
37 visibility = [ "*" ]
38 sources = [
39 "audio_decoder_multi_channel_opus_config.h",
40 ]
41}
42
kwiberg96da0112017-06-30 04:23:22 -070043rtc_source_set("audio_encoder_opus") {
Per Kjellandera7f2d842018-01-10 15:54:53 +000044 visibility = [ "*" ]
Karl Wibergbb23c832018-04-22 19:55:00 +020045 poisonous = [ "audio_codecs" ]
Karl Wiberg7275e182017-10-25 09:57:40 +020046 public = [
kwiberg96da0112017-06-30 04:23:22 -070047 "audio_encoder_opus.h",
48 ]
Karl Wiberg7275e182017-10-25 09:57:40 +020049 sources = [
50 "audio_encoder_opus.cc",
51 ]
kwiberg96da0112017-06-30 04:23:22 -070052 deps = [
53 ":audio_encoder_opus_config",
54 "..:audio_codecs_api",
kwiberg96da0112017-06-30 04:23:22 -070055 "../../../modules/audio_coding:webrtc_opus",
ehmaldonadof6a861a2017-07-19 10:40:47 -070056 "../../../rtc_base:rtc_base_approved",
Mirko Bonadei3d255302018-10-11 10:50:45 +020057 "../../../rtc_base/system:rtc_export",
Niels Möller2edab4c2018-10-22 09:48:08 +020058 "//third_party/abseil-cpp/absl/strings",
Danil Chapovalov0bc58cf2018-06-21 13:32:56 +020059 "//third_party/abseil-cpp/absl/types:optional",
kwiberg96da0112017-06-30 04:23:22 -070060 ]
61}
kwiberg96d74bb2017-06-30 05:24:56 -070062
63rtc_static_library("audio_decoder_opus") {
Per Kjellandera7f2d842018-01-10 15:54:53 +000064 visibility = [ "*" ]
Karl Wibergbb23c832018-04-22 19:55:00 +020065 poisonous = [ "audio_codecs" ]
kwiberg96d74bb2017-06-30 05:24:56 -070066 sources = [
67 "audio_decoder_opus.cc",
68 "audio_decoder_opus.h",
69 ]
70 deps = [
71 "..:audio_codecs_api",
kwiberg96d74bb2017-06-30 05:24:56 -070072 "../../../modules/audio_coding:webrtc_opus",
ehmaldonadof6a861a2017-07-19 10:40:47 -070073 "../../../rtc_base:rtc_base_approved",
Mirko Bonadei3d255302018-10-11 10:50:45 +020074 "../../../rtc_base/system:rtc_export",
Niels Möller2edab4c2018-10-22 09:48:08 +020075 "//third_party/abseil-cpp/absl/strings",
Danil Chapovalov0bc58cf2018-06-21 13:32:56 +020076 "//third_party/abseil-cpp/absl/types:optional",
kwiberg96d74bb2017-06-30 05:24:56 -070077 ]
78}
Alex Loikoe5b94162019-04-08 17:19:41 +020079
Alex Loiko44c21f42019-04-25 15:09:32 +020080rtc_source_set("audio_encoder_multiopus") {
81 visibility = [ "*" ]
82 poisonous = [ "audio_codecs" ]
83 public = [
84 "audio_encoder_multi_channel_opus.h",
85 ]
86 sources = [
87 "audio_encoder_multi_channel_opus.cc",
88 ]
89 deps = [
90 "..:audio_codecs_api",
91 "../../../modules/audio_coding:webrtc_multiopus",
92 "../../../rtc_base:rtc_base_approved",
93 "../../../rtc_base/system:rtc_export",
94 "../opus:audio_encoder_opus_config",
95 "//third_party/abseil-cpp/absl/types:optional",
96 ]
97}
98
Alex Loikoe5b94162019-04-08 17:19:41 +020099rtc_static_library("audio_decoder_multiopus") {
100 visibility = [ "*" ]
101 poisonous = [ "audio_codecs" ]
102 sources = [
103 "audio_decoder_multi_channel_opus.cc",
104 "audio_decoder_multi_channel_opus.h",
105 ]
106 deps = [
Alex Loiko44c21f42019-04-25 15:09:32 +0200107 ":audio_decoder_opus_config",
Alex Loikoe5b94162019-04-08 17:19:41 +0200108 "..:audio_codecs_api",
109 "../../../modules/audio_coding:webrtc_multiopus",
110 "../../../rtc_base:rtc_base_approved",
111 "../../../rtc_base/system:rtc_export",
112 "//third_party/abseil-cpp/absl/memory",
113 "//third_party/abseil-cpp/absl/strings",
114 "//third_party/abseil-cpp/absl/types:optional",
115 ]
116}