# Copyright (c) 2016 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. # Visibility considerations: # # Most targets in this file should have visibility ":*", as they are only # used internally. # Some functions are cleared for wider webrtc usage; these have default # visibility (set to "//*", not the gn default of "*"). # These are: # - rtc_pc # - session_description # - simulcast_description # - peerconnection # - sdp_utils # - media_stream_observer # - video_track_source # - libjingle_peerconnection # # Some targets are depended on by external users for historical reasons, # and are therefore marked with visibility "*". This is in the process # of being removed. # # Some targets are only publicly visible in Chrome builds. # These are marked up as such. import("../webrtc.gni") if (is_android) { import("//build/config/android/config.gni") import("//build/config/android/rules.gni") } group("pc") { deps = [ ":rtc_pc" ] } rtc_library("proxy") { visibility = [ ":*" ] sources = [ "proxy.cc", "proxy.h", ] deps = [ "../api:scoped_refptr", "../api/task_queue", "../rtc_base:event_tracer", "../rtc_base:rtc_event", "../rtc_base:stringutils", "../rtc_base:threading", "../rtc_base/system:rtc_export", ] } rtc_source_set("channel") { visibility = [ ":*", "../test/peer_scenario", ] sources = [ "channel.cc", "channel.h", ] deps = [ ":channel_interface", ":rtp_media_utils", ":rtp_transport_internal", ":session_description", "../api:libjingle_peerconnection_api", "../api:rtp_parameters", "../api:rtp_transceiver_direction", "../api:scoped_refptr", "../api:sequence_checker", "../api/crypto:options", "../api/task_queue:pending_task_safety_flag", "../api/units:timestamp", "../call:rtp_interfaces", "../call:rtp_receiver", "../media:codec", "../media:media_channel", "../media:media_channel_impl", "../media:rid_description", "../media:rtc_media_base", "../media:rtp_utils", "../media:stream_params", "../modules/rtp_rtcp:rtp_rtcp_format", "../p2p:rtc_p2p", "../rtc_base:async_packet_socket", "../rtc_base:checks", "../rtc_base:copy_on_write_buffer", "../rtc_base:event_tracer", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:network_route", "../rtc_base:socket", "../rtc_base:stringutils", "../rtc_base:threading", "../rtc_base:unique_id_generator", "../rtc_base/containers:flat_set", "../rtc_base/network:sent_packet", "../rtc_base/third_party/sigslot", ] absl_deps = [ "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_source_set("channel_interface") { visibility = [ ":*" ] sources = [ "channel_interface.h" ] deps = [ ":rtp_transport_internal", "../api:libjingle_peerconnection_api", "../api:rtp_parameters", "../media:media_channel", "../media:rtc_media_base", ] absl_deps = [ "//third_party/abseil-cpp/absl/strings" ] } rtc_source_set("dtls_srtp_transport") { visibility = [ ":*" ] sources = [ "dtls_srtp_transport.cc", "dtls_srtp_transport.h", ] deps = [ ":srtp_transport", "../api:dtls_transport_interface", "../api:libjingle_peerconnection_api", "../api:rtc_error", "../p2p:rtc_p2p", "../rtc_base:buffer", "../rtc_base:checks", "../rtc_base:logging", "../rtc_base:ssl", "../rtc_base/third_party/sigslot", ] absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] } rtc_source_set("dtls_transport") { visibility = [ ":*" ] sources = [ "dtls_transport.cc", "dtls_transport.h", ] deps = [ ":ice_transport", "../api:dtls_transport_interface", "../api:ice_transport_interface", "../api:libjingle_peerconnection_api", "../api:make_ref_counted", "../api:scoped_refptr", "../api:sequence_checker", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:ssl", "../rtc_base:threading", "../rtc_base/synchronization:mutex", ] absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] } rtc_source_set("external_hmac") { visibility = [ ":*" ] sources = [ "external_hmac.cc", "external_hmac.h", ] deps = [ "../rtc_base:logging", "../rtc_base:zero_memory", ] if (rtc_build_libsrtp) { deps += [ "//third_party/libsrtp" ] } } rtc_source_set("ice_transport") { visibility = [ ":*" ] sources = [ "ice_transport.cc", "ice_transport.h", ] deps = [ "../api:ice_transport_interface", "../api:libjingle_peerconnection_api", "../api:sequence_checker", "../rtc_base:checks", "../rtc_base:macromagic", "../rtc_base:threading", ] } rtc_source_set("jsep_transport") { visibility = [ ":*" ] sources = [ "jsep_transport.cc", "jsep_transport.h", ] deps = [ ":dtls_srtp_transport", ":dtls_transport", ":rtcp_mux_filter", ":rtp_transport", ":rtp_transport_internal", ":sctp_transport", ":session_description", ":srtp_filter", ":srtp_transport", ":transport_stats", "../api:array_view", "../api:candidate", "../api:ice_transport_interface", "../api:libjingle_peerconnection_api", "../api:rtc_error", "../api:scoped_refptr", "../api:sequence_checker", "../api/transport:datagram_transport_interface", "../media:rtc_data_sctp_transport_internal", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base:copy_on_write_buffer", "../rtc_base:event_tracer", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:ssl", "../rtc_base:stringutils", "../rtc_base:threading", ] absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] } rtc_source_set("jsep_transport_collection") { visibility = [ ":*" ] sources = [ "jsep_transport_collection.cc", "jsep_transport_collection.h", ] deps = [ ":jsep_transport", ":session_description", "../api:libjingle_peerconnection_api", "../api:sequence_checker", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base/system:no_unique_address", ] absl_deps = [] } rtc_source_set("jsep_transport_controller") { visibility = [ ":*", "../test/peer_scenario:*", ] sources = [ "jsep_transport_controller.cc", "jsep_transport_controller.h", ] deps = [ ":channel", ":dtls_srtp_transport", ":dtls_transport", ":jsep_transport", ":jsep_transport_collection", ":rtp_transport", ":rtp_transport_internal", ":sctp_transport", ":session_description", ":srtp_transport", ":transport_stats", "../api:async_dns_resolver", "../api:candidate", "../api:dtls_transport_interface", "../api:ice_transport_factory", "../api:ice_transport_interface", "../api:libjingle_peerconnection_api", "../api:rtc_error", "../api:rtp_parameters", "../api:scoped_refptr", "../api:sequence_checker", "../api/crypto:options", "../api/rtc_event_log", "../api/transport:datagram_transport_interface", "../api/transport:enums", "../api/transport:sctp_transport_factory_interface", "../media:rtc_data_sctp_transport_internal", "../p2p:rtc_p2p", "../rtc_base:callback_list", "../rtc_base:checks", "../rtc_base:copy_on_write_buffer", "../rtc_base:event_tracer", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:ssl", "../rtc_base:threading", "../rtc_base/third_party/sigslot", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_source_set("media_session") { visibility = [ "*" ] # Used by Chrome sources = [ "media_session.cc", "media_session.h", ] deps = [ ":jsep_transport", ":media_protocol_names", ":rtp_media_utils", ":session_description", ":simulcast_description", ":used_ids", "../api:field_trials_view", "../api:libjingle_peerconnection_api", "../api:rtp_parameters", "../api:rtp_transceiver_direction", "../api/crypto:options", "../media:codec", "../media:media_constants", "../media:rid_description", "../media:rtc_data_sctp_transport_internal", "../media:rtc_media_base", "../media:rtc_sdp_video_format_utils", "../media:stream_params", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base:logging", "../rtc_base:ssl", "../rtc_base:stringutils", "../rtc_base:unique_id_generator", "../rtc_base/memory:always_valid_pointer", "../rtc_base/third_party/base64", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_source_set("media_stream_proxy") { visibility = [ ":*" ] sources = [ "media_stream_proxy.h" ] deps = [ ":proxy", "../api:media_stream_interface", ] } rtc_source_set("media_stream_track_proxy") { visibility = [ ":*" ] sources = [ "media_stream_track_proxy.h" ] deps = [ ":proxy", "../api:media_stream_interface", ] } rtc_source_set("peer_connection_factory_proxy") { visibility = [ ":*" ] sources = [ "peer_connection_factory_proxy.h" ] deps = [ ":proxy", "../api:libjingle_peerconnection_api", ] } rtc_source_set("peer_connection_proxy") { visibility = [ ":*" ] sources = [ "peer_connection_proxy.h" ] deps = [ ":proxy", "../api:libjingle_peerconnection_api", ] } rtc_source_set("rtcp_mux_filter") { visibility = [ ":*" ] sources = [ "rtcp_mux_filter.cc", "rtcp_mux_filter.h", ] deps = [ ":session_description", "../rtc_base:logging", ] } rtc_source_set("rtp_media_utils") { visibility = [ ":*" ] sources = [ "rtp_media_utils.cc", "rtp_media_utils.h", ] deps = [ "../api:rtp_transceiver_direction", "../rtc_base:checks", ] } rtc_source_set("rtp_receiver_proxy") { visibility = [ ":*" ] sources = [ "rtp_receiver_proxy.h" ] deps = [ ":proxy", "../api:libjingle_peerconnection_api", ] } rtc_source_set("rtp_sender_proxy") { visibility = [ ":*" ] sources = [ "rtp_sender_proxy.h" ] deps = [ ":proxy", "../api:libjingle_peerconnection_api", "../api:rtp_sender_interface", ] } rtc_source_set("rtp_transport") { visibility = [ ":*" ] sources = [ "rtp_transport.cc", "rtp_transport.h", ] deps = [ ":rtp_transport_internal", ":session_description", "../api:array_view", "../api/units:timestamp", "../call:rtp_receiver", "../call:video_stream_api", "../media:rtc_media_base", "../media:rtp_utils", "../modules/rtp_rtcp:rtp_rtcp_format", "../p2p:rtc_p2p", "../rtc_base:async_packet_socket", "../rtc_base:checks", "../rtc_base:copy_on_write_buffer", "../rtc_base:event_tracer", "../rtc_base:logging", "../rtc_base:network_route", "../rtc_base:socket", "../rtc_base/network:sent_packet", ] absl_deps = [ "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_source_set("rtp_transport_internal") { visibility = [ ":*", "../test/peer_scenario", ] sources = [ "rtp_transport_internal.h" ] deps = [ ":session_description", "../call:rtp_receiver", "../p2p:rtc_p2p", "../rtc_base:network_route", "../rtc_base:ssl", "../rtc_base/third_party/sigslot", ] } rtc_source_set("sctp_transport") { visibility = [ ":*" ] sources = [ "sctp_transport.cc", "sctp_transport.h", ] deps = [ ":dtls_transport", "../api:dtls_transport_interface", "../api:libjingle_peerconnection_api", "../api:scoped_refptr", "../api:sequence_checker", "../api/transport:datagram_transport_interface", "../media:rtc_data_sctp_transport_internal", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:threading", "../rtc_base/third_party/sigslot", ] absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] } rtc_source_set("sctp_utils") { visibility = [ ":*", "../test/fuzzers:*", ] sources = [ "sctp_utils.cc", "sctp_utils.h", ] deps = [ "../api:libjingle_peerconnection_api", "../api:priority", "../api/transport:datagram_transport_interface", "../media:media_channel", "../media:rtc_media_base", "../rtc_base:byte_buffer", "../rtc_base:copy_on_write_buffer", "../rtc_base:logging", ] absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] } rtc_source_set("srtp_filter") { visibility = [ ":*" ] sources = [ "srtp_filter.cc", "srtp_filter.h", ] deps = [ ":session_description", "../api:array_view", "../api:libjingle_peerconnection_api", "../api:sequence_checker", "../rtc_base:buffer", "../rtc_base:logging", "../rtc_base:ssl", "../rtc_base:zero_memory", "../rtc_base/third_party/base64", ] absl_deps = [ "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_source_set("srtp_session") { visibility = [ ":*" ] sources = [ "srtp_session.cc", "srtp_session.h", ] deps = [ ":external_hmac", "../api:array_view", "../api:field_trials_view", "../api:scoped_refptr", "../api:sequence_checker", "../modules/rtp_rtcp:rtp_rtcp_format", "../rtc_base:byte_order", "../rtc_base:checks", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:ssl", "../rtc_base:stringutils", "../rtc_base:timeutils", "../rtc_base/synchronization:mutex", "../system_wrappers:metrics", ] absl_deps = [ "//third_party/abseil-cpp/absl/base:core_headers", "//third_party/abseil-cpp/absl/strings:strings", ] if (rtc_build_libsrtp) { deps += [ "//third_party/libsrtp" ] } } rtc_source_set("srtp_transport") { visibility = [ ":*" ] sources = [ "srtp_transport.cc", "srtp_transport.h", ] deps = [ ":rtp_transport", ":srtp_session", "../api:field_trials_view", "../api:libjingle_peerconnection_api", "../api:rtc_error", "../media:rtc_media_base", "../media:rtp_utils", "../modules/rtp_rtcp:rtp_rtcp_format", "../p2p:rtc_p2p", "../rtc_base:async_packet_socket", "../rtc_base:buffer", "../rtc_base:checks", "../rtc_base:copy_on_write_buffer", "../rtc_base:event_tracer", "../rtc_base:logging", "../rtc_base:network_route", "../rtc_base:safe_conversions", "../rtc_base:ssl", "../rtc_base:zero_memory", "../rtc_base/third_party/base64", ] absl_deps = [ "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_source_set("transport_stats") { visibility = [ ":*" ] sources = [ "transport_stats.cc", "transport_stats.h", ] deps = [ "../api:dtls_transport_interface", "../api:libjingle_peerconnection_api", "../p2p:rtc_p2p", "../rtc_base:ssl", ] } rtc_source_set("used_ids") { visibility = [ ":*" ] sources = [ "used_ids.h" ] deps = [ "../api:rtp_parameters", "../media:codec", "../media:rtc_media_base", "../rtc_base:checks", "../rtc_base:logging", ] } rtc_source_set("video_track_source_proxy") { visibility = [ "*" ] # Used by Chrome sources = [ "video_track_source_proxy.cc", "video_track_source_proxy.h", ] deps = [ ":proxy", "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:scoped_refptr", "../api:video_track_source_constraints", "../api/video:recordable_encoded_frame", "../api/video:video_frame", "../rtc_base:threading", ] absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] } rtc_source_set("session_description") { # TODO(bugs.webrtc.org/13661): Reduce visibility if possible visibility = [ "*" ] # Used by Chrome and others sources = [ "session_description.cc", "session_description.h", ] deps = [ ":media_protocol_names", ":simulcast_description", "../api:libjingle_peerconnection_api", "../api:rtp_parameters", "../api:rtp_transceiver_direction", "../media:codec", "../media:media_channel", "../media:media_constants", "../media:rid_description", "../media:rtc_media_base", "../media:stream_params", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base:socket_address", "../rtc_base:stringutils", "../rtc_base/system:rtc_export", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/memory:memory", "//third_party/abseil-cpp/absl/strings", ] } rtc_source_set("simulcast_description") { sources = [ "simulcast_description.cc", "simulcast_description.h", ] deps = [ "../rtc_base:checks", "../rtc_base:socket_address", "../rtc_base/system:rtc_export", ] absl_deps = [ "//third_party/abseil-cpp/absl/strings" ] } rtc_source_set("rtc_pc") { if (build_with_chromium) { visibility = [ "*" ] } allow_poison = [ "audio_codecs" ] # TODO(bugs.webrtc.org/8396): Remove. deps = [ "../media:rtc_audio_video" ] } rtc_library("media_protocol_names") { visibility = [ ":*" ] sources = [ "media_protocol_names.cc", "media_protocol_names.h", ] absl_deps = [ "//third_party/abseil-cpp/absl/strings" ] } rtc_source_set("peerconnection") { # TODO(bugs.webrtc.org/13661): Reduce visibility if possible visibility = [ "*" ] # Used by Chromium and others cflags = [] sources = [] deps = [ ":audio_rtp_receiver", ":audio_track", ":connection_context", ":data_channel_controller", ":data_channel_utils", ":dtmf_sender", ":ice_server_parsing", ":jitter_buffer_delay", ":jsep_ice_candidate", ":jsep_session_description", ":legacy_stats_collector", ":legacy_stats_collector_interface", ":local_audio_source", ":media_protocol_names", ":media_stream", ":media_stream_observer", ":peer_connection", ":peer_connection_factory", ":peer_connection_internal", ":peer_connection_message_handler", ":proxy", ":remote_audio_source", ":rtc_stats_collector", ":rtc_stats_traversal", ":rtp_parameters_conversion", ":rtp_receiver", ":rtp_sender", ":rtp_transceiver", ":rtp_transmission_manager", ":sctp_data_channel", ":sdp_offer_answer", ":sdp_serializer", ":sdp_state_provider", ":sdp_utils", ":session_description", ":simulcast_description", ":stream_collection", ":track_media_info_map", ":transceiver_list", ":usage_pattern", ":video_rtp_receiver", ":video_track", ":video_track_source", ":webrtc_sdp", ":webrtc_session_description_factory", "../api:array_view", "../api:async_dns_resolver", "../api:audio_options_api", "../api:call_api", "../api:callfactory_api", "../api:fec_controller_api", "../api:field_trials_view", "../api:frame_transformer_interface", "../api:ice_transport_factory", "../api:libjingle_logging_api", "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:network_state_predictor_api", "../api:packet_socket_factory", "../api:priority", "../api:rtc_error", "../api:rtc_event_log_output_file", "../api:rtc_stats_api", "../api:rtp_parameters", "../api:rtp_transceiver_direction", "../api:scoped_refptr", "../api:sequence_checker", "../api/adaptation:resource_adaptation_api", "../api/audio_codecs:audio_codecs_api", "../api/crypto:frame_decryptor_interface", "../api/crypto:options", "../api/neteq:neteq_api", "../api/rtc_event_log", "../api/task_queue", "../api/task_queue:pending_task_safety_flag", "../api/transport:bitrate_settings", "../api/transport:datagram_transport_interface", "../api/transport:enums", "../api/transport:field_trial_based_config", "../api/transport:network_control", "../api/transport:sctp_transport_factory_interface", "../api/units:data_rate", "../api/video:builtin_video_bitrate_allocator_factory", "../api/video:video_bitrate_allocator_factory", "../api/video:video_codec_constants", "../api/video:video_frame", "../api/video:video_rtp_headers", "../api/video_codecs:video_codecs_api", "../call:call_interfaces", "../call:rtp_interfaces", "../call:rtp_sender", "../common_video", "../logging:ice_log", "../media:rtc_data_sctp_transport_internal", "../media:rtc_media_base", "../media:rtc_media_config", "../modules/audio_processing:audio_processing_statistics", "../modules/rtp_rtcp:rtp_rtcp_format", "../p2p:rtc_p2p", "../rtc_base:callback_list", "../rtc_base:checks", "../rtc_base:ip_address", "../rtc_base:network_constants", "../rtc_base:rtc_operations_chain", "../rtc_base:safe_minmax", "../rtc_base:socket_address", "../rtc_base:threading", "../rtc_base:weak_ptr", "../rtc_base/experiments:field_trial_parser", "../rtc_base/network:sent_packet", "../rtc_base/synchronization:mutex", "../rtc_base/system:file_wrapper", "../rtc_base/system:no_unique_address", "../rtc_base/system:rtc_export", "../rtc_base/system:unused", "../rtc_base/third_party/base64", "../rtc_base/third_party/sigslot", "../stats", "../system_wrappers", "../system_wrappers:field_trial", "../system_wrappers:metrics", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_library("sctp_data_channel") { visibility = [ ":*" ] sources = [ "sctp_data_channel.cc", "sctp_data_channel.h", ] deps = [ ":data_channel_utils", ":proxy", ":sctp_utils", "../api:libjingle_peerconnection_api", "../api:priority", "../api:rtc_error", "../api:scoped_refptr", "../api/transport:datagram_transport_interface", "../media:media_channel", "../media:rtc_data_sctp_transport_internal", "../media:rtc_media_base", "../rtc_base:checks", "../rtc_base:copy_on_write_buffer", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:ssl", "../rtc_base:threading", "../rtc_base:threading", "../rtc_base/system:unused", "../rtc_base/third_party/sigslot:sigslot", ] absl_deps = [ "//third_party/abseil-cpp/absl/cleanup", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_library("data_channel_utils") { # TODO(bugs.webrtc.org/13661): Reduce visibility if possible visibility = [ "*" ] # Known to be used externally sources = [ "data_channel_utils.cc", "data_channel_utils.h", ] deps = [ "../api:libjingle_peerconnection_api", "../media:rtc_media_base", "../rtc_base:checks", ] } rtc_library("connection_context") { visibility = [ ":*" ] sources = [ "connection_context.cc", "connection_context.h", ] deps = [ "../api:callfactory_api", "../api:field_trials_view", "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:refcountedbase", "../api:scoped_refptr", "../api:sequence_checker", "../api/neteq:neteq_api", "../api/transport:field_trial_based_config", "../api/transport:sctp_transport_factory_interface", "../media:rtc_data_sctp_transport_factory", "../media:rtc_media_base", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base:macromagic", "../rtc_base:network", "../rtc_base:rtc_certificate_generator", "../rtc_base:socket_factory", "../rtc_base:socket_server", "../rtc_base:ssl", "../rtc_base:threading", "../rtc_base:timeutils", "../rtc_base/memory:always_valid_pointer", ] } rtc_source_set("data_channel_controller") { visibility = [ ":*" ] sources = [ "data_channel_controller.cc", "data_channel_controller.h", ] deps = [ ":data_channel_utils", ":peer_connection_internal", ":sctp_data_channel", ":sctp_utils", "../api:libjingle_peerconnection_api", "../api:rtc_error", "../api:scoped_refptr", "../api:sequence_checker", "../api/transport:datagram_transport_interface", "../media:media_channel", "../media:rtc_media_base", "../rtc_base:checks", "../rtc_base:copy_on_write_buffer", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:ssl", "../rtc_base:threading", "../rtc_base:weak_ptr", "../rtc_base/third_party/sigslot", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_source_set("peer_connection_sdp_methods") { visibility = [ ":*" ] sources = [ "peer_connection_sdp_methods.h" ] deps = [ ":jsep_transport_controller", ":peer_connection_message_handler", ":sctp_data_channel", ":usage_pattern", "../api:libjingle_peerconnection_api", "../call:call_interfaces", ] } rtc_source_set("peer_connection_internal") { visibility = [ ":*" ] sources = [ "peer_connection_internal.h" ] deps = [ ":jsep_transport_controller", ":peer_connection_message_handler", ":peer_connection_sdp_methods", ":rtp_transceiver", ":rtp_transmission_manager", ":sctp_data_channel", "../api:libjingle_peerconnection_api", "../call:call_interfaces", "../modules/audio_device", ] absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] } rtc_source_set("rtc_stats_collector") { visibility = [ ":*", "../api:*", ] sources = [ "rtc_stats_collector.cc", "rtc_stats_collector.h", ] deps = [ ":channel", ":channel_interface", ":data_channel_utils", ":peer_connection_internal", ":rtc_stats_traversal", ":rtp_receiver", ":rtp_receiver_proxy", ":rtp_sender", ":rtp_sender_proxy", ":rtp_transceiver", ":sctp_data_channel", ":track_media_info_map", ":transport_stats", ":webrtc_sdp", "../api:array_view", "../api:candidate", "../api:dtls_transport_interface", "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:rtc_stats_api", "../api:rtp_parameters", "../api:scoped_refptr", "../api:sequence_checker", "../api/task_queue:task_queue", "../api/units:time_delta", "../api/video:video_rtp_headers", "../api/video_codecs:scalability_mode", "../call:call_interfaces", "../common_video:common_video", "../media:media_channel", "../media:media_channel_impl", "../media:rtc_media_base", "../modules/audio_device", "../modules/audio_processing:audio_processing_statistics", "../modules/rtp_rtcp:rtp_rtcp_format", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base:event_tracer", "../rtc_base:ip_address", "../rtc_base:logging", "../rtc_base:network_constants", "../rtc_base:refcount", "../rtc_base:rtc_event", "../rtc_base:socket_address", "../rtc_base:ssl", "../rtc_base:stringutils", "../rtc_base:threading", "../rtc_base:timeutils", "../rtc_base/synchronization:mutex", "../rtc_base/third_party/sigslot:sigslot", ] absl_deps = [ "//third_party/abseil-cpp/absl/functional:bind_front", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_source_set("rtc_stats_traversal") { visibility = [ ":*" ] sources = [ "rtc_stats_traversal.cc", "rtc_stats_traversal.h", ] deps = [ "../api:rtc_stats_api", "../api:scoped_refptr", "../rtc_base:checks", ] } rtc_source_set("sdp_offer_answer") { visibility = [ ":*" ] sources = [ "sdp_offer_answer.cc", # TODO: Make separate target when not circular "sdp_offer_answer.h", # dependent on peerconnection.h ] deps = [ ":channel", ":channel_interface", ":connection_context", ":data_channel_controller", ":dtls_transport", ":jsep_transport_controller", ":legacy_stats_collector", ":media_session", ":media_stream", ":media_stream_observer", ":media_stream_proxy", ":peer_connection_internal", ":peer_connection_message_handler", ":rtp_media_utils", ":rtp_receiver", ":rtp_receiver_proxy", ":rtp_sender", ":rtp_sender_proxy", ":rtp_transceiver", ":rtp_transmission_manager", ":sdp_state_provider", ":session_description", ":simulcast_description", ":stream_collection", ":transceiver_list", ":usage_pattern", ":webrtc_session_description_factory", "../api:array_view", "../api:audio_options_api", "../api:candidate", "../api:dtls_transport_interface", "../api:field_trials_view", "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:rtc_error", "../api:rtp_parameters", "../api:rtp_sender_interface", "../api:rtp_transceiver_direction", "../api:scoped_refptr", "../api:sequence_checker", "../api/crypto:options", "../api/video:builtin_video_bitrate_allocator_factory", "../api/video:video_bitrate_allocator_factory", "../media:codec", "../media:media_channel", "../media:rid_description", "../media:rtc_media_base", "../media:stream_params", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base:event_tracer", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:rtc_operations_chain", "../rtc_base:ssl", "../rtc_base:stringutils", "../rtc_base:threading", "../rtc_base:unique_id_generator", "../rtc_base:weak_ptr", "../system_wrappers:metrics", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/memory:memory", "//third_party/abseil-cpp/absl/strings:strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_source_set("jsep_ice_candidate") { visibility = [ ":*" ] } rtc_source_set("jsep_session_description") { visibility = [ ":*" ] } rtc_source_set("local_audio_source") { visibility = [ ":*" ] sources = [ "local_audio_source.cc", "local_audio_source.h", ] deps = [ "../api:audio_options_api", "../api:media_stream_interface", "../api:scoped_refptr", ] } rtc_source_set("peer_connection") { visibility = [ ":*" ] sources = [ "peer_connection.cc", "peer_connection.h", ] deps = [ ":channel", ":channel_interface", ":connection_context", ":data_channel_controller", ":data_channel_utils", ":dtls_transport", ":ice_server_parsing", ":jsep_transport_controller", ":legacy_stats_collector", ":peer_connection_internal", ":peer_connection_message_handler", ":rtc_stats_collector", ":rtp_receiver", ":rtp_receiver_proxy", ":rtp_sender", ":rtp_sender_proxy", ":rtp_transceiver", ":rtp_transmission_manager", ":rtp_transport_internal", ":sctp_data_channel", ":sctp_transport", ":sdp_offer_answer", ":session_description", ":simulcast_description", ":transceiver_list", ":transport_stats", ":usage_pattern", ":webrtc_session_description_factory", "../api:async_dns_resolver", "../api:candidate", "../api:dtls_transport_interface", "../api:field_trials_view", "../api:ice_transport_interface", "../api:libjingle_logging_api", "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:rtc_error", "../api:rtc_stats_api", "../api:rtp_parameters", "../api:rtp_sender_interface", "../api:rtp_transceiver_direction", "../api:scoped_refptr", "../api:sequence_checker", "../api:turn_customizer", "../api/adaptation:resource_adaptation_api", "../api/crypto:options", "../api/rtc_event_log", "../api/task_queue:pending_task_safety_flag", "../api/transport:bitrate_settings", "../api/transport:datagram_transport_interface", "../api/transport:enums", "../api/video:video_codec_constants", "../call:call_interfaces", "../media:media_channel", "../media:rid_description", "../media:rtc_media_base", "../media:rtc_media_config", "../media:stream_params", "../modules/rtp_rtcp:rtp_rtcp_format", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base:copy_on_write_buffer", "../rtc_base:event_tracer", "../rtc_base:ip_address", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:net_helper", "../rtc_base:network", "../rtc_base:network_constants", "../rtc_base:socket_address", "../rtc_base:ssl", "../rtc_base:stringutils", "../rtc_base:threading", "../rtc_base:unique_id_generator", "../rtc_base:weak_ptr", "../rtc_base/third_party/sigslot", "../system_wrappers:metrics", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/strings:strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_source_set("sdp_serializer") { visibility = [ ":*" ] sources = [ "sdp_serializer.cc", "sdp_serializer.h", ] deps = [ ":session_description", ":simulcast_description", "../api:rtc_error", "../media:rid_description", "../media:rtc_media_base", "../modules/rtp_rtcp:rtp_rtcp_format", "../rtc_base:checks", "../rtc_base:stringutils", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/strings:strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_source_set("sdp_utils") { sources = [ "sdp_utils.cc", "sdp_utils.h", ] deps = [ ":session_description", "../api:libjingle_peerconnection_api", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base/system:rtc_export", ] } rtc_source_set("legacy_stats_collector") { visibility = [ ":*" ] sources = [ "legacy_stats_collector.cc", "legacy_stats_collector.h", ] deps = [ ":channel", ":channel_interface", ":data_channel_utils", ":legacy_stats_collector_interface", ":peer_connection_internal", ":rtp_receiver", ":rtp_receiver_proxy", ":rtp_sender_proxy", ":rtp_transceiver", ":transport_stats", "../api:candidate", "../api:field_trials_view", "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:rtp_parameters", "../api:rtp_sender_interface", "../api:scoped_refptr", "../api:sequence_checker", "../api/audio_codecs:audio_codecs_api", "../api/video:video_rtp_headers", "../call:call_interfaces", "../media:media_channel", "../media:media_channel_impl", "../media:rtc_media_base", "../modules/audio_processing:audio_processing_statistics", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base:event_tracer", "../rtc_base:ip_address", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:network_constants", "../rtc_base:socket_address", "../rtc_base:ssl", "../rtc_base:stringutils", "../rtc_base:threading", "../rtc_base:timeutils", ] absl_deps = [ "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_source_set("stream_collection") { visibility = [ ":*" ] sources = [ "stream_collection.h" ] deps = [ "../api:libjingle_peerconnection_api" ] } rtc_source_set("track_media_info_map") { visibility = [ ":*" ] sources = [ "track_media_info_map.cc", "track_media_info_map.h", ] deps = [ ":rtp_receiver", ":rtp_sender", "../api:array_view", "../api:media_stream_interface", "../api:rtp_parameters", "../api:scoped_refptr", "../media:media_channel", "../media:rtc_media_base", "../media:stream_params", "../rtc_base:checks", "../rtc_base:refcount", "../rtc_base:threading", ] absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] } rtc_source_set("webrtc_sdp") { # TODO(bugs.webrtc.org/13661): Reduce visibility if possible visibility = [ "*" ] # Used by Chrome and more sources = [ "jsep_ice_candidate.cc", "jsep_session_description.cc", "webrtc_sdp.cc", "webrtc_sdp.h", ] deps = [ ":media_protocol_names", ":media_session", ":sdp_serializer", ":session_description", ":simulcast_description", "../api:candidate", "../api:libjingle_peerconnection_api", "../api:rtc_error", "../api:rtp_parameters", "../api:rtp_transceiver_direction", "../media:codec", "../media:media_constants", "../media:rid_description", "../media:rtc_data_sctp_transport_internal", "../media:rtc_media_base", "../media:rtp_utils", "../media:stream_params", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base:ip_address", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:net_helper", "../rtc_base:network_constants", "../rtc_base:socket_address", "../rtc_base:ssl", "../rtc_base:stringutils", "../rtc_base/system:rtc_export", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_source_set("webrtc_session_description_factory") { visibility = [ ":*" ] sources = [ "webrtc_session_description_factory.cc", "webrtc_session_description_factory.h", ] deps = [ ":connection_context", ":media_session", ":sdp_state_provider", ":session_description", "../api:libjingle_peerconnection_api", "../api:rtc_error", "../api:scoped_refptr", "../api:sequence_checker", "../api/task_queue", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base:logging", "../rtc_base:rtc_certificate_generator", "../rtc_base:ssl", "../rtc_base:stringutils", "../rtc_base:unique_id_generator", "../rtc_base:weak_ptr", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/functional:any_invocable", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_library("ice_server_parsing") { # TODO(bugs.webrtc.org/13661): Reduce visibility if possible visibility = [ "*" ] # Known to be used externally sources = [ "ice_server_parsing.cc", "ice_server_parsing.h", ] deps = [ "../api:libjingle_peerconnection_api", "../api:rtc_error", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base:ip_address", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:socket_address", "../rtc_base:stringutils", "../rtc_base/system:rtc_export", ] } rtc_library("media_stream_observer") { sources = [ "media_stream_observer.cc", "media_stream_observer.h", ] deps = [ "../api:media_stream_interface", "../api:scoped_refptr", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container" ] } rtc_source_set("peer_connection_factory") { # TODO(bugs.webrtc.org/13661): Reduce visibility if possible visibility = [ "*" ] # Known to be used externally sources = [ "peer_connection_factory.cc", "peer_connection_factory.h", ] deps = [ ":local_audio_source", ":media_stream_proxy", ":media_stream_track_proxy", ":peer_connection", ":peer_connection_factory_proxy", ":peer_connection_proxy", "../api:audio_options_api", "../api:callfactory_api", "../api:fec_controller_api", "../api:field_trials_view", "../api:ice_transport_interface", "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:network_state_predictor_api", "../api:packet_socket_factory", "../api:rtc_error", "../api:rtp_parameters", "../api:scoped_refptr", "../api:sequence_checker", "../api/metronome", "../api/neteq:neteq_api", "../api/rtc_event_log:rtc_event_log", "../api/task_queue:task_queue", "../api/transport:bitrate_settings", "../api/transport:network_control", "../api/transport:sctp_transport_factory_interface", "../api/units:data_rate", "../call:call_interfaces", "../call:rtp_interfaces", "../call:rtp_sender", "../media:rtc_media_base", "../p2p:rtc_p2p", "../pc:audio_track", "../pc:connection_context", "../pc:media_stream", "../pc:rtp_parameters_conversion", "../pc:session_description", "../pc:video_track", "../rtc_base:checks", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:rtc_certificate_generator", "../rtc_base:safe_conversions", "../rtc_base:threading", "../rtc_base/experiments:field_trial_parser", "../rtc_base/system:file_wrapper", ] absl_deps = [ "//third_party/abseil-cpp/absl/strings:strings" ] } rtc_library("peer_connection_message_handler") { visibility = [ ":*" ] sources = [ "peer_connection_message_handler.cc", "peer_connection_message_handler.h", ] deps = [ ":legacy_stats_collector_interface", "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:rtc_error", "../api:scoped_refptr", "../api:sequence_checker", "../api/task_queue", "../api/task_queue:pending_task_safety_flag", "../rtc_base:checks", ] } rtc_library("usage_pattern") { visibility = [ ":*" ] sources = [ "usage_pattern.cc", "usage_pattern.h", ] deps = [ "../api:libjingle_peerconnection_api", "../rtc_base:logging", "../system_wrappers:metrics", ] } rtc_library("rtp_transceiver") { visibility = [ ":*" ] sources = [ "rtp_transceiver.cc", "rtp_transceiver.h", ] deps = [ ":channel", ":channel_interface", ":connection_context", ":peer_connection_sdp_methods", ":proxy", ":rtp_media_utils", ":rtp_parameters_conversion", ":rtp_receiver", ":rtp_receiver_proxy", ":rtp_sender", ":rtp_sender_proxy", ":rtp_transport_internal", ":session_description", "../api:array_view", "../api:audio_options_api", "../api:libjingle_peerconnection_api", "../api:rtc_error", "../api:rtp_parameters", "../api:rtp_sender_interface", "../api:rtp_transceiver_direction", "../api:scoped_refptr", "../api:sequence_checker", "../api/task_queue", "../api/task_queue:pending_task_safety_flag", "../api/video:video_bitrate_allocator_factory", "../media:codec", "../media:media_channel", "../media:media_constants", "../media:rtc_media_base", "../rtc_base:checks", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:threading", "../rtc_base/third_party/sigslot", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/memory", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_library("rtp_transmission_manager") { visibility = [ ":*" ] sources = [ "rtp_transmission_manager.cc", "rtp_transmission_manager.h", ] deps = [ ":audio_rtp_receiver", ":channel", ":channel_interface", ":legacy_stats_collector_interface", ":rtp_receiver", ":rtp_receiver_proxy", ":rtp_sender", ":rtp_sender_proxy", ":rtp_transceiver", ":transceiver_list", ":usage_pattern", ":video_rtp_receiver", "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:rtc_error", "../api:rtp_parameters", "../api:rtp_sender_interface", "../api:rtp_transceiver_direction", "../api:scoped_refptr", "../api:sequence_checker", "../media:media_channel", "../media:rtc_media_base", "../rtc_base:checks", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:ssl", "../rtc_base:threading", "../rtc_base:weak_ptr", "../rtc_base/third_party/sigslot", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_library("transceiver_list") { visibility = [ ":*" ] sources = [ "transceiver_list.cc", "transceiver_list.h", ] deps = [ ":rtp_transceiver", "../api:libjingle_peerconnection_api", "../api:rtc_error", "../api:rtp_parameters", "../api:rtp_sender_interface", "../api:scoped_refptr", "../api:sequence_checker", "../rtc_base:checks", "../rtc_base:macromagic", "../rtc_base/system:no_unique_address", ] absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] } rtc_library("rtp_receiver") { visibility = [ ":*" ] sources = [ "rtp_receiver.cc", "rtp_receiver.h", ] deps = [ ":media_stream", ":media_stream_proxy", ":video_track_source", "../api:dtls_transport_interface", "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:rtp_parameters", "../api:scoped_refptr", "../api/crypto:frame_decryptor_interface", "../api/video:video_frame", "../media:media_channel", "../media:rtc_media_base", "../rtc_base:checks", "../rtc_base:logging", "../rtc_base:threading", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_library("audio_rtp_receiver") { visibility = [ ":*" ] sources = [ "audio_rtp_receiver.cc", "audio_rtp_receiver.h", ] deps = [ ":audio_track", ":jitter_buffer_delay", ":media_stream", ":media_stream_track_proxy", ":remote_audio_source", ":rtp_receiver", "../api:dtls_transport_interface", "../api:frame_transformer_interface", "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:rtp_parameters", "../api:scoped_refptr", "../api:sequence_checker", "../api/crypto:frame_decryptor_interface", "../api/task_queue:pending_task_safety_flag", "../api/transport/rtp:rtp_source", "../media:media_channel", "../media:rtc_media_base", "../rtc_base:checks", "../rtc_base:macromagic", "../rtc_base:threading", "../rtc_base/system:no_unique_address", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_library("video_rtp_receiver") { visibility = [ ":*" ] sources = [ "video_rtp_receiver.cc", "video_rtp_receiver.h", ] deps = [ ":jitter_buffer_delay", ":media_stream", ":media_stream_track_proxy", ":rtp_receiver", ":video_rtp_track_source", ":video_track", "../api:dtls_transport_interface", "../api:frame_transformer_interface", "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:rtp_parameters", "../api:scoped_refptr", "../api:sequence_checker", "../api/crypto:frame_decryptor_interface", "../api/transport/rtp:rtp_source", "../api/video:recordable_encoded_frame", "../api/video:video_frame", "../media:media_channel", "../media:rtc_media_base", "../rtc_base:checks", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:threading", "../rtc_base/system:no_unique_address", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_library("video_rtp_track_source") { visibility = [ ":*" ] sources = [ "video_rtp_track_source.cc", "video_rtp_track_source.h", ] deps = [ ":video_track_source", "../api:sequence_checker", "../api/video:recordable_encoded_frame", "../api/video:video_frame", "../media:rtc_media_base", "../rtc_base:checks", "../rtc_base:macromagic", "../rtc_base/synchronization:mutex", "../rtc_base/system:no_unique_address", ] } rtc_library("audio_track") { visibility = [ ":*" ] sources = [ "audio_track.cc", "audio_track.h", ] deps = [ "../api:media_stream_interface", "../api:scoped_refptr", "../api:sequence_checker", "../rtc_base:checks", "../rtc_base/system:no_unique_address", ] } rtc_library("video_track") { visibility = [ ":*" ] sources = [ "video_track.cc", "video_track.h", ] deps = [ ":video_track_source_proxy", "../api:media_stream_interface", "../api:scoped_refptr", "../api:sequence_checker", "../api/video:video_frame", "../media:rtc_media_base", "../rtc_base:checks", "../rtc_base:macromagic", "../rtc_base:threading", "../rtc_base/system:no_unique_address", ] absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] } rtc_source_set("sdp_state_provider") { visibility = [ ":*" ] sources = [ "sdp_state_provider.h" ] deps = [ "../api:libjingle_peerconnection_api" ] } rtc_library("jitter_buffer_delay") { visibility = [ ":*" ] sources = [ "jitter_buffer_delay.cc", "jitter_buffer_delay.h", ] deps = [ "../api:sequence_checker", "../rtc_base:checks", "../rtc_base:macromagic", "../rtc_base:safe_conversions", "../rtc_base:safe_minmax", "../rtc_base/system:no_unique_address", ] absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] } rtc_library("remote_audio_source") { visibility = [ ":*" ] sources = [ "remote_audio_source.cc", "remote_audio_source.h", ] deps = [ ":channel", "../api:call_api", "../api:media_stream_interface", "../api:scoped_refptr", "../api:sequence_checker", "../api/task_queue", "../media:media_channel", "../media:rtc_media_base", "../rtc_base:checks", "../rtc_base:event_tracer", "../rtc_base:logging", "../rtc_base:safe_conversions", "../rtc_base:stringutils", "../rtc_base/synchronization:mutex", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_library("rtp_sender") { visibility = [ ":*" ] sources = [ "rtp_sender.cc", "rtp_sender.h", ] deps = [ ":dtmf_sender", ":legacy_stats_collector_interface", "../api:audio_options_api", "../api:dtls_transport_interface", "../api:dtmf_sender_interface", "../api:frame_transformer_interface", "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:priority", "../api:rtc_error", "../api:rtp_parameters", "../api:rtp_sender_interface", "../api:scoped_refptr", "../api:sequence_checker", "../api/crypto:frame_encryptor_interface", "../media:media_channel", "../media:rtc_media_base", "../rtc_base:checks", "../rtc_base:event_tracer", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:ssl", "../rtc_base:threading", "../rtc_base/synchronization:mutex", "../rtc_base/third_party/sigslot", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_library("rtp_parameters_conversion") { visibility = [ ":*" ] sources = [ "rtp_parameters_conversion.cc", "rtp_parameters_conversion.h", ] deps = [ ":session_description", "../api:array_view", "../api:libjingle_peerconnection_api", "../api:rtc_error", "../api:rtp_parameters", "../media:codec", "../media:media_constants", "../media:rtc_media_base", "../media:rtp_utils", "../media:stream_params", "../rtc_base:checks", "../rtc_base:logging", "../rtc_base:stringutils", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_library("dtmf_sender") { visibility = [ ":*" ] sources = [ "dtmf_sender.cc", "dtmf_sender.h", ] deps = [ ":proxy", "../api:dtmf_sender_interface", "../api:libjingle_peerconnection_api", "../api:scoped_refptr", "../api:sequence_checker", "../api/task_queue", "../api/task_queue:pending_task_safety_flag", "../api/units:time_delta", "../rtc_base:checks", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:refcount", "../rtc_base/third_party/sigslot", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_library("media_stream") { visibility = [ ":*" ] sources = [ "media_stream.cc", "media_stream.h", ] deps = [ "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:scoped_refptr", "../rtc_base:checks", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_library("video_track_source") { sources = [ "video_track_source.cc", "video_track_source.h", ] deps = [ "../api:media_stream_interface", "../api:sequence_checker", "../api/video:recordable_encoded_frame", "../api/video:video_frame", "../media:media_channel", "../media:rtc_media_base", "../rtc_base:checks", "../rtc_base:macromagic", "../rtc_base/system:no_unique_address", "../rtc_base/system:rtc_export", ] absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] } rtc_source_set("legacy_stats_collector_interface") { visibility = [ ":*" ] sources = [ "legacy_stats_collector_interface.h" ] deps = [ "../api:libjingle_peerconnection_api", "../api:media_stream_interface", ] } rtc_source_set("libjingle_peerconnection") { # TODO(bugs.webrtc.org/13661): Reduce visibility if possible visibility = [ "*" ] # Used by Chrome and others deps = [ ":peerconnection", "../api:libjingle_peerconnection_api", ] } if (rtc_include_tests && !build_with_chromium) { rtc_test("rtc_pc_unittests") { testonly = true sources = [ "audio_rtp_receiver_unittest.cc", "channel_unittest.cc", "dtls_srtp_transport_unittest.cc", "dtls_transport_unittest.cc", "ice_transport_unittest.cc", "jsep_transport_controller_unittest.cc", "jsep_transport_unittest.cc", "media_session_unittest.cc", "rtcp_mux_filter_unittest.cc", "rtp_transport_unittest.cc", "sctp_transport_unittest.cc", "session_description_unittest.cc", "srtp_filter_unittest.cc", "srtp_session_unittest.cc", "srtp_transport_unittest.cc", "test/rtp_transport_test_util.h", "test/srtp_test_util.h", "used_ids_unittest.cc", "video_rtp_receiver_unittest.cc", ] include_dirs = [ "//third_party/libsrtp/srtp" ] if (is_win) { libs = [ "strmiids.lib" ] } deps = [ ":audio_rtp_receiver", ":channel", ":dtls_srtp_transport", ":dtls_transport", ":ice_transport", ":jsep_transport", ":jsep_transport_controller", ":libjingle_peerconnection", ":media_protocol_names", ":media_session", ":pc_test_utils", ":peerconnection", ":rtc_pc", ":rtcp_mux_filter", ":rtp_media_utils", ":rtp_transport", ":rtp_transport_internal", ":sctp_transport", ":session_description", ":srtp_filter", ":srtp_session", ":srtp_transport", ":used_ids", ":video_rtp_receiver", "../api:array_view", "../api:audio_options_api", "../api:candidate", "../api:dtls_transport_interface", "../api:ice_transport_factory", "../api:libjingle_peerconnection_api", "../api:make_ref_counted", "../api:make_ref_counted", "../api:rtc_error", "../api:rtp_headers", "../api:rtp_parameters", "../api:scoped_refptr", "../api:sequence_checker", "../api/task_queue:pending_task_safety_flag", "../api/task_queue:task_queue", "../api/transport:datagram_transport_interface", "../api/transport:enums", "../api/video:builtin_video_bitrate_allocator_factory", "../api/video:recordable_encoded_frame", "../api/video/test:mock_recordable_encoded_frame", "../call:rtp_interfaces", "../call:rtp_receiver", "../media:codec", "../media:media_channel", "../media:media_constants", "../media:rid_description", "../media:rtc_data_sctp_transport_internal", "../media:rtc_media_base", "../media:rtc_media_tests_utils", "../modules/rtp_rtcp:rtp_rtcp_format", "../p2p:fake_ice_transport", "../p2p:fake_port_allocator", "../p2p:p2p_test_utils", "../p2p:rtc_p2p", "../rtc_base:async_packet_socket", "../rtc_base:buffer", "../rtc_base:byte_order", "../rtc_base:checks", "../rtc_base:copy_on_write_buffer", "../rtc_base:gunit_helpers", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:net_helper", "../rtc_base:rtc_base_tests_utils", "../rtc_base:socket_address", "../rtc_base:ssl", "../rtc_base:stringutils", "../rtc_base:task_queue_for_test", "../rtc_base:threading", "../rtc_base:unique_id_generator", "../rtc_base/containers:flat_set", "../rtc_base/third_party/sigslot", "../system_wrappers:metrics", "../test:explicit_key_value_config", "../test:run_loop", "../test:scoped_key_value_config", "../test:test_main", "../test:test_support", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/functional:any_invocable", "//third_party/abseil-cpp/absl/memory", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] if (rtc_build_libsrtp) { deps += [ "//third_party/libsrtp" ] } if (is_android) { use_default_launcher = false deps += [ "//build/android/gtest_apk:native_test_instrumentation_test_runner_java", "//testing/android/native_test:native_test_java", "//testing/android/native_test:native_test_support", ] } } rtc_library("peerconnection_perf_tests") { testonly = true sources = [ "peer_connection_rampup_tests.cc" ] deps = [ ":pc_test_utils", ":peer_connection", ":peerconnection", ":peerconnection_wrapper", "../api:audio_options_api", "../api:create_peerconnection_factory", "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:rtc_error", "../api:rtc_stats_api", "../api:scoped_refptr", "../api/audio:audio_mixer_api", "../api/audio_codecs:audio_codecs_api", "../api/audio_codecs:builtin_audio_decoder_factory", "../api/audio_codecs:builtin_audio_encoder_factory", "../api/test/metrics:global_metrics_logger_and_exporter", "../api/test/metrics:metric", "../api/video_codecs:builtin_video_decoder_factory", "../api/video_codecs:builtin_video_encoder_factory", "../api/video_codecs:video_codecs_api", "../media:rtc_media_tests_utils", "../modules/audio_device:audio_device_api", "../modules/audio_processing:api", "../p2p:p2p_test_utils", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base:gunit_helpers", "../rtc_base:rtc_base_tests_utils", "../rtc_base:socket_address", "../rtc_base:socket_factory", "../rtc_base:ssl", "../rtc_base:task_queue_for_test", "../rtc_base:threading", "../system_wrappers", "../test:test_support", ] absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] } rtc_library("peerconnection_wrapper") { testonly = true sources = [ "peer_connection_wrapper.cc", "peer_connection_wrapper.h", ] deps = [ ":pc_test_utils", ":peerconnection", ":sdp_utils", "../api:function_view", "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:rtc_error", "../api:rtc_stats_api", "../api:rtp_parameters", "../api:rtp_sender_interface", "../api:scoped_refptr", "../rtc_base:checks", "../rtc_base:gunit_helpers", "../rtc_base:logging", "../test:test_support", ] } rtc_test("slow_peer_connection_unittests") { testonly = true sources = [ "slow_peer_connection_integration_test.cc" ] deps = [ ":integration_test_helpers", ":pc_test_utils", "../api:dtmf_sender_interface", "../api:libjingle_peerconnection_api", "../api:scoped_refptr", "../api/units:time_delta", "../p2p:p2p_server_utils", "../p2p:p2p_test_utils", "../p2p:rtc_p2p", "../rtc_base:gunit_helpers", "../rtc_base:logging", "../rtc_base:rtc_base_tests_utils", "../rtc_base:socket_address", "../rtc_base:ssl", "../test:test_main", "../test:test_support", "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_test("peerconnection_unittests") { testonly = true sources = [ "data_channel_integrationtest.cc", "data_channel_unittest.cc", "dtmf_sender_unittest.cc", "ice_server_parsing_unittest.cc", "jitter_buffer_delay_unittest.cc", "jsep_session_description_unittest.cc", "legacy_stats_collector_unittest.cc", "local_audio_source_unittest.cc", "media_stream_unittest.cc", "peer_connection_adaptation_integrationtest.cc", "peer_connection_bundle_unittest.cc", "peer_connection_crypto_unittest.cc", "peer_connection_data_channel_unittest.cc", "peer_connection_end_to_end_unittest.cc", "peer_connection_factory_unittest.cc", "peer_connection_field_trial_tests.cc", "peer_connection_header_extension_unittest.cc", "peer_connection_histogram_unittest.cc", "peer_connection_ice_unittest.cc", "peer_connection_integrationtest.cc", "peer_connection_interface_unittest.cc", "peer_connection_jsep_unittest.cc", "peer_connection_media_unittest.cc", "peer_connection_rtp_unittest.cc", "peer_connection_signaling_unittest.cc", "peer_connection_simulcast_unittest.cc", "peer_connection_svc_integrationtest.cc", "peer_connection_wrapper.cc", "peer_connection_wrapper.h", "proxy_unittest.cc", "rtc_stats_collector_unittest.cc", "rtc_stats_integrationtest.cc", "rtc_stats_traversal_unittest.cc", "rtp_media_utils_unittest.cc", "rtp_parameters_conversion_unittest.cc", "rtp_sender_receiver_unittest.cc", "rtp_transceiver_unittest.cc", "sctp_utils_unittest.cc", "sdp_offer_answer_unittest.cc", "sdp_serializer_unittest.cc", "test/fake_audio_capture_module_unittest.cc", "test/test_sdp_strings.h", "track_media_info_map_unittest.cc", "video_rtp_track_source_unittest.cc", "video_track_unittest.cc", "webrtc_sdp_unittest.cc", ] deps = [ ":audio_rtp_receiver", ":audio_track", ":channel", ":channel_interface", ":data_channel_controller_unittest", ":dtls_srtp_transport", ":dtls_transport", ":dtmf_sender", ":ice_server_parsing", ":integration_test_helpers", ":jitter_buffer_delay", ":legacy_stats_collector", ":local_audio_source", ":media_protocol_names", ":media_session", ":media_stream", ":peer_connection", ":peer_connection_factory", ":peer_connection_proxy", ":proxy", ":rtc_stats_collector", ":rtc_stats_traversal", ":rtp_media_utils", ":rtp_parameters_conversion", ":rtp_receiver", ":rtp_sender", ":rtp_sender_proxy", ":rtp_transceiver", ":rtp_transport_internal", ":sctp_data_channel", ":sctp_transport", ":sctp_utils", ":sdp_serializer", ":sdp_utils", ":session_description", ":simulcast_description", ":stream_collection", ":track_media_info_map", ":transport_stats", ":usage_pattern", ":video_rtp_receiver", ":video_rtp_track_source", ":video_track", ":video_track_source", ":webrtc_sdp", "../api:array_view", "../api:audio_options_api", "../api:candidate", "../api:create_peerconnection_factory", "../api:dtls_transport_interface", "../api:dtmf_sender_interface", "../api:fake_frame_decryptor", "../api:fake_frame_encryptor", "../api:field_trials_view", "../api:function_view", "../api:ice_transport_interface", "../api:libjingle_logging_api", "../api:libjingle_peerconnection_api", "../api:make_ref_counted", "../api:media_stream_interface", "../api:mock_encoder_selector", "../api:mock_packet_socket_factory", "../api:mock_video_track", "../api:packet_socket_factory", "../api:priority", "../api:rtc_error", "../api:rtp_sender_interface", "../api:rtp_transceiver_direction", "../api:scoped_refptr", "../api/adaptation:resource_adaptation_api", "../api/audio:audio_mixer_api", "../api/crypto:frame_decryptor_interface", "../api/crypto:frame_encryptor_interface", "../api/crypto:options", "../api/rtc_event_log", "../api/rtc_event_log:rtc_event_log_factory", "../api/task_queue", "../api/task_queue:default_task_queue_factory", "../api/transport:datagram_transport_interface", "../api/transport:field_trial_based_config", "../api/transport:sctp_transport_factory_interface", "../api/transport/rtp:rtp_source", "../api/units:time_delta", "../api/units:timestamp", "../api/video:builtin_video_bitrate_allocator_factory", "../api/video:encoded_image", "../api/video:recordable_encoded_frame", "../api/video:video_bitrate_allocator_factory", "../api/video:video_codec_constants", "../api/video:video_frame", "../api/video:video_rtp_headers", "../api/video_codecs:scalability_mode", "../call/adaptation:resource_adaptation_test_utilities", "../common_video", "../logging:fake_rtc_event_log", "../media:codec", "../media:delayable", "../media:media_channel", "../media:media_constants", "../media:rid_description", "../media:rtc_data_sctp_transport_internal", "../media:rtc_media_config", "../media:rtc_media_engine_defaults", "../media:stream_params", "../modules/audio_device:audio_device_api", "../modules/audio_processing:audio_processing_statistics", "../modules/rtp_rtcp:rtp_rtcp_format", "../p2p:fake_port_allocator", "../p2p:p2p_server_utils", "../rtc_base:byte_buffer", "../rtc_base:checks", "../rtc_base:copy_on_write_buffer", "../rtc_base:event_tracer", "../rtc_base:gunit_helpers", "../rtc_base:ip_address", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:mdns_responder_interface", "../rtc_base:net_helper", "../rtc_base:network", "../rtc_base:network_constants", "../rtc_base:refcount", "../rtc_base:rtc_base_tests_utils", "../rtc_base:rtc_certificate_generator", "../rtc_base:rtc_json", "../rtc_base:socket_address", "../rtc_base:ssl", "../rtc_base:stringutils", "../rtc_base:task_queue_for_test", "../rtc_base:threading", "../rtc_base:timeutils", "../rtc_base:unique_id_generator", "../rtc_base/synchronization:mutex", "../rtc_base/third_party/base64", "../rtc_base/third_party/sigslot", "../system_wrappers:metrics", "../test:run_loop", "../test:scoped_key_value_config", "../test/pc/sctp:fake_sctp_transport", "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/memory", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] if (is_android) { use_default_launcher = false deps += [ ":android_black_magic", # We need to depend on this one directly, or classloads will fail for # the voice engine BuildInfo, for instance. "//sdk/android:libjingle_peerconnection_java", "//sdk/android:native_test_jni_onload", ] shard_timeout = 900 } deps += [ ":libjingle_peerconnection", ":pc_test_utils", ":rtc_pc", "../api:callfactory_api", "../api:rtc_event_log_output_file", "../api:rtc_stats_api", "../api:rtp_parameters", "../api/audio_codecs:audio_codecs_api", "../api/audio_codecs:builtin_audio_decoder_factory", "../api/audio_codecs:builtin_audio_encoder_factory", "../api/audio_codecs:opus_audio_decoder_factory", "../api/audio_codecs:opus_audio_encoder_factory", "../api/audio_codecs/L16:audio_decoder_L16", "../api/audio_codecs/L16:audio_encoder_L16", "../api/video_codecs:builtin_video_decoder_factory", "../api/video_codecs:builtin_video_encoder_factory", "../api/video_codecs:video_codecs_api", "../call:call_interfaces", "../media:rtc_audio_video", "../media:rtc_media_base", "../media:rtc_media_tests_utils", "../modules/audio_processing", "../modules/audio_processing:api", "../p2p:p2p_test_utils", "../p2p:rtc_p2p", "../rtc_base:rtc_task_queue", "../rtc_base:safe_conversions", "../test:audio_codec_mocks", "../test:test_main", "../test:test_support", ] } rtc_library("data_channel_controller_unittest") { testonly = true sources = [ "data_channel_controller_unittest.cc" ] deps = [ ":data_channel_controller", ":pc_test_utils", ":peer_connection_internal", ":sctp_data_channel", "../test:test_support", ] } if (is_android) { rtc_library("android_black_magic") { # The android code uses hacky includes to ssl code. Having this in a # separate target enables us to keep the peerconnection unit tests clean. testonly = true sources = [ "test/android_test_initializer.cc", "test/android_test_initializer.h", ] deps = [ "../rtc_base:ssl", "../sdk/android:internal_jni", "../sdk/android:libjingle_peerconnection_jni", "//modules/utility:utility", "//rtc_base:checks", "//testing/android/native_test:native_test_support", ] } } rtc_library("integration_test_helpers") { testonly = true sources = [ "test/integration_test_helpers.cc", "test/integration_test_helpers.h", ] deps = [ ":audio_rtp_receiver", ":audio_track", ":dtmf_sender", ":jitter_buffer_delay", ":local_audio_source", ":media_session", ":media_stream", ":pc_test_utils", ":peer_connection", ":peer_connection_factory", ":peer_connection_proxy", ":peerconnection", ":remote_audio_source", ":rtp_media_utils", ":rtp_parameters_conversion", ":rtp_receiver", ":rtp_sender", ":rtp_transceiver", ":session_description", ":usage_pattern", ":video_rtp_receiver", ":video_rtp_track_source", ":video_track", ":video_track_source", "../api:array_view", "../api:audio_options_api", "../api:callfactory_api", "../api:candidate", "../api:create_peerconnection_factory", "../api:fake_frame_decryptor", "../api:fake_frame_encryptor", "../api:field_trials_view", "../api:function_view", "../api:ice_transport_interface", "../api:libjingle_logging_api", "../api:libjingle_peerconnection_api", "../api:media_stream_interface", "../api:mock_rtp", "../api:packet_socket_factory", "../api:rtc_error", "../api:rtc_stats_api", "../api:rtp_parameters", "../api:rtp_sender_interface", "../api:rtp_transceiver_direction", "../api:scoped_refptr", "../api/audio:audio_mixer_api", "../api/crypto:frame_decryptor_interface", "../api/crypto:frame_encryptor_interface", "../api/crypto:options", "../api/rtc_event_log", "../api/rtc_event_log:rtc_event_log_factory", "../api/task_queue", "../api/task_queue:default_task_queue_factory", "../api/task_queue:pending_task_safety_flag", "../api/transport:field_trial_based_config", "../api/transport/rtp:rtp_source", "../api/units:time_delta", "../api/video:builtin_video_bitrate_allocator_factory", "../api/video:video_rtp_headers", "../api/video_codecs:video_codecs_api", "../call:call_interfaces", "../call/adaptation:resource_adaptation_test_utilities", "../logging:fake_rtc_event_log", "../media:rtc_audio_video", "../media:rtc_media_base", "../media:rtc_media_config", "../media:rtc_media_engine_defaults", "../media:rtc_media_tests_utils", "../media:stream_params", "../modules/audio_device:audio_device_api", "../modules/audio_processing:api", "../modules/audio_processing:audio_processing_statistics", "../modules/audio_processing:audioproc_test_utils", "../modules/rtp_rtcp:rtp_rtcp_format", "../p2p:fake_ice_transport", "../p2p:fake_port_allocator", "../p2p:p2p_server_utils", "../p2p:p2p_test_utils", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base:gunit_helpers", "../rtc_base:ip_address", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:mdns_responder_interface", "../rtc_base:rtc_base_tests_utils", "../rtc_base:rtc_certificate_generator", "../rtc_base:rtc_event", "../rtc_base:rtc_json", "../rtc_base:safe_conversions", "../rtc_base:socket_address", "../rtc_base:ssl", "../rtc_base:task_queue_for_test", "../rtc_base:threading", "../rtc_base:timeutils", "../rtc_base/synchronization:mutex", "../rtc_base/task_utils:repeating_task", "../rtc_base/third_party/base64", "../rtc_base/third_party/sigslot", "../system_wrappers:metrics", "../test:explicit_key_value_config", "../test:fileutils", "../test:rtp_test_utils", "../test:scoped_key_value_config", "../test:test_support", "../test/pc/sctp:fake_sctp_transport", ] absl_deps = [ "//third_party/abseil-cpp/absl/algorithm:container", "//third_party/abseil-cpp/absl/memory", "//third_party/abseil-cpp/absl/strings", "//third_party/abseil-cpp/absl/types:optional", ] } rtc_library("pc_test_utils") { testonly = true sources = [ "test/fake_audio_capture_module.cc", "test/fake_audio_capture_module.h", "test/fake_data_channel_controller.h", "test/fake_peer_connection_base.h", "test/fake_peer_connection_for_stats.h", "test/fake_periodic_video_source.h", "test/fake_periodic_video_track_source.h", "test/fake_rtc_certificate_generator.h", "test/fake_video_track_renderer.h", "test/fake_video_track_source.h", "test/frame_generator_capturer_video_track_source.h", "test/mock_channel_interface.h", "test/mock_data_channel.h", "test/mock_peer_connection_internal.h", "test/mock_peer_connection_observers.h", "test/mock_rtp_receiver_internal.h", "test/mock_rtp_sender_internal.h", "test/mock_voice_media_channel.h", "test/peer_connection_test_wrapper.cc", "test/peer_connection_test_wrapper.h", "test/rtc_stats_obtainer.h", "test/test_sdp_strings.h", ] deps = [ ":channel", ":channel_interface", ":jitter_buffer_delay", ":libjingle_peerconnection", ":peer_connection_internal", ":peerconnection", ":rtp_receiver", ":rtp_sender", ":sctp_data_channel", ":stream_collection", ":video_track_source", "../api:audio_options_api", "../api:call_api", "../api:create_frame_generator", "../api:create_peerconnection_factory", "../api:field_trials_view", "../api:field_trials_view", "../api:libjingle_peerconnection_api", "../api:make_ref_counted", "../api:media_stream_interface", "../api:rtc_error", "../api:rtc_stats_api", "../api:scoped_refptr", "../api:sequence_checker", "../api/audio:audio_mixer_api", "../api/audio_codecs:audio_codecs_api", "../api/task_queue", "../api/task_queue:default_task_queue_factory", "../api/units:time_delta", "../api/video:builtin_video_bitrate_allocator_factory", "../api/video:video_frame", "../api/video:video_rtp_headers", "../api/video_codecs:builtin_video_decoder_factory", "../api/video_codecs:builtin_video_encoder_factory", "../api/video_codecs:video_codecs_api", "../call:call_interfaces", "../media:media_channel", "../media:media_channel_impl", "../media:rtc_media", "../media:rtc_media_base", "../media:rtc_media_tests_utils", "../modules/audio_device", "../modules/audio_processing", "../modules/audio_processing:api", "../modules/rtp_rtcp:rtp_rtcp_format", "../p2p:fake_port_allocator", "../p2p:p2p_test_utils", "../p2p:rtc_p2p", "../rtc_base:checks", "../rtc_base:gunit_helpers", "../rtc_base:logging", "../rtc_base:macromagic", "../rtc_base:rtc_certificate_generator", "../rtc_base:rtc_task_queue", "../rtc_base:ssl", "../rtc_base:stringutils", "../rtc_base:task_queue_for_test", "../rtc_base:threading", "../rtc_base:timeutils", "../rtc_base/synchronization:mutex", "../rtc_base/task_utils:repeating_task", "../rtc_base/third_party/sigslot", "../test:scoped_key_value_config", "../test:test_support", "../test:video_test_common", ] absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ] } svc_tests_resources = [ "../resources/difficult_photo_1850_1110.yuv", "../resources/photo_1850_1110.yuv", "../resources/presentation_1850_1110.yuv", "../resources/web_screenshot_1850_1110.yuv", ] if (is_ios) { bundle_data("svc_tests_bundle_data") { testonly = true sources = svc_tests_resources outputs = [ "{{bundle_resources_dir}}/{{source_file_part}}" ] } } rtc_test("svc_tests") { sources = [ "test/svc_e2e_tests.cc" ] data = svc_tests_resources deps = [ "../api:create_network_emulation_manager", "../api:create_peer_connection_quality_test_frame_generator", "../api:create_peerconnection_quality_test_fixture", "../api:frame_generator_api", "../api:media_stream_interface", "../api:network_emulation_manager_api", "../api:peer_connection_quality_test_fixture_api", "../api:rtc_stats_api", "../api:simulated_network_api", "../api:time_controller", "../api/test/metrics:global_metrics_logger_and_exporter", "../api/test/pclf:media_configuration", "../api/test/pclf:media_quality_test_params", "../api/test/pclf:peer_configurer", "../api/video_codecs:video_codecs_api", "../call:simulated_network", "../modules/video_coding:webrtc_vp9", "../modules/video_coding/svc:scalability_mode_util", "../rtc_base/containers:flat_map", "../system_wrappers:field_trial", "../test:field_trial", "../test:fileutils", "../test:test_main", "../test:test_support", "../test/pc/e2e:network_quality_metrics_reporter", "../test/pc/e2e/analyzer/video:default_video_quality_analyzer", ] if (is_ios) { deps += [ ":svc_tests_bundle_data" ] } } }