1# 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_library("audio_encoder_opus_config") { 16 visibility = [ "*" ] 17 sources = [ 18 "audio_encoder_multi_channel_opus_config.cc", 19 "audio_encoder_multi_channel_opus_config.h", 20 "audio_encoder_opus_config.cc", 21 "audio_encoder_opus_config.h", 22 ] 23 deps = [ 24 "../../../rtc_base:rtc_base_approved", 25 "../../../rtc_base/system:rtc_export", 26 ] 27 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] 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 36rtc_source_set("audio_decoder_opus_config") { 37 visibility = [ "*" ] 38 sources = [ "audio_decoder_multi_channel_opus_config.h" ] 39} 40 41rtc_library("audio_encoder_opus") { 42 visibility = [ "*" ] 43 poisonous = [ "audio_codecs" ] 44 public = [ "audio_encoder_opus.h" ] 45 sources = [ "audio_encoder_opus.cc" ] 46 deps = [ 47 ":audio_encoder_opus_config", 48 "..:audio_codecs_api", 49 "../../../modules/audio_coding:webrtc_opus", 50 "../../../rtc_base:rtc_base_approved", 51 "../../../rtc_base/system:rtc_export", 52 ] 53 absl_deps = [ 54 "//third_party/abseil-cpp/absl/strings", 55 "//third_party/abseil-cpp/absl/types:optional", 56 ] 57} 58 59rtc_library("audio_decoder_opus") { 60 visibility = [ "*" ] 61 poisonous = [ "audio_codecs" ] 62 sources = [ 63 "audio_decoder_opus.cc", 64 "audio_decoder_opus.h", 65 ] 66 deps = [ 67 "..:audio_codecs_api", 68 "../../../modules/audio_coding:webrtc_opus", 69 "../../../rtc_base:rtc_base_approved", 70 "../../../rtc_base/system:rtc_export", 71 ] 72 absl_deps = [ 73 "//third_party/abseil-cpp/absl/strings", 74 "//third_party/abseil-cpp/absl/types:optional", 75 ] 76} 77 78rtc_library("audio_encoder_multiopus") { 79 visibility = [ "*" ] 80 poisonous = [ "audio_codecs" ] 81 public = [ "audio_encoder_multi_channel_opus.h" ] 82 sources = [ "audio_encoder_multi_channel_opus.cc" ] 83 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", 89 ] 90 absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] 91} 92 93rtc_library("audio_decoder_multiopus") { 94 visibility = [ "*" ] 95 poisonous = [ "audio_codecs" ] 96 sources = [ 97 "audio_decoder_multi_channel_opus.cc", 98 "audio_decoder_multi_channel_opus.h", 99 ] 100 deps = [ 101 ":audio_decoder_opus_config", 102 "..:audio_codecs_api", 103 "../../../modules/audio_coding:webrtc_multiopus", 104 "../../../rtc_base:rtc_base_approved", 105 "../../../rtc_base/system:rtc_export", 106 ] 107 absl_deps = [ 108 "//third_party/abseil-cpp/absl/memory", 109 "//third_party/abseil-cpp/absl/strings", 110 "//third_party/abseil-cpp/absl/types:optional", 111 ] 112} 113