Rename EncoderKeyFrameCallback back to EncoderRtcpFeedback
The name EncoderRtcpFeedback is more appropriate because:
1. "Callback" implies a single function exposed, which is
not the case.
2. We intend to add OnLossNotification() to the same class.
Bug: webrtc:10501
Change-Id: I75b2e06eb070e85e872eba9fbc354aa4b68c7993
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/131289
Commit-Queue: Elad Alon <eladalon@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27490}
diff --git a/video/BUILD.gn b/video/BUILD.gn
index 51dcb9d..b4b943c 100644
--- a/video/BUILD.gn
+++ b/video/BUILD.gn
@@ -14,8 +14,8 @@
"buffered_frame_decryptor.h",
"call_stats.cc",
"call_stats.h",
- "encoder_key_frame_callback.cc",
- "encoder_key_frame_callback.h",
+ "encoder_rtcp_feedback.cc",
+ "encoder_rtcp_feedback.h",
"quality_threshold.cc",
"quality_threshold.h",
"receive_statistics_proxy.cc",
@@ -465,8 +465,8 @@
"call_stats_unittest.cc",
"cpu_scaling_tests.cc",
"encoder_bitrate_adjuster_unittest.cc",
- "encoder_key_frame_callback_unittest.cc",
"encoder_overshoot_detector_unittest.cc",
+ "encoder_rtcp_feedback_unittest.cc",
"end_to_end_tests/bandwidth_tests.cc",
"end_to_end_tests/call_operation_tests.cc",
"end_to_end_tests/codec_tests.cc",
diff --git a/video/encoder_key_frame_callback.cc b/video/encoder_rtcp_feedback.cc
similarity index 79%
rename from video/encoder_key_frame_callback.cc
rename to video/encoder_rtcp_feedback.cc
index 3116221..2c54701 100644
--- a/video/encoder_key_frame_callback.cc
+++ b/video/encoder_rtcp_feedback.cc
@@ -8,7 +8,7 @@
* be found in the AUTHORS file in the root of the source tree.
*/
-#include "video/encoder_key_frame_callback.h"
+#include "video/encoder_rtcp_feedback.h"
#include "absl/types/optional.h"
#include "rtc_base/checks.h"
@@ -20,10 +20,9 @@
constexpr int kMinKeyframeSendIntervalMs = 300;
} // namespace
-EncoderKeyFrameCallback::EncoderKeyFrameCallback(
- Clock* clock,
- const std::vector<uint32_t>& ssrcs,
- VideoStreamEncoderInterface* encoder)
+EncoderRtcpFeedback::EncoderRtcpFeedback(Clock* clock,
+ const std::vector<uint32_t>& ssrcs,
+ VideoStreamEncoderInterface* encoder)
: clock_(clock),
ssrcs_(ssrcs),
video_stream_encoder_(encoder),
@@ -35,7 +34,7 @@
RTC_DCHECK(!ssrcs.empty());
}
-bool EncoderKeyFrameCallback::HasSsrc(uint32_t ssrc) {
+bool EncoderRtcpFeedback::HasSsrc(uint32_t ssrc) {
for (uint32_t registered_ssrc : ssrcs_) {
if (registered_ssrc == ssrc) {
return true;
@@ -44,7 +43,7 @@
return false;
}
-void EncoderKeyFrameCallback::OnReceivedIntraFrameRequest(uint32_t ssrc) {
+void EncoderRtcpFeedback::OnReceivedIntraFrameRequest(uint32_t ssrc) {
RTC_DCHECK(HasSsrc(ssrc));
{
int64_t now_ms = clock_->TimeInMilliseconds();
@@ -59,7 +58,7 @@
video_stream_encoder_->SendKeyFrame();
}
-void EncoderKeyFrameCallback::OnKeyFrameRequested(uint64_t channel_id) {
+void EncoderRtcpFeedback::OnKeyFrameRequested(uint64_t channel_id) {
if (channel_id != ssrcs_[0]) {
RTC_LOG(LS_INFO) << "Key frame request on unknown channel id " << channel_id
<< " expected " << ssrcs_[0];
diff --git a/video/encoder_key_frame_callback.h b/video/encoder_rtcp_feedback.h
similarity index 70%
rename from video/encoder_key_frame_callback.h
rename to video/encoder_rtcp_feedback.h
index 9ed3c578..1a58a67 100644
--- a/video/encoder_key_frame_callback.h
+++ b/video/encoder_rtcp_feedback.h
@@ -7,8 +7,8 @@
* in the file PATENTS. All contributing project authors may
* be found in the AUTHORS file in the root of the source tree.
*/
-#ifndef VIDEO_ENCODER_KEY_FRAME_CALLBACK_H_
-#define VIDEO_ENCODER_KEY_FRAME_CALLBACK_H_
+#ifndef VIDEO_ENCODER_RTCP_FEEDBACK_H_
+#define VIDEO_ENCODER_RTCP_FEEDBACK_H_
#include <vector>
@@ -22,16 +22,16 @@
class VideoStreamEncoderInterface;
-// This class receives keyframe requests from either Mediatransport or the
-// RtpRtcp module.
+// This class passes feedback (such as key frame requests or loss notifications)
+// from either Mediatransport or the RtpRtcp module.
// TODO(bugs.webrtc.org/9719): Should be eliminated when RtpMediaTransport is
// implemented.
-class EncoderKeyFrameCallback : public RtcpIntraFrameObserver,
- public MediaTransportKeyFrameRequestCallback {
+class EncoderRtcpFeedback : public RtcpIntraFrameObserver,
+ public MediaTransportKeyFrameRequestCallback {
public:
- EncoderKeyFrameCallback(Clock* clock,
- const std::vector<uint32_t>& ssrcs,
- VideoStreamEncoderInterface* encoder);
+ EncoderRtcpFeedback(Clock* clock,
+ const std::vector<uint32_t>& ssrcs,
+ VideoStreamEncoderInterface* encoder);
void OnReceivedIntraFrameRequest(uint32_t ssrc) override;
// Implements MediaTransportKeyFrameRequestCallback
@@ -52,4 +52,4 @@
} // namespace webrtc
-#endif // VIDEO_ENCODER_KEY_FRAME_CALLBACK_H_
+#endif // VIDEO_ENCODER_RTCP_FEEDBACK_H_
diff --git a/video/encoder_key_frame_callback_unittest.cc b/video/encoder_rtcp_feedback_unittest.cc
similarity index 68%
rename from video/encoder_key_frame_callback_unittest.cc
rename to video/encoder_rtcp_feedback_unittest.cc
index d00478a..fd018ae 100644
--- a/video/encoder_key_frame_callback_unittest.cc
+++ b/video/encoder_rtcp_feedback_unittest.cc
@@ -8,7 +8,7 @@
* be found in the AUTHORS file in the root of the source tree.
*/
-#include "video/encoder_key_frame_callback.h"
+#include "video/encoder_rtcp_feedback.h"
#include <memory>
@@ -23,7 +23,7 @@
VieKeyRequestTest()
: simulated_clock_(123456789),
encoder_(),
- encoder_key_frame_callback_(
+ encoder_rtcp_feedback_(
&simulated_clock_,
std::vector<uint32_t>(1, VieKeyRequestTest::kSsrc),
&encoder_) {}
@@ -33,31 +33,31 @@
SimulatedClock simulated_clock_;
testing::StrictMock<MockVideoStreamEncoder> encoder_;
- EncoderKeyFrameCallback encoder_key_frame_callback_;
+ EncoderRtcpFeedback encoder_rtcp_feedback_;
};
TEST_F(VieKeyRequestTest, CreateAndTriggerRequests) {
EXPECT_CALL(encoder_, SendKeyFrame()).Times(1);
- encoder_key_frame_callback_.OnReceivedIntraFrameRequest(kSsrc);
+ encoder_rtcp_feedback_.OnReceivedIntraFrameRequest(kSsrc);
}
TEST_F(VieKeyRequestTest, TooManyOnReceivedIntraFrameRequest) {
EXPECT_CALL(encoder_, SendKeyFrame()).Times(1);
- encoder_key_frame_callback_.OnReceivedIntraFrameRequest(kSsrc);
- encoder_key_frame_callback_.OnReceivedIntraFrameRequest(kSsrc);
+ encoder_rtcp_feedback_.OnReceivedIntraFrameRequest(kSsrc);
+ encoder_rtcp_feedback_.OnReceivedIntraFrameRequest(kSsrc);
simulated_clock_.AdvanceTimeMilliseconds(10);
- encoder_key_frame_callback_.OnReceivedIntraFrameRequest(kSsrc);
+ encoder_rtcp_feedback_.OnReceivedIntraFrameRequest(kSsrc);
EXPECT_CALL(encoder_, SendKeyFrame()).Times(1);
simulated_clock_.AdvanceTimeMilliseconds(300);
- encoder_key_frame_callback_.OnReceivedIntraFrameRequest(kSsrc);
- encoder_key_frame_callback_.OnReceivedIntraFrameRequest(kSsrc);
- encoder_key_frame_callback_.OnReceivedIntraFrameRequest(kSsrc);
+ encoder_rtcp_feedback_.OnReceivedIntraFrameRequest(kSsrc);
+ encoder_rtcp_feedback_.OnReceivedIntraFrameRequest(kSsrc);
+ encoder_rtcp_feedback_.OnReceivedIntraFrameRequest(kSsrc);
}
TEST_F(VieKeyRequestTest, TriggerRequestFromMediaTransport) {
EXPECT_CALL(encoder_, SendKeyFrame()).Times(1);
- encoder_key_frame_callback_.OnKeyFrameRequested(kSsrc);
+ encoder_rtcp_feedback_.OnKeyFrameRequested(kSsrc);
}
} // namespace webrtc
diff --git a/video/video_send_stream_impl.cc b/video/video_send_stream_impl.cc
index 1c291e7..1acf0b3 100644
--- a/video/video_send_stream_impl.cc
+++ b/video/video_send_stream_impl.cc
@@ -143,7 +143,7 @@
}
RtpSenderObservers CreateObservers(CallStats* call_stats,
- EncoderKeyFrameCallback* encoder_feedback,
+ EncoderRtcpFeedback* encoder_feedback,
SendStatisticsProxy* stats_proxy,
SendDelayStats* send_delay_stats) {
RtpSenderObservers observers;
diff --git a/video/video_send_stream_impl.h b/video/video_send_stream_impl.h
index c7510b9..f9393d8 100644
--- a/video/video_send_stream_impl.h
+++ b/video/video_send_stream_impl.h
@@ -40,7 +40,7 @@
#include "rtc_base/thread_annotations.h"
#include "rtc_base/weak_ptr.h"
#include "video/call_stats.h"
-#include "video/encoder_key_frame_callback.h"
+#include "video/encoder_rtcp_feedback.h"
#include "video/send_delay_stats.h"
#include "video/send_statistics_proxy.h"
#include "video/video_send_stream.h"
@@ -171,7 +171,7 @@
bool has_packet_feedback_;
VideoStreamEncoderInterface* const video_stream_encoder_;
- EncoderKeyFrameCallback encoder_feedback_;
+ EncoderRtcpFeedback encoder_feedback_;
RtcpBandwidthObserver* const bandwidth_observer_;
RtpVideoSenderInterface* const rtp_video_sender_;