150a07fd2Sopenharmony_ci# Copyright (c) 2022-2023 Huawei Device Co., Ltd.
250a07fd2Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
350a07fd2Sopenharmony_ci# you may not use this file except in compliance with the License.
450a07fd2Sopenharmony_ci# You may obtain a copy of the License at
550a07fd2Sopenharmony_ci#
650a07fd2Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
750a07fd2Sopenharmony_ci#
850a07fd2Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
950a07fd2Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
1050a07fd2Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1150a07fd2Sopenharmony_ci# See the License for the specific language governing permissions and
1250a07fd2Sopenharmony_ci# limitations under the License.
1350a07fd2Sopenharmony_ci
1450a07fd2Sopenharmony_ciimport("//build/ohos.gni")
1550a07fd2Sopenharmony_ciimport("//build/ohos_var.gni")
1650a07fd2Sopenharmony_ciimport("../../../distributedaudio.gni")
1750a07fd2Sopenharmony_ci
1850a07fd2Sopenharmony_ciconfig("encode_transport_pub_config") {
1950a07fd2Sopenharmony_ci  include_dirs = [
2050a07fd2Sopenharmony_ci    "include",
2150a07fd2Sopenharmony_ci    "../interface",
2250a07fd2Sopenharmony_ci    "../../audioprocessor/interface",
2350a07fd2Sopenharmony_ci  ]
2450a07fd2Sopenharmony_ci}
2550a07fd2Sopenharmony_ci
2650a07fd2Sopenharmony_ciohos_shared_library("distributed_audio_encode_transport") {
2750a07fd2Sopenharmony_ci  sanitize = {
2850a07fd2Sopenharmony_ci    boundary_sanitize = true
2950a07fd2Sopenharmony_ci    cfi = true
3050a07fd2Sopenharmony_ci    cfi_cross_dso = true
3150a07fd2Sopenharmony_ci    debug = false
3250a07fd2Sopenharmony_ci    integer_overflow = true
3350a07fd2Sopenharmony_ci    ubsan = true
3450a07fd2Sopenharmony_ci  }
3550a07fd2Sopenharmony_ci  stack_protector_ret = true
3650a07fd2Sopenharmony_ci
3750a07fd2Sopenharmony_ci  include_dirs = [
3850a07fd2Sopenharmony_ci    "include",
3950a07fd2Sopenharmony_ci    "${audio_processor_path}/directprocessor/include",
4050a07fd2Sopenharmony_ci    "${audio_processor_path}/interface",
4150a07fd2Sopenharmony_ci    "${audio_transport_path}/interface",
4250a07fd2Sopenharmony_ci    "${audio_transport_path}/senderengine/include",
4350a07fd2Sopenharmony_ci    "${common_path}/dfx_utils/include",
4450a07fd2Sopenharmony_ci    "${common_path}/include",
4550a07fd2Sopenharmony_ci    "${services_path}/common/audiodata/include",
4650a07fd2Sopenharmony_ci    "${services_path}/common/audioparam",
4750a07fd2Sopenharmony_ci  ]
4850a07fd2Sopenharmony_ci
4950a07fd2Sopenharmony_ci  public_configs = [ ":encode_transport_pub_config" ]
5050a07fd2Sopenharmony_ci
5150a07fd2Sopenharmony_ci  sources = [
5250a07fd2Sopenharmony_ci    "${audio_processor_path}/directprocessor/src/audio_direct_processor.cpp",
5350a07fd2Sopenharmony_ci    "${audio_transport_path}/senderengine/src/av_sender_engine_adapter.cpp",
5450a07fd2Sopenharmony_ci    "${audio_transport_path}/senderengine/src/av_sender_engine_transport.cpp",
5550a07fd2Sopenharmony_ci  ]
5650a07fd2Sopenharmony_ci
5750a07fd2Sopenharmony_ci  deps = [ "${services_path}/common:distributed_audio_utils" ]
5850a07fd2Sopenharmony_ci
5950a07fd2Sopenharmony_ci  external_deps = [
6050a07fd2Sopenharmony_ci    "cJSON:cjson",
6150a07fd2Sopenharmony_ci    "c_utils:utils",
6250a07fd2Sopenharmony_ci    "distributed_hardware_fwk:distributed_av_sender",
6350a07fd2Sopenharmony_ci    "dsoftbus:softbus_client",
6450a07fd2Sopenharmony_ci    "hilog:libhilog",
6550a07fd2Sopenharmony_ci    "hisysevent:libhisysevent",
6650a07fd2Sopenharmony_ci    "hitrace:hitrace_meter",
6750a07fd2Sopenharmony_ci    "player_framework:media_client",
6850a07fd2Sopenharmony_ci  ]
6950a07fd2Sopenharmony_ci
7050a07fd2Sopenharmony_ci  defines = [
7150a07fd2Sopenharmony_ci    "HI_LOG_ENABLE",
7250a07fd2Sopenharmony_ci    "LOG_DOMAIN=0xD004130",
7350a07fd2Sopenharmony_ci  ]
7450a07fd2Sopenharmony_ci
7550a07fd2Sopenharmony_ci  subsystem_name = "distributedhardware"
7650a07fd2Sopenharmony_ci
7750a07fd2Sopenharmony_ci  part_name = "distributed_audio"
7850a07fd2Sopenharmony_ci}
79