| # Copyright (c) 2019 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("e2e") { |
| testonly = true |
| |
| deps = [ |
| ":default_encoded_image_data_injector", |
| ":encoded_image_data_injector_api", |
| ":example_video_quality_analyzer", |
| ":id_generator", |
| ":quality_analyzing_video_decoder", |
| ":quality_analyzing_video_encoder", |
| ":single_process_encoded_image_data_injector", |
| ] |
| if (rtc_include_tests) { |
| deps += [ |
| ":peerconnection_quality_test", |
| ":test_peer", |
| ":video_quality_analyzer_injection_helper", |
| ] |
| } |
| } |
| |
| if (rtc_include_tests) { |
| group("e2e_unittests") { |
| testonly = true |
| |
| deps = [ |
| ":default_encoded_image_data_injector_unittest", |
| ":default_video_quality_analyzer_test", |
| ":peer_connection_e2e_smoke_test", |
| ":single_process_encoded_image_data_injector_unittest", |
| ] |
| } |
| } |
| |
| rtc_library("peer_connection_quality_test_params") { |
| visibility = [ "*" ] |
| testonly = true |
| sources = [ "peer_connection_quality_test_params.h" ] |
| |
| deps = [ |
| "../../../api:callfactory_api", |
| "../../../api:fec_controller_api", |
| "../../../api:libjingle_peerconnection_api", |
| "../../../api:packet_socket_factory", |
| "../../../api:peer_connection_quality_test_fixture_api", |
| "../../../api/rtc_event_log", |
| "../../../api/task_queue", |
| "../../../api/transport:network_control", |
| "../../../api/transport/media:media_transport_interface", |
| "../../../api/video_codecs:video_codecs_api", |
| "../../../rtc_base", |
| ] |
| } |
| |
| rtc_library("encoded_image_data_injector_api") { |
| visibility = [ "*" ] |
| testonly = true |
| sources = [ "analyzer/video/encoded_image_data_injector.h" ] |
| |
| deps = [ "../../../api/video:encoded_image" ] |
| } |
| |
| rtc_library("default_encoded_image_data_injector") { |
| visibility = [ "*" ] |
| testonly = true |
| sources = [ |
| "analyzer/video/default_encoded_image_data_injector.cc", |
| "analyzer/video/default_encoded_image_data_injector.h", |
| ] |
| |
| deps = [ |
| ":encoded_image_data_injector_api", |
| "../../../api/video:encoded_image", |
| "../../../rtc_base:checks", |
| "../../../rtc_base:criticalsection", |
| "//third_party/abseil-cpp/absl/memory", |
| ] |
| } |
| |
| rtc_library("single_process_encoded_image_data_injector") { |
| visibility = [ "*" ] |
| testonly = true |
| sources = [ |
| "analyzer/video/single_process_encoded_image_data_injector.cc", |
| "analyzer/video/single_process_encoded_image_data_injector.h", |
| ] |
| |
| deps = [ |
| ":encoded_image_data_injector_api", |
| "../../../api/video:encoded_image", |
| "../../../rtc_base:checks", |
| "../../../rtc_base:criticalsection", |
| "//third_party/abseil-cpp/absl/memory", |
| ] |
| } |
| |
| rtc_library("id_generator") { |
| visibility = [ "*" ] |
| testonly = true |
| sources = [ |
| "analyzer/video/id_generator.cc", |
| "analyzer/video/id_generator.h", |
| ] |
| deps = [] |
| } |
| |
| rtc_library("simulcast_dummy_buffer_helper") { |
| visibility = [ "*" ] |
| testonly = true |
| sources = [ |
| "analyzer/video/simulcast_dummy_buffer_helper.cc", |
| "analyzer/video/simulcast_dummy_buffer_helper.h", |
| ] |
| deps = [ |
| "../../../api/video:video_frame", |
| "../../../api/video:video_frame_i420", |
| ] |
| } |
| |
| rtc_library("quality_analyzing_video_decoder") { |
| visibility = [ "*" ] |
| testonly = true |
| sources = [ |
| "analyzer/video/quality_analyzing_video_decoder.cc", |
| "analyzer/video/quality_analyzing_video_decoder.h", |
| ] |
| deps = [ |
| ":encoded_image_data_injector_api", |
| ":id_generator", |
| ":simulcast_dummy_buffer_helper", |
| "../../../api:video_quality_analyzer_api", |
| "../../../api/video:encoded_image", |
| "../../../api/video:video_frame", |
| "../../../api/video:video_frame_i420", |
| "../../../api/video:video_rtp_headers", |
| "../../../api/video_codecs:video_codecs_api", |
| "../../../modules/video_coding:video_codec_interface", |
| "../../../rtc_base:criticalsection", |
| "../../../rtc_base:logging", |
| "//third_party/abseil-cpp/absl/types:optional", |
| ] |
| } |
| |
| rtc_library("quality_analyzing_video_encoder") { |
| visibility = [ "*" ] |
| testonly = true |
| sources = [ |
| "analyzer/video/quality_analyzing_video_encoder.cc", |
| "analyzer/video/quality_analyzing_video_encoder.h", |
| ] |
| deps = [ |
| ":encoded_image_data_injector_api", |
| ":id_generator", |
| "../../../api:video_quality_analyzer_api", |
| "../../../api/video:encoded_image", |
| "../../../api/video:video_frame", |
| "../../../api/video:video_rtp_headers", |
| "../../../api/video_codecs:video_codecs_api", |
| "../../../modules/video_coding:video_codec_interface", |
| "../../../rtc_base:criticalsection", |
| "../../../rtc_base:logging", |
| ] |
| } |
| |
| if (rtc_include_tests) { |
| rtc_library("video_quality_analyzer_injection_helper") { |
| visibility = [ "*" ] |
| testonly = true |
| sources = [ |
| "analyzer/video/video_quality_analyzer_injection_helper.cc", |
| "analyzer/video/video_quality_analyzer_injection_helper.h", |
| ] |
| deps = [ |
| ":encoded_image_data_injector_api", |
| ":id_generator", |
| ":quality_analyzing_video_decoder", |
| ":quality_analyzing_video_encoder", |
| ":simulcast_dummy_buffer_helper", |
| "../..:test_renderer", |
| "../../../api:peer_connection_quality_test_fixture_api", |
| "../../../api:stats_observer_interface", |
| "../../../api:video_quality_analyzer_api", |
| "../../../api/video:video_frame", |
| "../../../api/video:video_rtp_headers", |
| "../../../api/video_codecs:video_codecs_api", |
| "../../../test:video_test_common", |
| "../../../test:video_test_support", |
| "//third_party/abseil-cpp/absl/memory", |
| ] |
| } |
| |
| rtc_library("echo_emulation") { |
| visibility = [ "*" ] |
| testonly = true |
| sources = [ |
| "echo/echo_emulation.cc", |
| "echo/echo_emulation.h", |
| ] |
| deps = [ |
| "../../../api:peer_connection_quality_test_fixture_api", |
| "../../../modules/audio_device:audio_device_impl", |
| "../../../rtc_base:rtc_base_approved", |
| ] |
| } |
| |
| rtc_library("test_peer") { |
| visibility = [ "*" ] |
| testonly = true |
| sources = [ |
| "test_peer.cc", |
| "test_peer.h", |
| ] |
| deps = [ |
| ":echo_emulation", |
| ":peer_connection_quality_test_params", |
| ":video_quality_analyzer_injection_helper", |
| "../../../api:frame_generator_api", |
| "../../../api:peer_connection_quality_test_fixture_api", |
| "../../../api:scoped_refptr", |
| "../../../api/rtc_event_log:rtc_event_log_factory", |
| "../../../api/task_queue", |
| "../../../api/task_queue:default_task_queue_factory", |
| "../../../api/video_codecs:builtin_video_decoder_factory", |
| "../../../api/video_codecs:builtin_video_encoder_factory", |
| "../../../media:rtc_audio_video", |
| "../../../media:rtc_media_base", |
| "../../../media:rtc_media_engine_defaults", |
| "../../../modules/audio_device:audio_device_api", |
| "../../../modules/audio_device:audio_device_impl", |
| "../../../modules/audio_processing:api", |
| "../../../modules/audio_processing/aec_dump:aec_dump", |
| "../../../p2p:rtc_p2p", |
| "../../../pc:pc_test_utils", |
| "../../../pc:peerconnection_wrapper", |
| "../../../rtc_base", |
| "../../../rtc_base:rtc_base_approved", |
| "../../../rtc_base:rtc_task_queue", |
| "../../../test:copy_to_file_audio_capturer", |
| "../../../test:video_test_common", |
| "//third_party/abseil-cpp/absl/memory", |
| "//third_party/abseil-cpp/absl/types:optional", |
| ] |
| } |
| |
| rtc_library("peerconnection_quality_test") { |
| visibility = [ "*" ] |
| testonly = true |
| |
| sources = [ |
| "peer_connection_quality_test.cc", |
| "peer_connection_quality_test.h", |
| ] |
| deps = [ |
| ":analyzer_helper", |
| ":default_audio_quality_analyzer", |
| ":default_video_quality_analyzer", |
| ":peer_connection_quality_test_params", |
| ":sdp_changer", |
| ":single_process_encoded_image_data_injector", |
| ":stats_poller", |
| ":test_peer", |
| ":video_quality_analyzer_injection_helper", |
| ":video_quality_metrics_reporter", |
| "../..:field_trial", |
| "../..:platform_video_capturer", |
| "../..:video_test_common", |
| "../../../api:audio_quality_analyzer_api", |
| "../../../api:create_frame_generator", |
| "../../../api:frame_generator_api", |
| "../../../api:libjingle_peerconnection_api", |
| "../../../api:media_stream_interface", |
| "../../../api:peer_connection_quality_test_fixture_api", |
| "../../../api:rtc_event_log_output_file", |
| "../../../api:scoped_refptr", |
| "../../../api:video_quality_analyzer_api", |
| "../../../api/rtc_event_log", |
| "../../../api/task_queue", |
| "../../../api/task_queue:default_task_queue_factory", |
| "../../../api/units:time_delta", |
| "../../../api/units:timestamp", |
| "../../../api/video:video_frame", |
| "../../../pc:pc_test_utils", |
| "../../../pc:peerconnection", |
| "../../../rtc_base", |
| "../../../rtc_base:gunit_helpers", |
| "../../../rtc_base:rtc_base_approved", |
| "../../../rtc_base:rtc_task_queue", |
| "../../../rtc_base:safe_conversions", |
| "../../../rtc_base:task_queue_for_test", |
| "../../../rtc_base/task_utils:repeating_task", |
| "../../../system_wrappers", |
| "../../../system_wrappers:field_trial", |
| "../../../test:fileutils", |
| "../../../test:video_test_support", |
| ] |
| } |
| |
| rtc_library("single_process_encoded_image_data_injector_unittest") { |
| testonly = true |
| sources = [ |
| "analyzer/video/single_process_encoded_image_data_injector_unittest.cc", |
| ] |
| deps = [ |
| ":single_process_encoded_image_data_injector", |
| "../../../api/video:encoded_image", |
| "../../../rtc_base:rtc_base_approved", |
| "../../../test:test_support", |
| ] |
| } |
| |
| rtc_library("default_encoded_image_data_injector_unittest") { |
| testonly = true |
| sources = |
| [ "analyzer/video/default_encoded_image_data_injector_unittest.cc" ] |
| deps = [ |
| ":default_encoded_image_data_injector", |
| "../../../api/video:encoded_image", |
| "../../../rtc_base:rtc_base_approved", |
| "../../../test:test_support", |
| ] |
| } |
| |
| peer_connection_e2e_smoke_test_resources = [ |
| "../../../resources/pc_quality_smoke_test_alice_source.wav", |
| "../../../resources/pc_quality_smoke_test_bob_source.wav", |
| ] |
| if (is_ios) { |
| bundle_data("peer_connection_e2e_smoke_test_resources_bundle_data") { |
| testonly = true |
| sources = peer_connection_e2e_smoke_test_resources |
| outputs = [ "{{bundle_resources_dir}}/{{source_file_part}}" ] |
| } |
| } |
| |
| rtc_library("peer_connection_e2e_smoke_test") { |
| testonly = true |
| |
| sources = [ "peer_connection_e2e_smoke_test.cc" ] |
| deps = [ |
| ":default_audio_quality_analyzer", |
| ":default_video_quality_analyzer", |
| ":network_quality_metrics_reporter", |
| "../../../api:callfactory_api", |
| "../../../api:create_network_emulation_manager", |
| "../../../api:create_peerconnection_quality_test_fixture", |
| "../../../api:libjingle_peerconnection_api", |
| "../../../api:network_emulation_manager_api", |
| "../../../api:peer_connection_quality_test_fixture_api", |
| "../../../api:scoped_refptr", |
| "../../../api:simulated_network_api", |
| "../../../api/audio_codecs:builtin_audio_decoder_factory", |
| "../../../api/audio_codecs:builtin_audio_encoder_factory", |
| "../../../api/video_codecs:builtin_video_decoder_factory", |
| "../../../api/video_codecs:builtin_video_encoder_factory", |
| "../../../call:simulated_network", |
| "../../../media:rtc_audio_video", |
| "../../../modules/audio_device:audio_device_impl", |
| "../../../p2p:rtc_p2p", |
| "../../../pc:pc_test_utils", |
| "../../../pc:peerconnection_wrapper", |
| "../../../rtc_base", |
| "../../../rtc_base:gunit_helpers", |
| "../../../rtc_base:logging", |
| "../../../rtc_base:rtc_event", |
| "../../../system_wrappers:field_trial", |
| "../../../test:field_trial", |
| "../../../test:fileutils", |
| "../../../test:test_support", |
| ] |
| data = peer_connection_e2e_smoke_test_resources |
| if (is_ios) { |
| deps += [ ":peer_connection_e2e_smoke_test_resources_bundle_data" ] |
| } |
| } |
| |
| rtc_library("stats_poller") { |
| testonly = true |
| sources = [ |
| "stats_poller.cc", |
| "stats_poller.h", |
| ] |
| deps = [ |
| ":test_peer", |
| "../../../api:libjingle_peerconnection_api", |
| "../../../api:stats_observer_interface", |
| "../../../rtc_base:logging", |
| ] |
| } |
| |
| rtc_library("default_video_quality_analyzer_test") { |
| testonly = true |
| sources = [ "analyzer/video/default_video_quality_analyzer_test.cc" ] |
| deps = [ |
| ":default_video_quality_analyzer", |
| "../..:test_support", |
| "../../../api:create_frame_generator", |
| "../../../api:rtp_packet_info", |
| "../../../api/video:encoded_image", |
| "../../../api/video:video_frame", |
| "../../../api/video:video_frame_i420", |
| "../../../modules/rtp_rtcp:rtp_rtcp_format", |
| "../../../system_wrappers", |
| ] |
| } |
| } |
| |
| rtc_library("analyzer_helper") { |
| visibility = [ "*" ] |
| sources = [ |
| "analyzer_helper.cc", |
| "analyzer_helper.h", |
| ] |
| deps = [ |
| "../../../api:track_id_stream_label_map", |
| "../../../rtc_base:macromagic", |
| "../../../rtc_base/synchronization:sequence_checker", |
| ] |
| } |
| |
| rtc_library("default_audio_quality_analyzer") { |
| visibility = [ "*" ] |
| testonly = true |
| sources = [ |
| "analyzer/audio/default_audio_quality_analyzer.cc", |
| "analyzer/audio/default_audio_quality_analyzer.h", |
| ] |
| |
| deps = [ |
| "../..:perf_test", |
| "../../../api:audio_quality_analyzer_api", |
| "../../../api:libjingle_peerconnection_api", |
| "../../../api:stats_observer_interface", |
| "../../../api:track_id_stream_label_map", |
| "../../../rtc_base:criticalsection", |
| "../../../rtc_base:logging", |
| "../../../rtc_base:rtc_numerics", |
| ] |
| } |
| |
| rtc_library("example_video_quality_analyzer") { |
| visibility = [ "*" ] |
| testonly = true |
| sources = [ |
| "analyzer/video/example_video_quality_analyzer.cc", |
| "analyzer/video/example_video_quality_analyzer.h", |
| ] |
| |
| deps = [ |
| "../../../api:video_quality_analyzer_api", |
| "../../../api/video:encoded_image", |
| "../../../api/video:video_frame", |
| "../../../api/video:video_rtp_headers", |
| "../../../rtc_base:criticalsection", |
| "../../../rtc_base:logging", |
| ] |
| } |
| |
| rtc_library("video_quality_metrics_reporter") { |
| visibility = [ "*" ] |
| |
| testonly = true |
| sources = [ |
| "analyzer/video/video_quality_metrics_reporter.cc", |
| "analyzer/video/video_quality_metrics_reporter.h", |
| ] |
| deps = [ |
| "../..:perf_test", |
| "../../../api:peer_connection_quality_test_fixture_api", |
| "../../../rtc_base:criticalsection", |
| "../../../rtc_base:rtc_numerics", |
| ] |
| } |
| |
| rtc_library("default_video_quality_analyzer") { |
| visibility = [ "*" ] |
| |
| testonly = true |
| sources = [ |
| "analyzer/video/default_video_quality_analyzer.cc", |
| "analyzer/video/default_video_quality_analyzer.h", |
| ] |
| |
| deps = [ |
| "../..:perf_test", |
| "../../../api:video_quality_analyzer_api", |
| "../../../api/units:time_delta", |
| "../../../api/units:timestamp", |
| "../../../api/video:encoded_image", |
| "../../../api/video:video_frame", |
| "../../../api/video:video_frame_i420", |
| "../../../api/video:video_rtp_headers", |
| "../../../common_video", |
| "../../../rtc_base:criticalsection", |
| "../../../rtc_base:logging", |
| "../../../rtc_base:rtc_base_approved", |
| "../../../rtc_base:rtc_event", |
| "../../../rtc_base:rtc_numerics", |
| "../../../system_wrappers", |
| ] |
| } |
| |
| rtc_library("network_quality_metrics_reporter") { |
| visibility = [ "*" ] |
| testonly = true |
| sources = [ |
| "network_quality_metrics_reporter.cc", |
| "network_quality_metrics_reporter.h", |
| ] |
| deps = [ |
| "../..:perf_test", |
| "../../../api:libjingle_peerconnection_api", |
| "../../../api:network_emulation_manager_api", |
| "../../../api:peer_connection_quality_test_fixture_api", |
| "../../../rtc_base:criticalsection", |
| "../../../rtc_base:rtc_event", |
| "../../../system_wrappers:field_trial", |
| ] |
| } |
| |
| rtc_library("sdp_changer") { |
| testonly = true |
| sources = [ |
| "sdp/sdp_changer.cc", |
| "sdp/sdp_changer.h", |
| ] |
| deps = [ |
| "../../../api:array_view", |
| "../../../api:libjingle_peerconnection_api", |
| "../../../api:peer_connection_quality_test_fixture_api", |
| "../../../api:rtp_parameters", |
| "../../../media:rtc_media_base", |
| "../../../p2p:rtc_p2p", |
| "../../../pc:peerconnection", |
| "../../../pc:rtc_pc_base", |
| "../../../rtc_base:stringutils", |
| "//third_party/abseil-cpp/absl/memory", |
| "//third_party/abseil-cpp/absl/strings:strings", |
| "//third_party/abseil-cpp/absl/types:optional", |
| ] |
| } |