webrtc/api
Sebastian Jansson af6d741fe1 Makes send time information in feedback non-optional.
This makes it safer to reason about the common case where send
time information is available. We don't have to either assume that
it's available, or check it everywhere the PacketResult struct is used.

To achieve this, a new field is added to TransportPacketsFeedback
and a new interface is introduced to clearly separate which field is
used. A possible followup would be to introduce a separate struct.
That would complicate the signature of ProcessTransportFeedback.

Bug: webrtc:9934
Change-Id: I2b319e4df2b557fbd4de66b812744bca7d91ca15
Reviewed-on: https://webrtc-review.googlesource.com/c/107080
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Björn Terelius <terelius@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25465}
2018-11-01 12:39:56 +00:00
..
audio AEC3: Decrease latency until the delay has been detected 2018-10-31 07:29:48 +00:00
audio_codecs [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
call [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
crypto [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
ortc Reland "Delete leftover includes and declarations for MediaConstraintsInterface" 2018-09-03 09:00:01 +00:00
stats Export symbols needed by the Chromium component build (part 3). 2018-10-16 12:57:04 +00:00
test Revert "Use the factory instead of using the builtin code path in VideoCodecInitializer." 2018-11-01 04:46:02 +00:00
transport Makes send time information in feedback non-optional. 2018-11-01 12:39:56 +00:00
units [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
video Revert "Use the factory instead of using the builtin code path in VideoCodecInitializer." 2018-11-01 04:46:02 +00:00
video_codecs Split out a separate target for VP8EncoderSimulcastProxy 2018-10-25 21:44:15 +00:00
array_view.h Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
array_view_unittest.cc ArrayView, adding ctor for fixed-size views of const(expr) std::array. 2018-05-15 13:49:02 +00:00
asyncresolverfactory.h Support domain name ICE candidates 2018-08-24 04:54:43 +00:00
audio_options.cc Remove AECM comfort noise setting from API 2018-10-16 09:42:16 +00:00
audio_options.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
bitrate_constraints.h Convert video quality test from a TEST_F to a TEST fixture. 2018-06-21 15:49:43 +00:00
BUILD.gn Revert "Use the factory instead of using the builtin code path in VideoCodecInitializer." 2018-11-01 04:46:02 +00:00
candidate.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
candidate.h Export symbols needed by the Chromium component build (part 2). 2018-10-15 19:52:31 +00:00
cryptoparams.h Reland "Move CryptoOptions to api/crypto from rtc_base/sslstreamadapter.h" 2018-10-11 23:09:07 +00:00
datachannelinterface.cc Enabling clang::find_bad_constructs for libjingle_peerconnection_api. 2018-07-19 09:17:10 +00:00
datachannelinterface.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
DEPS Add interfaces for using MediaTransport as the transport for data channels. 2018-10-31 18:44:31 +00:00
dtmfsenderinterface.h Add "tones remaining" argument to DTMF ontonechange callback 2018-09-07 17:29:37 +00:00
fec_controller.h Revert "Revert "Enables PeerConnectionFactory using external fec controller"" 2018-02-20 12:41:55 +00:00
jsep.cc Move SdpType from/to string definition close to declaration. 2018-10-12 09:59:40 +00:00
jsep.h Export symbols needed by the Chromium component build (part 6). 2018-10-23 06:48:51 +00:00
jsepicecandidate.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
jsepicecandidate.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
jsepsessiondescription.h Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
media_transport_interface.cc Delete the default implementations of MediaTransportInterface methods. 2018-11-01 00:15:52 +00:00
media_transport_interface.h Delete the default implementations of MediaTransportInterface methods. 2018-11-01 00:15:52 +00:00
mediaconstraintsinterface.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
mediaconstraintsinterface.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
mediastreaminterface.cc Remove deprecated AudioProcessing::GetStatistics function 2018-11-01 11:21:15 +00:00
mediastreaminterface.h Remove deprecated AudioProcessing::GetStatistics function 2018-11-01 11:21:15 +00:00
mediastreamproxy.h Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
mediastreamtrackproxy.h Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
mediatypes.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
mediatypes.h Convert video quality test from a TEST_F to a TEST fixture. 2018-06-21 15:49:43 +00:00
notifier.h Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
OWNERS Use checkdeps to ensure API headers don't include internal headers. 2018-10-24 12:55:01 +00:00
peerconnectionfactoryproxy.h Delete almost all use of MediaConstraintsInterface in the PeerConnection API 2018-08-23 07:14:37 +00:00
peerconnectioninterface.cc Compute RTCConnectionState and RTCIceConnectionState. 2018-10-22 11:33:17 +00:00
peerconnectioninterface.h Promotoing webrtc::CryptoOptions to RTCConfiguration. 2018-10-25 17:59:48 +00:00
peerconnectionproxy.h Delete almost all use of MediaConstraintsInterface in the PeerConnection API 2018-08-23 07:14:37 +00:00
proxy.cc Enable the clang style plugin in primary p2p/ target 2017-11-01 00:19:05 +00:00
proxy.h Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
refcountedbase.h New classes RefCounter and RefCountedBase. 2017-10-23 11:46:47 +00:00
rtcerror.cc Remove all remaining non-test uses of std::stringstream. 2018-09-13 08:52:05 +00:00
rtcerror.h Remove all remaining non-test uses of std::stringstream. 2018-09-13 08:52:05 +00:00
rtcerror_unittest.cc Remove all remaining non-test uses of std::stringstream. 2018-09-13 08:52:05 +00:00
rtceventlogoutput.h Move RtcEventLogOutput to api/ 2017-10-06 13:58:14 +00:00
rtp_headers.cc Reland "[cleanup] Remove useless includes." 2018-10-08 07:44:19 +00:00
rtp_headers.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
rtpparameters.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
rtpparameters.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
rtpparameters_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
rtpreceiverinterface.cc Injects FrameEncryptorInterface into RtpSender. 2018-08-30 00:33:54 +00:00
rtpreceiverinterface.h Injects FrameEncryptorInterface into RtpSender. 2018-08-30 00:33:54 +00:00
rtpsenderinterface.cc Add support for send_encodings parameters in addTransceiver 2018-10-01 22:56:30 +00:00
rtpsenderinterface.h Reland "[cleanup] Remove useless includes." 2018-10-08 07:44:19 +00:00
rtptransceiverinterface.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
rtptransceiverinterface.h [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
setremotedescriptionobserverinterface.h Reland "SetRemoteDescriptionObserverInterface added." 2017-11-23 19:59:48 +00:00
statstypes.cc Reimplement rtc::ToString and rtc::FromString without streams. 2018-08-16 16:14:01 +00:00
statstypes.h Revert "Add framesRendered to StatsReport" 2018-07-27 14:53:07 +00:00
turncustomizer.h Reformat the WebRTC code base 2018-06-19 14:00:39 +00:00
umametrics.h Remove MetricsObserverInterface. 2018-07-19 23:00:20 +00:00
videosourceproxy.h Replace rtc::Optional with absl::optional in api 2018-06-21 12:50:03 +00:00