diff --git a/video/BUILD.gn b/video/BUILD.gn index 51dcb9d519..b4b943cb70 100644 --- a/video/BUILD.gn +++ b/video/BUILD.gn @@ -14,8 +14,8 @@ rtc_static_library("video") { "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 @@ if (rtc_include_tests) { "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 3116221da2..2c54701af6 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 @@ namespace { constexpr int kMinKeyframeSendIntervalMs = 300; } // namespace -EncoderKeyFrameCallback::EncoderKeyFrameCallback( - Clock* clock, - const std::vector& ssrcs, - VideoStreamEncoderInterface* encoder) +EncoderRtcpFeedback::EncoderRtcpFeedback(Clock* clock, + const std::vector& ssrcs, + VideoStreamEncoderInterface* encoder) : clock_(clock), ssrcs_(ssrcs), video_stream_encoder_(encoder), @@ -35,7 +34,7 @@ EncoderKeyFrameCallback::EncoderKeyFrameCallback( 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 @@ bool EncoderKeyFrameCallback::HasSsrc(uint32_t ssrc) { 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 @@ void EncoderKeyFrameCallback::OnReceivedIntraFrameRequest(uint32_t ssrc) { 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 9ed3c578a8..1a58a67137 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 @@ -22,16 +22,16 @@ namespace webrtc { 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& ssrcs, - VideoStreamEncoderInterface* encoder); + EncoderRtcpFeedback(Clock* clock, + const std::vector& ssrcs, + VideoStreamEncoderInterface* encoder); void OnReceivedIntraFrameRequest(uint32_t ssrc) override; // Implements MediaTransportKeyFrameRequestCallback @@ -52,4 +52,4 @@ class EncoderKeyFrameCallback : public RtcpIntraFrameObserver, } // 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 d00478a89a..fd018aeae2 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 @@ -23,7 +23,7 @@ class VieKeyRequestTest : public ::testing::Test { VieKeyRequestTest() : simulated_clock_(123456789), encoder_(), - encoder_key_frame_callback_( + encoder_rtcp_feedback_( &simulated_clock_, std::vector(1, VieKeyRequestTest::kSsrc), &encoder_) {} @@ -33,31 +33,31 @@ class VieKeyRequestTest : public ::testing::Test { SimulatedClock simulated_clock_; testing::StrictMock 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 1c291e7a0a..1acf0b3ccb 100644 --- a/video/video_send_stream_impl.cc +++ b/video/video_send_stream_impl.cc @@ -143,7 +143,7 @@ RtpSenderFrameEncryptionConfig CreateFrameEncryptionConfig( } 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 c7510b9b94..f9393d8802 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 @@ class VideoSendStreamImpl : public webrtc::BitrateAllocatorObserver, bool has_packet_feedback_; VideoStreamEncoderInterface* const video_stream_encoder_; - EncoderKeyFrameCallback encoder_feedback_; + EncoderRtcpFeedback encoder_feedback_; RtcpBandwidthObserver* const bandwidth_observer_; RtpVideoSenderInterface* const rtp_video_sender_;