webrtc/modules/video_coding
Elad Alon ef09c5b734 Buffer RTCP feedback messages in RtpVideoStreamReceiver
Currently, if LNTF and NACK messages are both created, they will
be sent out in separate RTCP messages. This is wasteful.
This CL is the first of in a series of CLs that will ensure that
these feedback messages can be buffered together, without introducing
more of a delay than the CPU time required to process both messages.

Bug: webrtc:10336
Change-Id: I950324112ee346695a12a17d025483ea5e99c732
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/139112
Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28136}
2019-06-03 12:19:36 +00:00
..
codecs VP9 screenshare: drop base layer separately 2019-05-24 15:28:02 +00:00
include Delete unused RTPFragmentationHeader members 2019-05-17 09:26:17 +00:00
test Move frame_type member from RtpDepacketizer::ParsedPayload to RTPVideoHeader 2019-04-24 13:13:04 +00:00
utility Reland "Refactor handling of configuration overrides from Vp8FrameBufferController" 2019-05-10 08:44:02 +00:00
BUILD.gn Use preprocessor to strip H264 implementation. 2019-05-24 11:33:07 +00:00
codec_timer.cc [Cleanup] Add missing #include. Remove useless ones. IWYU part 2. 2018-11-28 18:25:07 +00:00
codec_timer.h Delete root header file typedef.h. 2018-07-25 14:59:26 +00:00
decoder_database.cc Remove kVideoCodecUnknown from WebRTC. 2018-08-16 15:15:39 +00:00
decoder_database.h Refactoring PayloadRouter. 2018-07-17 14:46:15 +00:00
decoding_state.cc Make VideoFrameType an enum class, and move to separate file and target 2019-03-22 12:44:51 +00:00
decoding_state.h Delete root header file typedef.h. 2018-07-25 14:59:26 +00:00
decoding_state_unittest.cc Move frame_type member from RtpDepacketizer::ParsedPayload to RTPVideoHeader 2019-04-24 13:13:04 +00:00
DEPS Prepare VideoProcessor for async simulcast support. 2018-03-08 17:41:13 +00:00
encoded_frame.cc Make VideoFrameType an enum class, and move to separate file and target 2019-03-22 12:44:51 +00:00
encoded_frame.h Add sizes of spatial layer frames to EncodedImage 2019-05-23 07:16:42 +00:00
fec_controller_default.cc Make VideoFrameType an enum class, and move to separate file and target 2019-03-22 12:44:51 +00:00
fec_controller_default.h Delete unneeded direct includes of common_types.h 2019-04-01 07:18:13 +00:00
fec_controller_unittest.cc [Cleanup] Add missing #include. Remove useless ones. IWYU part 2. 2018-11-28 18:25:07 +00:00
fec_rate_table.h
frame_buffer.cc Move frame_type member from RtpDepacketizer::ParsedPayload to RTPVideoHeader 2019-04-24 13:13:04 +00:00
frame_buffer.h Delete unneeded direct includes of common_types.h 2019-04-01 07:18:13 +00:00
frame_buffer2.cc Add sizes of spatial layer frames to EncodedImage 2019-05-23 07:16:42 +00:00
frame_buffer2.h Wait for keyframe after decoding error. 2019-05-02 12:52:55 +00:00
frame_buffer2_unittest.cc Add sizes of spatial layer frames to EncodedImage 2019-05-23 07:16:42 +00:00
frame_object.cc Move frame_type member from RtpDepacketizer::ParsedPayload to RTPVideoHeader 2019-04-24 13:13:04 +00:00
frame_object.h Delete unneeded direct includes of common_types.h 2019-04-01 07:18:13 +00:00
generic_decoder.cc Reland "Copy video frames metadata between encoded and plain frames in one place" 2019-05-13 14:51:11 +00:00
generic_decoder.h Reland "Copy video frames metadata between encoded and plain frames in one place" 2019-05-13 14:51:11 +00:00
generic_decoder_unittest.cc Reland "Copy video frames metadata between encoded and plain frames in one place" 2019-05-13 14:51:11 +00:00
h264_sprop_parameter_sets.cc [Cleanup] Add missing #include. Remove useless ones. IWYU part 2. 2018-11-28 18:25:07 +00:00
h264_sprop_parameter_sets.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
h264_sprop_parameter_sets_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +00:00
h264_sps_pps_tracker.cc Delete redundant members from VCMPacket. 2019-02-20 14:39:10 +00:00
h264_sps_pps_tracker.h Remove clang:find_bad_constructs suppression from call:call. 2018-08-29 11:57:00 +00:00
h264_sps_pps_tracker_unittest.cc Delete unneeded direct includes of common_types.h 2019-04-01 07:18:13 +00:00
histogram.cc [Cleanup] Add missing #include. Remove useless ones. IWYU part 2. 2018-11-28 18:25:07 +00:00
histogram.h
histogram_unittest.cc
inter_frame_delay.cc Remove unused method in VCMInterFrameDelay. 2019-04-03 07:35:28 +00:00
inter_frame_delay.h Remove unused method in VCMInterFrameDelay. 2019-04-03 07:35:28 +00:00
internal_defines.h Remove unused defines and methods in internal_defines.h 2019-01-28 10:31:40 +00:00
jitter_buffer.cc Revert "Add ability to cap the video jitter estimate to a max value." 2019-05-22 15:07:33 +00:00
jitter_buffer.h Delete VCMJitterBuffer::UpdateRtt and related unused code 2019-04-16 15:13:13 +00:00
jitter_buffer_common.h Delete all logic related to VCMDecodeErrorMode 2019-01-16 15:41:07 +00:00
jitter_buffer_unittest.cc Move frame_type member from RtpDepacketizer::ParsedPayload to RTPVideoHeader 2019-04-24 13:13:04 +00:00
jitter_estimator.cc Revert "Add ability to cap the video jitter estimate to a max value." 2019-05-22 15:07:33 +00:00
jitter_estimator.h Revert "Add ability to cap the video jitter estimate to a max value." 2019-05-22 15:07:33 +00:00
jitter_estimator_tests.cc Revert "Add ability to cap the video jitter estimate to a max value." 2019-05-22 15:07:33 +00:00
loss_notification_controller.cc Translate loss notifications and pass to encoder 2019-04-10 15:31:53 +00:00
loss_notification_controller.h Replacing SequencedTaskChecker with SequenceChecker. 2019-04-09 12:28:04 +00:00
loss_notification_controller_unittest.cc Create LossNotificationController 2019-02-22 10:20:14 +00:00
media_opt_util.cc [Cleanup] Add missing #include. Remove useless ones. IWYU part 2. 2018-11-28 18:25:07 +00:00
media_opt_util.h Delete root header file typedef.h. 2018-07-25 14:59:26 +00:00
nack_module.cc Buffer RTCP feedback messages in RtpVideoStreamReceiver 2019-06-03 12:19:36 +00:00
nack_module.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
nack_module_unittest.cc Buffer RTCP feedback messages in RtpVideoStreamReceiver 2019-06-03 12:19:36 +00:00
OWNERS Make ilnik@ owner in video/ and modules/video_coding/ 2018-09-11 12:39:39 +00:00
packet.cc Move frame_type member from RtpDepacketizer::ParsedPayload to RTPVideoHeader 2019-04-24 13:13:04 +00:00
packet.h Move frame_type member from RtpDepacketizer::ParsedPayload to RTPVideoHeader 2019-04-24 13:13:04 +00:00
packet_buffer.cc ManageFrameH264 for temporal layers (PART 3/3) 2019-05-02 09:26:25 +00:00
packet_buffer.h Rename "OnReceivedFrame" to "OnAssembledFrame" 2019-02-22 10:49:07 +00:00
receiver.cc Delete VCMJitterBuffer::UpdateRtt and related unused code 2019-04-16 15:13:13 +00:00
receiver.h Delete VCMJitterBuffer::UpdateRtt and related unused code 2019-04-16 15:13:13 +00:00
receiver_unittest.cc Cleanup: Using DCHECK comparison macros for unit types. 2019-04-12 13:01:03 +00:00
rtp_frame_reference_finder.cc ManageFrameH264 for temporal layers (PART 3/3) 2019-05-02 09:26:25 +00:00
rtp_frame_reference_finder.h ManageFrameH264 for temporal layers (PART 3/3) 2019-05-02 09:26:25 +00:00
rtp_frame_reference_finder_unittest.cc ManageFrameH264 for temporal layers (PART 3/3) 2019-05-02 09:26:25 +00:00
rtt_filter.cc Fix typo in VCMRttFilter 2018-01-26 10:59:56 +00:00
rtt_filter.h Delete root header file typedef.h. 2018-07-25 14:59:26 +00:00
session_info.cc Move frame_type member from RtpDepacketizer::ParsedPayload to RTPVideoHeader 2019-04-24 13:13:04 +00:00
session_info.h Delete unneeded direct includes of common_types.h 2019-04-01 07:18:13 +00:00
session_info_unittest.cc Move frame_type member from RtpDepacketizer::ParsedPayload to RTPVideoHeader 2019-04-24 13:13:04 +00:00
timestamp_map.cc [Cleanup] Add missing #include. Remove useless ones. IWYU part 2. 2018-11-28 18:25:07 +00:00
timestamp_map.h Remove unimplemented function declarations VCMGenericDecoder::External and VCMTimestampMap::Reset. 2018-09-06 09:05:30 +00:00
timing.cc [Cleanup] Add missing #include. Remove useless ones. IWYU part 2. 2018-11-28 18:25:07 +00:00
timing.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
timing_unittest.cc Remove unused functions in VCMTiming. 2018-01-17 14:47:10 +00:00
video_codec_initializer.cc Delete unneeded direct includes of common_types.h 2019-04-01 07:18:13 +00:00
video_codec_initializer_unittest.cc Delete unneeded direct includes of common_types.h 2019-04-01 07:18:13 +00:00
video_coding_defines.cc Delete method DecodedImageCallback::ReceivedDecodedReferenceFrame 2019-04-18 08:14:40 +00:00
video_coding_impl.cc Delete WebRtcRTPHeader, this struct is no longer used. 2019-04-25 14:36:30 +00:00
video_coding_impl.h Change vcm::VideoReceiver::IncomingPacket to not use WebRtcRTPHeader 2019-04-25 10:15:39 +00:00
video_packet_buffer_unittest.cc Move frame_type member from RtpDepacketizer::ParsedPayload to RTPVideoHeader 2019-04-24 13:13:04 +00:00
video_receiver.cc Change vcm::VideoReceiver::IncomingPacket to not use WebRtcRTPHeader 2019-04-25 10:15:39 +00:00
video_receiver_unittest.cc Change vcm::VideoReceiver::IncomingPacket to not use WebRtcRTPHeader 2019-04-25 10:15:39 +00:00