blob: 586e9b3dd883e5d48b27f09a267e6c8727c35812 [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
Mirko Bonadei86d053c2019-10-17 21:32:04 +020015rtc_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",
kwiberg96da0112017-06-30 04:23:22 -070026 ]
Mirko Bonadei2dcf3482020-06-05 14:30:41 +020027 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
kwiberg96da0112017-06-30 04:23:22 -070028 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 = [ "*" ]
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +010038 sources = [ "audio_decoder_multi_channel_opus_config.h" ]
Alex Loiko44c21f42019-04-25 15:09:32 +020039}
40
Mirko Bonadei86d053c2019-10-17 21:32:04 +020041rtc_library("audio_encoder_opus") {
Per Kjellandera7f2d842018-01-10 15:54:53 +000042 visibility = [ "*" ]
Karl Wibergbb23c832018-04-22 19:55:00 +020043 poisonous = [ "audio_codecs" ]
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +010044 public = [ "audio_encoder_opus.h" ]
45 sources = [ "audio_encoder_opus.cc" ]
kwiberg96da0112017-06-30 04:23:22 -070046 deps = [
47 ":audio_encoder_opus_config",
48 "..:audio_codecs_api",
kwiberg96da0112017-06-30 04:23:22 -070049 "../../../modules/audio_coding:webrtc_opus",
ehmaldonadof6a861a2017-07-19 10:40:47 -070050 "../../../rtc_base:rtc_base_approved",
Mirko Bonadei3d255302018-10-11 10:50:45 +020051 "../../../rtc_base/system:rtc_export",
Mirko Bonadei2dcf3482020-06-05 14:30:41 +020052 ]
53 absl_deps = [
Niels Möller2edab4c2018-10-22 09:48:08 +020054 "//third_party/abseil-cpp/absl/strings",
Danil Chapovalov0bc58cf2018-06-21 13:32:56 +020055 "//third_party/abseil-cpp/absl/types:optional",
kwiberg96da0112017-06-30 04:23:22 -070056 ]
57}
kwiberg96d74bb2017-06-30 05:24:56 -070058
Mirko Bonadei86d053c2019-10-17 21:32:04 +020059rtc_library("audio_decoder_opus") {
Per Kjellandera7f2d842018-01-10 15:54:53 +000060 visibility = [ "*" ]
Karl Wibergbb23c832018-04-22 19:55:00 +020061 poisonous = [ "audio_codecs" ]
kwiberg96d74bb2017-06-30 05:24:56 -070062 sources = [
63 "audio_decoder_opus.cc",
64 "audio_decoder_opus.h",
65 ]
66 deps = [
67 "..:audio_codecs_api",
kwiberg96d74bb2017-06-30 05:24:56 -070068 "../../../modules/audio_coding:webrtc_opus",
ehmaldonadof6a861a2017-07-19 10:40:47 -070069 "../../../rtc_base:rtc_base_approved",
Mirko Bonadei3d255302018-10-11 10:50:45 +020070 "../../../rtc_base/system:rtc_export",
Mirko Bonadei2dcf3482020-06-05 14:30:41 +020071 ]
72 absl_deps = [
Niels Möller2edab4c2018-10-22 09:48:08 +020073 "//third_party/abseil-cpp/absl/strings",
Danil Chapovalov0bc58cf2018-06-21 13:32:56 +020074 "//third_party/abseil-cpp/absl/types:optional",
kwiberg96d74bb2017-06-30 05:24:56 -070075 ]
76}
Alex Loikoe5b94162019-04-08 17:19:41 +020077
Mirko Bonadei86d053c2019-10-17 21:32:04 +020078rtc_library("audio_encoder_multiopus") {
Alex Loiko44c21f42019-04-25 15:09:32 +020079 visibility = [ "*" ]
80 poisonous = [ "audio_codecs" ]
Mirko Bonadeiccbe95f2020-01-21 12:10:10 +010081 public = [ "audio_encoder_multi_channel_opus.h" ]
82 sources = [ "audio_encoder_multi_channel_opus.cc" ]
Alex Loiko44c21f42019-04-25 15:09:32 +020083 deps = [
84 "..:audio_codecs_api",
85 "../../../modules/audio_coding:webrtc_multiopus",
86 "../../../rtc_base:rtc_base_approved",
87 "../../../rtc_base/system:rtc_export",
88 "../opus:audio_encoder_opus_config",
Alex Loiko44c21f42019-04-25 15:09:32 +020089 ]
Mirko Bonadei2dcf3482020-06-05 14:30:41 +020090 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
Alex Loiko44c21f42019-04-25 15:09:32 +020091}
92
Mirko Bonadei86d053c2019-10-17 21:32:04 +020093rtc_library("audio_decoder_multiopus") {
Alex Loikoe5b94162019-04-08 17:19:41 +020094 visibility = [ "*" ]
95 poisonous = [ "audio_codecs" ]
96 sources = [
97 "audio_decoder_multi_channel_opus.cc",
98 "audio_decoder_multi_channel_opus.h",
99 ]
100 deps = [
Alex Loiko44c21f42019-04-25 15:09:32 +0200101 ":audio_decoder_opus_config",
Alex Loikoe5b94162019-04-08 17:19:41 +0200102 "..:audio_codecs_api",
103 "../../../modules/audio_coding:webrtc_multiopus",
104 "../../../rtc_base:rtc_base_approved",
105 "../../../rtc_base/system:rtc_export",
Mirko Bonadei2dcf3482020-06-05 14:30:41 +0200106 ]
107 absl_deps = [
Alex Loikoe5b94162019-04-08 17:19:41 +0200108 "//third_party/abseil-cpp/absl/memory",
109 "//third_party/abseil-cpp/absl/strings",
110 "//third_party/abseil-cpp/absl/types:optional",
111 ]
112}