webrtc/modules/video_coding
Elad Alon 8f01c4e1b6 Define FecControllerOverride and plumb it down to VideoEncoder
The purpose of this interface is to allow VideoEncoder to override
the bandwidth allocation set by FecController in RtpVideoSender.

This CL defines the interface and sends it down to VideoSender.
Two upcoming CLs will:
1. Make LibvpxVp8Encoder pass it on to the (injectable)
   FrameBufferController, where it might be put to good use.
2. Modify RtpVideoSender to respond to the message sent to it
   via this API.

TBR=kwiberg@webrtc.org

Bug: webrtc:10769
Change-Id: I2ef82f0ddcde7fd078e32d8aabf6efe43e0f7f8a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/143962
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28416}
2019-06-28 15:57:22 +00:00
..
codecs Define FecControllerOverride and plumb it down to VideoEncoder 2019-06-28 15:57:22 +00:00
include Extend structures to store updated version of the dependency descriptor 2019-06-27 12:10:38 +00:00
test Move frame_type member from RtpDepacketizer::ParsedPayload to RTPVideoHeader 2019-04-24 13:13:04 +00:00
utility Delete almost all includes of platform_file.h 2019-06-28 07:30:15 +00:00
BUILD.gn Define FecControllerOverride and plumb it down to VideoEncoder 2019-06-28 15:57:22 +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_unittest.cc Move frame_type member from RtpDepacketizer::ParsedPayload to RTPVideoHeader 2019-04-24 13:13:04 +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
DEPS Prepare VideoProcessor for async simulcast support. 2018-03-08 17:41:13 +00:00
encoded_frame.cc Added video_coding::EncodedFrame copy ctor. 2019-06-20 11:19:50 +00:00
encoded_frame.h Added video_coding::EncodedFrame copy ctor. 2019-06-20 11:19:50 +00:00
fec_controller_default.cc FecControllerDefault nits (missing empty lines) 2019-06-05 10:17:15 +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 Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
frame_buffer2_unittest.cc Add sizes of spatial layer frames to EncodedImage 2019-05-23 07:16:42 +00:00
frame_buffer2.cc Control rtt_mult addition cap via experiment. 2019-06-07 09:43:26 +00:00
frame_buffer2.h Control rtt_mult addition cap via experiment. 2019-06-07 09:43:26 +00:00
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_object.cc Add plumbing of RtpPacketInfos to each VideoFrame as input for SourceTracker. 2019-06-20 10:24:29 +00:00
frame_object.h Add plumbing of RtpPacketInfos to each VideoFrame as input for SourceTracker. 2019-06-20 10:24:29 +00:00
generic_decoder_unittest.cc Add plumbing of RtpPacketInfos to each VideoFrame as input for SourceTracker. 2019-06-20 10:24:29 +00:00
generic_decoder.cc Add plumbing of RtpPacketInfos to each VideoFrame as input for SourceTracker. 2019-06-20 10:24:29 +00:00
generic_decoder.h Add plumbing of RtpPacketInfos to each VideoFrame as input for SourceTracker. 2019-06-20 10:24:29 +00:00
h264_sprop_parameter_sets_unittest.cc Fully qualify googletest symbols. 2019-04-09 17:18:20 +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_sps_pps_tracker_unittest.cc Insert startcodes for H264 single NALU packets. 2019-06-14 13:45:21 +00:00
h264_sps_pps_tracker.cc Insert startcodes for H264 single NALU packets. 2019-06-14 13:45:21 +00:00
h264_sps_pps_tracker.h Remove clang:find_bad_constructs suppression from call:call. 2018-08-29 11:57:00 +00:00
histogram_unittest.cc Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
histogram.cc [Cleanup] Add missing #include. Remove useless ones. IWYU part 2. 2018-11-28 18:25:07 +00:00
histogram.h Fixing WebRTC after moving from src/webrtc to src/ 2017-09-15 05:02:56 +00:00
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_common.h Delete all logic related to VCMDecodeErrorMode 2019-01-16 15:41:07 +00:00
jitter_buffer_unittest.cc Add plumbing of RtpPacketInfos to each VideoFrame as input for SourceTracker. 2019-06-20 10:24:29 +00:00
jitter_buffer.cc Add cap to video jitter buffer size/latency in experiment branches only. 2019-06-04 15:50:27 +00:00
jitter_buffer.h Delete VCMJitterBuffer::UpdateRtt and related unused code 2019-04-16 15:13:13 +00:00
jitter_estimator_tests.cc Add cap to video jitter buffer size/latency in experiment branches only. 2019-06-04 15:50:27 +00:00
jitter_estimator.cc Avoids crash in VCMJitterEstimator due to incorrectly calculated mean FPS. 2019-06-11 12:04:52 +00:00
jitter_estimator.h Add cap to video jitter buffer size/latency in experiment branches only. 2019-06-04 15:50:27 +00:00
loss_notification_controller_unittest.cc Allowing buffering a LNTF (loss notification) feedback message in RTCPSender 2019-06-03 16:28:34 +00:00
loss_notification_controller.cc Allowing buffering a LNTF (loss notification) feedback message in RTCPSender 2019-06-03 16:28:34 +00:00
loss_notification_controller.h Replacing SequencedTaskChecker with SequenceChecker. 2019-04-09 12:28:04 +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_unittest.cc Get rid of deprecated version of NackSender::SendNack [1/2] 2019-06-28 13:04:48 +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
OWNERS Make ilnik@ owner in video/ and modules/video_coding/ 2018-09-11 12:39:39 +00:00
packet_buffer.cc Add plumbing of RtpPacketInfos to each VideoFrame as input for SourceTracker. 2019-06-20 10:24:29 +00:00
packet_buffer.h Rename "OnReceivedFrame" to "OnAssembledFrame" 2019-02-22 10:49:07 +00:00
packet.cc Add plumbing of RtpPacketInfos to each VideoFrame as input for SourceTracker. 2019-06-20 10:24:29 +00:00
packet.h Add plumbing of RtpPacketInfos to each VideoFrame as input for SourceTracker. 2019-06-20 10:24:29 +00:00
receiver_unittest.cc Cleanup: Using DCHECK comparison macros for unit types. 2019-04-12 13:01:03 +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
rtp_frame_reference_finder_unittest.cc Add plumbing of RtpPacketInfos to each VideoFrame as input for SourceTracker. 2019-06-20 10:24:29 +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
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_unittest.cc Move frame_type member from RtpDepacketizer::ParsedPayload to RTPVideoHeader 2019-04-24 13:13:04 +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
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_unittest.cc Remove unused functions in VCMTiming. 2018-01-17 14:47:10 +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
video_codec_initializer_unittest.cc Inform FrameBufferController of encoder capabilities 2019-06-11 19:26:23 +00:00
video_codec_initializer.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 deprecated method VideoCodingModule::SetReceiverRobustnessMode 2019-06-12 06:39:38 +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_unittest.cc Change vcm::VideoReceiver::IncomingPacket to not use WebRtcRTPHeader 2019-04-25 10:15:39 +00:00
video_receiver.cc Add plumbing of RtpPacketInfos to each VideoFrame as input for SourceTracker. 2019-06-20 10:24:29 +00:00