mirror of
https://github.com/mollyim/webrtc.git
synced 2025-05-14 14:20:45 +01:00

WHAT: made a BUILD.gn with library and tests in the Audio Processing Module Voice Activity Detector directory. Updated depending code. Fixed a Clang warning. WHY: to make it possible for a target to depend on just the VAD and not the whole APM. There are other benefits: * Sometimes faster compilation. * The VAD takes up 28000 bytes of libjingle_peerconnection_so.so. Making a peerconnection shared object file without the VAD has to be done in steps. The first step is a custom target for the VAD. Hence this Cl. Change-Id: Iea0207a0b5979db26baaf46b24beaefbb1c431af BUG: webrtc:5716, webrtc:7494 Reviewed-on: https://webrtc-review.googlesource.com/47521 Commit-Queue: Alex Loiko <aleloi@webrtc.org> Reviewed-by: Sam Zackrisson <saza@webrtc.org> Reviewed-by: Oleh Prypin <oprypin@webrtc.org> Cr-Commit-Position: refs/heads/master@{#21893}
190 lines
5.1 KiB
Text
190 lines
5.1 KiB
Text
# Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
|
|
#
|
|
# Use of this source code is governed by a BSD-style license
|
|
# that can be found in the LICENSE file in the root of the source
|
|
# tree. An additional intellectual property rights grant can be found
|
|
# in the file PATENTS. All contributing project authors may
|
|
# be found in the AUTHORS file in the root of the source tree.
|
|
|
|
import("../../../../webrtc.gni")
|
|
|
|
group("py_quality_assessment") {
|
|
testonly = true
|
|
deps = [
|
|
":scripts",
|
|
":unit_tests",
|
|
]
|
|
}
|
|
|
|
copy("scripts") {
|
|
testonly = true
|
|
sources = [
|
|
"README.md",
|
|
"apm_quality_assessment.py",
|
|
"apm_quality_assessment.sh",
|
|
"apm_quality_assessment_boxplot.py",
|
|
"apm_quality_assessment_export.py",
|
|
"apm_quality_assessment_gencfgs.py",
|
|
"apm_quality_assessment_optimize.py",
|
|
]
|
|
outputs = [
|
|
"$root_build_dir/py_quality_assessment/{{source_file_part}}",
|
|
]
|
|
deps = [
|
|
":apm_configs",
|
|
":lib",
|
|
":output",
|
|
"../..:audioproc_f",
|
|
"../../../../resources/audio_processing/test/py_quality_assessment:probing_signals",
|
|
]
|
|
}
|
|
|
|
copy("apm_configs") {
|
|
testonly = true
|
|
sources = [
|
|
"apm_configs/default.json",
|
|
]
|
|
visibility = [ ":*" ] # Only targets in this file can depend on this.
|
|
outputs = [
|
|
"$root_build_dir/py_quality_assessment/apm_configs/{{source_file_part}}",
|
|
]
|
|
} # apm_configs
|
|
|
|
copy("lib") {
|
|
testonly = true
|
|
sources = [
|
|
"quality_assessment/__init__.py",
|
|
"quality_assessment/annotations.py",
|
|
"quality_assessment/audioproc_wrapper.py",
|
|
"quality_assessment/collect_data.py",
|
|
"quality_assessment/data_access.py",
|
|
"quality_assessment/echo_path_simulation.py",
|
|
"quality_assessment/echo_path_simulation_factory.py",
|
|
"quality_assessment/eval_scores.py",
|
|
"quality_assessment/eval_scores_factory.py",
|
|
"quality_assessment/evaluation.py",
|
|
"quality_assessment/exceptions.py",
|
|
"quality_assessment/export.py",
|
|
"quality_assessment/export_unittest.py",
|
|
"quality_assessment/external_vad.py",
|
|
"quality_assessment/input_mixer.py",
|
|
"quality_assessment/input_signal_creator.py",
|
|
"quality_assessment/results.css",
|
|
"quality_assessment/results.js",
|
|
"quality_assessment/signal_processing.py",
|
|
"quality_assessment/simulation.py",
|
|
"quality_assessment/test_data_generation.py",
|
|
"quality_assessment/test_data_generation_factory.py",
|
|
]
|
|
visibility = [ ":*" ] # Only targets in this file can depend on this.
|
|
outputs = [
|
|
"$root_build_dir/py_quality_assessment/quality_assessment/{{source_file_part}}",
|
|
]
|
|
deps = [
|
|
"../../../../resources/audio_processing/test/py_quality_assessment:noise_tracks",
|
|
]
|
|
}
|
|
|
|
copy("output") {
|
|
testonly = true
|
|
sources = [
|
|
"output/README.md",
|
|
]
|
|
visibility = [ ":*" ] # Only targets in this file can depend on this.
|
|
outputs = [
|
|
"$root_build_dir/py_quality_assessment/output/{{source_file_part}}",
|
|
]
|
|
}
|
|
|
|
group("unit_tests") {
|
|
testonly = true
|
|
visibility = [ ":*" ] # Only targets in this file can depend on this.
|
|
deps = [
|
|
":apm_vad",
|
|
":fake_polqa",
|
|
":lib_unit_tests",
|
|
":scripts_unit_tests",
|
|
":vad",
|
|
]
|
|
}
|
|
|
|
rtc_executable("fake_polqa") {
|
|
testonly = true
|
|
sources = [
|
|
"quality_assessment/fake_polqa.cc",
|
|
]
|
|
visibility = [ ":*" ] # Only targets in this file can depend on this.
|
|
output_name = "py_quality_assessment/quality_assessment/fake_polqa"
|
|
deps = [
|
|
"../../../..:webrtc_common",
|
|
"../../../../rtc_base:checks",
|
|
"../../../../rtc_base:rtc_base_approved",
|
|
]
|
|
}
|
|
|
|
rtc_executable("vad") {
|
|
sources = [
|
|
"quality_assessment/vad.cc",
|
|
]
|
|
deps = [
|
|
"../../../..:webrtc_common",
|
|
"../../../../common_audio",
|
|
"../../../../rtc_base:rtc_base_approved",
|
|
]
|
|
}
|
|
|
|
rtc_executable("apm_vad") {
|
|
sources = [
|
|
"quality_assessment/apm_vad.cc",
|
|
]
|
|
deps = [
|
|
"../..",
|
|
"../../../..:webrtc_common",
|
|
"../../../../common_audio",
|
|
"../../../../rtc_base:rtc_base_approved",
|
|
"../../../../system_wrappers:metrics_default",
|
|
"../../vad",
|
|
]
|
|
}
|
|
|
|
rtc_executable("sound_level") {
|
|
sources = [
|
|
"quality_assessment/sound_level.cc",
|
|
]
|
|
deps = [
|
|
"../..",
|
|
"../../../..:webrtc_common",
|
|
"../../../../common_audio",
|
|
"../../../../rtc_base:rtc_base_approved",
|
|
"../../../../system_wrappers:metrics_default",
|
|
]
|
|
}
|
|
|
|
copy("lib_unit_tests") {
|
|
testonly = true
|
|
sources = [
|
|
"quality_assessment/annotations_unittest.py",
|
|
"quality_assessment/echo_path_simulation_unittest.py",
|
|
"quality_assessment/eval_scores_unittest.py",
|
|
"quality_assessment/fake_external_vad.py",
|
|
"quality_assessment/input_mixer_unittest.py",
|
|
"quality_assessment/signal_processing_unittest.py",
|
|
"quality_assessment/simulation_unittest.py",
|
|
"quality_assessment/test_data_generation_unittest.py",
|
|
]
|
|
visibility = [ ":*" ] # Only targets in this file can depend on this.
|
|
outputs = [
|
|
"$root_build_dir/py_quality_assessment/quality_assessment/{{source_file_part}}",
|
|
]
|
|
}
|
|
|
|
copy("scripts_unit_tests") {
|
|
testonly = true
|
|
sources = [
|
|
"apm_quality_assessment_unittest.py",
|
|
]
|
|
visibility = [ ":*" ] # Only targets in this file can depend on this.
|
|
outputs = [
|
|
"$root_build_dir/py_quality_assessment/{{source_file_part}}",
|
|
]
|
|
}
|