webrtc/pc
Anton Sukhanov 316f3ac13b Datagram Transport Integration
- Implement datagram transport adaptor, which wraps datagram transport in DtlsTransportInternal. Datagram adaptor owns both ICE and Datagram Transports.
- Implement setup of datagram transport based on RTCConfiguration flag use_datagram_transport. This is very similar to MediaTransport setup with the exception that we create DTLS datagram adaptor.
- Propagate maximum datagram size to video encoder via MediaTransportConfig.

TODO: Currently this CL can only be tested in downstream projects. Once we add fake datagram transport, we will be able to implement unit tests similar to loopback media transport.

Bug: webrtc:9719
Change-Id: I4fa4a5725598dfee5da4f0f374269a7e289d48ed
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138100
Commit-Queue: Anton Sukhanov <sukhanov@webrtc.org>
Reviewed-by: Bjorn Mellem <mellem@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28047}
2019-05-23 23:36:05 +00:00
..
test Implement max-channels for SCTP datachannels. 2019-05-21 10:24:41 +00:00
audio_rtp_receiver.cc Remove SetLatency/GetLatency from MediaSourceInterface API level 2019-04-18 19:11:31 +00:00
audio_rtp_receiver.h Remove SetLatency/GetLatency from MediaSourceInterface API level 2019-04-18 19:11:31 +00:00
audio_track.cc Deprecating ThreadChecker specific interface. 2019-04-08 16:58:07 +00:00
audio_track.h Remove rtc_base/scoped_ref_ptr.h. 2019-01-25 20:29:58 +00:00
BUILD.gn Delete rtc_base/unittest_main.cc 2019-05-21 14:44:11 +00:00
channel.cc Introduce MediaTransportConfig 2019-05-21 18:58:33 +00:00
channel.h Introduce MediaTransportConfig 2019-05-21 18:58:33 +00:00
channel_interface.h Creating Simulcast offer and answer in Peer Connection. 2019-01-28 18:56:02 +00:00
channel_manager.cc Introduce MediaTransportConfig 2019-05-21 18:58:33 +00:00
channel_manager.h Introduce MediaTransportConfig 2019-05-21 18:58:33 +00:00
channel_manager_unittest.cc Introduce MediaTransportConfig 2019-05-21 18:58:33 +00:00
channel_unittest.cc Introduce MediaTransportConfig 2019-05-21 18:58:33 +00:00
data_channel.cc Datachannel: Use absl::optional for maxRetransmits and maxRetransmitTime. 2019-04-09 08:32:43 +00:00
data_channel.h Datachannel: Use absl::optional for maxRetransmits and maxRetransmitTime. 2019-04-09 08:32:43 +00:00
data_channel_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
DEPS Remove +api from internal DEPS files. 2019-01-28 11:17:00 +00:00
dtls_srtp_transport.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
dtls_srtp_transport.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
dtls_srtp_transport_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
dtls_transport.cc Expose SSL ciphersuite on the webrtc::DtlsTransport interface 2019-04-12 08:29:59 +00:00
dtls_transport.h Delete unneeded includes of async_invoker.h 2019-04-16 07:28:06 +00:00
dtls_transport_unittest.cc Expose SSL ciphersuite on the webrtc::DtlsTransport interface 2019-04-12 08:29:59 +00:00
dtmf_sender.cc Remove comments about using std::shared_ptr. 2019-01-15 13:15:58 +00:00
dtmf_sender.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
dtmf_sender_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
external_hmac.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
external_hmac.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
ice_server_parsing.cc Update parsing of stun and turn urls for RFC 7064-7065 2019-03-19 08:13:13 +00:00
ice_server_parsing.h Export symbols needed by the Chromium component build (part 8). 2019-04-02 10:13:36 +00:00
ice_server_parsing_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
ice_transport.cc Fix comment - ice transport is cleared on the networking thread. 2019-04-09 09:12:10 +00:00
ice_transport.h Add IceTransportInterface object 2019-01-30 16:16:51 +00:00
ice_transport_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
jitter_buffer_delay.cc Remove SetLatency/GetLatency from MediaSourceInterface API level 2019-04-18 19:11:31 +00:00
jitter_buffer_delay.h Remove SetLatency/GetLatency from MediaSourceInterface API level 2019-04-18 19:11:31 +00:00
jitter_buffer_delay_interface.h Remove SetLatency/GetLatency from MediaSourceInterface API level 2019-04-18 19:11:31 +00:00
jitter_buffer_delay_proxy.h Remove SetLatency/GetLatency from MediaSourceInterface API level 2019-04-18 19:11:31 +00:00
jitter_buffer_delay_unittest.cc Remove SetLatency/GetLatency from MediaSourceInterface API level 2019-04-18 19:11:31 +00:00
jsep_ice_candidate.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
jsep_session_description.cc [PeerConnection::AddIceCandidate()] Use mid to look up contents in remote descriptions 2019-05-23 20:45:23 +00:00
jsep_session_description_unittest.cc Code cleanup: Make JsepSessionDescription::Initialize take std::unique_ptr 2019-04-12 05:42:46 +00:00
jsep_transport.cc Datagram Transport Integration 2019-05-23 23:36:05 +00:00
jsep_transport.h Datagram Transport Integration 2019-05-23 23:36:05 +00:00
jsep_transport_controller.cc Datagram Transport Integration 2019-05-23 23:36:05 +00:00
jsep_transport_controller.h Datagram Transport Integration 2019-05-23 23:36:05 +00:00
jsep_transport_controller_unittest.cc Datagram Transport Integration 2019-05-23 23:36:05 +00:00
jsep_transport_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
local_audio_source.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
local_audio_source.h Remove rtc_base/scoped_ref_ptr.h. 2019-01-25 20:29:58 +00:00
local_audio_source_unittest.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
media_protocol_names.cc Reland "Reland "Version 2 "Refactoring DataContentDescription class""" 2019-05-13 18:37:47 +00:00
media_protocol_names.h Reland "Reland "Version 2 "Refactoring DataContentDescription class""" 2019-05-13 18:37:47 +00:00
media_session.cc SCTP: Treat message size zero as "responder selects" 2019-05-16 11:03:17 +00:00
media_session.h Change default SDP syntax for SCTP to spec-compliant. 2019-05-14 20:38:08 +00:00
media_session_unittest.cc SCTP: Treat message size zero as "responder selects" 2019-05-16 11:03:17 +00:00
media_stream.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
media_stream.h Remove rtc_base/scoped_ref_ptr.h. 2019-01-25 20:29:58 +00:00
media_stream_observer.cc Use Abseil container algorithms in pc/ 2019-01-29 02:33:50 +00:00
media_stream_observer.h Remove rtc_base/scoped_ref_ptr.h. 2019-01-25 20:29:58 +00:00
media_stream_track.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
media_stream_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
OWNERS Update per-file OWNERS to reflect renamed file names 2019-03-22 16:47:56 +00:00
peer_connection.cc Datagram Transport Integration 2019-05-23 23:36:05 +00:00
peer_connection.h Datagram Transport Integration 2019-05-23 23:36:05 +00:00
peer_connection_bundle_unittest.cc Stop using Googletest legacy APIs. 2019-01-31 13:23:33 +00:00
peer_connection_crypto_unittest.cc Stop using Googletest legacy APIs. 2019-01-31 13:23:33 +00:00
peer_connection_data_channel_unittest.cc Change default SDP syntax for SCTP to spec-compliant. 2019-05-14 20:38:08 +00:00
peer_connection_end_to_end_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
peer_connection_factory.cc Delete multi-parameter CreateModularPeerConnectionFactory 2019-05-21 17:22:40 +00:00
peer_connection_factory.h Add base class NetworkPredictor and NetworkPredictorFactory and wire up. 2019-04-10 12:38:58 +00:00
peer_connection_factory_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
peer_connection_histogram_unittest.cc Replace a broken assumption in candidate gathering for mDNS candidates. 2019-05-22 22:58:58 +00:00
peer_connection_ice_unittest.cc [PeerConnection::AddIceCandidate()] Use mid to look up contents in remote descriptions 2019-05-23 20:45:23 +00:00
peer_connection_integrationtest.cc Replace a broken assumption in candidate gathering for mDNS candidates. 2019-05-22 22:58:58 +00:00
peer_connection_interface_unittest.cc Promote RtcEventLogOutputFile to api/ 2019-05-08 12:29:42 +00:00
peer_connection_internal.h Use RtpSender/RtpReceiver track ID for legacy GetStats 2019-03-27 18:14:00 +00:00
peer_connection_jsep_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
peer_connection_media_unittest.cc Implement RTCRtpTransceiver.setCodecPreferences 2019-05-01 20:14:59 +00:00
peer_connection_rampup_tests.cc Remove rtc_base/scoped_ref_ptr.h. 2019-01-25 20:29:58 +00:00
peer_connection_rtp_unittest.cc Add RtpSenderInterface.SetStreams 2019-05-20 18:38:06 +00:00
peer_connection_signaling_unittest.cc Stop using Googletest legacy APIs. 2019-01-31 13:23:33 +00:00
peer_connection_simulcast_unittest.cc Reland "Adding a restriction for legal RID values." 2019-04-09 21:19:31 +00:00
peer_connection_wrapper.cc Move rtc::FunctionView to the public API 2019-03-21 15:23:05 +00:00
peer_connection_wrapper.h Move rtc::FunctionView to the public API 2019-03-21 15:23:05 +00:00
proxy_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
remote_audio_source.cc Remove SetLatency/GetLatency from MediaSourceInterface API level 2019-04-18 19:11:31 +00:00
remote_audio_source.h Remove SetLatency/GetLatency from MediaSourceInterface API level 2019-04-18 19:11:31 +00:00
rtc_stats_collector.cc Implement RTCMediaSourceStats and friends in standard getStats(). 2019-05-22 16:03:41 +00:00
rtc_stats_collector.h Implement RTCMediaSourceStats and friends in standard getStats(). 2019-05-22 16:03:41 +00:00
rtc_stats_collector_unittest.cc Implement RTCMediaSourceStats and friends in standard getStats(). 2019-05-22 16:03:41 +00:00
rtc_stats_integrationtest.cc Implement RTCMediaSourceStats and friends in standard getStats(). 2019-05-22 16:03:41 +00:00
rtc_stats_traversal.cc Implement RTCMediaSourceStats and friends in standard getStats(). 2019-05-22 16:03:41 +00:00
rtc_stats_traversal.h Remove rtc_base/scoped_ref_ptr.h. 2019-01-25 20:29:58 +00:00
rtc_stats_traversal_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
rtcp_mux_filter.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
rtcp_mux_filter.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
rtcp_mux_filter_unittest.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
rtp_media_utils.cc Reland "Make negotiationneeded processing in PeerConnection spec compliant." 2019-04-16 12:04:33 +00:00
rtp_media_utils.h Reland "Make negotiationneeded processing in PeerConnection spec compliant." 2019-04-16 12:04:33 +00:00
rtp_media_utils_unittest.cc Stop using Googletest legacy APIs. 2019-01-31 13:23:33 +00:00
rtp_parameters_conversion.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
rtp_parameters_conversion.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
rtp_parameters_conversion_unittest.cc Use Abseil container algorithms in pc/ 2019-01-29 02:33:50 +00:00
rtp_receiver.cc Split rtp_receiver for readability. 2019-02-11 12:47:51 +00:00
rtp_receiver.h Split rtp_receiver for readability. 2019-02-11 12:47:51 +00:00
rtp_sender.cc Add RtpSenderInterface.SetStreams 2019-05-20 18:38:06 +00:00
rtp_sender.h Add RtpSenderInterface.SetStreams 2019-05-20 18:38:06 +00:00
rtp_sender_receiver_unittest.cc Introduce MediaTransportConfig 2019-05-21 18:58:33 +00:00
rtp_transceiver.cc Implement RTCRtpTransceiver.setCodecPreferences 2019-05-01 20:14:59 +00:00
rtp_transceiver.h Implement RTCRtpTransceiver.setCodecPreferences 2019-05-01 20:14:59 +00:00
rtp_transceiver_unittest.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
rtp_transport.cc Log details when RtpDemuxer fails to deliver a packet 2019-04-16 00:47:53 +00:00
rtp_transport.h Delete last traces of RtpTransportAdapter 2019-03-25 08:52:45 +00:00
rtp_transport_internal.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
rtp_transport_unittest.cc Removes rtp level keep alive support. 2019-03-11 14:47:15 +00:00
sctp_transport.cc Implement max-channels for SCTP datachannels. 2019-05-21 10:24:41 +00:00
sctp_transport.h Implement max-channels for SCTP datachannels. 2019-05-21 10:24:41 +00:00
sctp_transport_unittest.cc Implement max-channels for SCTP datachannels. 2019-05-21 10:24:41 +00:00
sctp_utils.cc Datachannel: Use absl::optional for maxRetransmits and maxRetransmitTime. 2019-04-09 08:32:43 +00:00
sctp_utils.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
sctp_utils_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
sdp_serializer.cc Reland "Adding a restriction for legal RID values." 2019-04-09 21:19:31 +00:00
sdp_serializer.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
sdp_serializer_unittest.cc Reland "Adding a restriction for legal RID values." 2019-04-09 21:19:31 +00:00
sdp_utils.cc Code cleanup: Make JsepSessionDescription::Initialize take std::unique_ptr 2019-04-12 05:42:46 +00:00
sdp_utils.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
session_description.cc Reland "Reland "Version 2 "Refactoring DataContentDescription class""" 2019-05-13 18:37:47 +00:00
session_description.h Send and parse SCTP max-message-size in SDP 2019-05-15 07:14:32 +00:00
session_description_unittest.cc Reland "Reland "Version 2 "Refactoring DataContentDescription class""" 2019-05-13 18:37:47 +00:00
simulcast_description.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
simulcast_description.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
srtp_filter.cc (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
srtp_filter.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
srtp_filter_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
srtp_session.cc Deprecating ThreadChecker specific interface. 2019-04-08 16:58:07 +00:00
srtp_session.h Remove rtc_base/scoped_ref_ptr.h. 2019-01-25 20:29:58 +00:00
srtp_session_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
srtp_transport.cc Minor fixes and refactoring for RtpTransport until the Demux. 2019-03-19 16:48:47 +00:00
srtp_transport.h Minor fixes and refactoring for RtpTransport until the Demux. 2019-03-19 16:48:47 +00:00
srtp_transport_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
stats_collector.cc Revert "Piping audio interruption metrics to API layer" 2019-04-29 11:23:16 +00:00
stats_collector.h Use RtpSender/RtpReceiver track ID for legacy GetStats 2019-03-27 18:14:00 +00:00
stats_collector_unittest.cc Revert "Piping audio interruption metrics to API layer" 2019-04-29 11:23:16 +00:00
stream_collection.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
track_media_info_map.cc [clang-tidy] Apply performance-for-range-copy fixes. 2019-01-28 09:53:50 +00:00
track_media_info_map.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
track_media_info_map_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
transport_stats.cc [clang-tidy] Apply performance-move-const-arg fixes (misc). 2019-02-05 15:12:20 +00:00
transport_stats.h [clang-tidy] Apply performance-move-const-arg fixes (misc). 2019-02-05 15:12:20 +00:00
video_rtp_receiver.cc Remove SetLatency/GetLatency from MediaSourceInterface API level 2019-04-18 19:11:31 +00:00
video_rtp_receiver.h Remove SetLatency/GetLatency from MediaSourceInterface API level 2019-04-18 19:11:31 +00:00
video_track.cc Deprecating ThreadChecker specific interface. 2019-04-08 16:58:07 +00:00
video_track.h Remove rtc_base/scoped_ref_ptr.h. 2019-01-25 20:29:58 +00:00
video_track_source.cc Deprecating ThreadChecker specific interface. 2019-04-08 16:58:07 +00:00
video_track_source.h (4) Rename files to snake_case: update BUILD.gn, include paths, header guards, and DEPS entries 2019-01-11 17:11:39 +00:00
video_track_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
webrtc_sdp.cc Reland "Change SimpleStringBuilder::Append to not use strcpyn and SIZE_UNKNOWN" 2019-05-16 08:21:04 +00:00
webrtc_sdp.h Export symbols needed by the Chromium component build (part 8). 2019-04-02 10:13:36 +00:00
webrtc_sdp_unittest.cc Send and parse SCTP max-message-size in SDP 2019-05-15 07:14:32 +00:00
webrtc_session_description_factory.cc Use Abseil container algorithms in pc/ 2019-01-29 02:33:50 +00:00
webrtc_session_description_factory.h Creating Simulcast offer and answer in Peer Connection. 2019-01-28 18:56:02 +00:00