From 226a2e32d03df3a2cf4bf3c616ac00dcd91ed3d2 Mon Sep 17 00:00:00 2001 From: Artem Titov Date: Mon, 17 Jan 2022 16:19:37 +0000 Subject: [PATCH] Revert "Remove some default implementations in api/rtp_transcever_interface" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 40941ee72d30676296f3545004e7a6e30b959612. Reason for revert: breaks downstream project Original change's description: > Remove some default implementations in api/rtp_transcever_interface > > Bug: webrtc:11839 > Change-Id: I6ddc0468e75bc346e12fc3dc64236ca2ab52e708 > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/244504 > Reviewed-by: Henrik Boström > Commit-Queue: Harald Alvestrand > Cr-Commit-Position: refs/heads/main@{#35701} # Not skipping CQ checks because original CL landed > 1 day ago. Bug: webrtc:11839 Change-Id: I8a3eb0a279b28ed8b55745af97596c4a853669be Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/247186 Reviewed-by: Björn Terelius Owners-Override: Artem Titov Commit-Queue: Artem Titov Cr-Commit-Position: refs/heads/main@{#35713} --- api/rtp_transceiver_interface.cc | 27 +++++++++++++++++++++++++++ api/rtp_transceiver_interface.h | 13 +++++++------ api/test/mock_rtp_transceiver.h | 4 ---- 3 files changed, 34 insertions(+), 10 deletions(-) diff --git a/api/rtp_transceiver_interface.cc b/api/rtp_transceiver_interface.cc index 7267b286be..454e450c8d 100644 --- a/api/rtp_transceiver_interface.cc +++ b/api/rtp_transceiver_interface.cc @@ -44,6 +44,33 @@ void RtpTransceiverInterface::StopInternal() { << "DEBUG: RtpTransceiverInterface::StopInternal called"; } +RTCError RtpTransceiverInterface::SetCodecPreferences( + rtc::ArrayView) { + RTC_DCHECK_NOTREACHED() << "Not implemented"; + return {}; +} + +std::vector RtpTransceiverInterface::codec_preferences() + const { + return {}; +} + +std::vector +RtpTransceiverInterface::HeaderExtensionsToOffer() const { + return {}; +} + +webrtc::RTCError RtpTransceiverInterface::SetOfferedRtpHeaderExtensions( + rtc::ArrayView + header_extensions_to_offer) { + return webrtc::RTCError(webrtc::RTCErrorType::UNSUPPORTED_OPERATION); +} + +std::vector +RtpTransceiverInterface::HeaderExtensionsNegotiated() const { + return {}; +} + // TODO(bugs.webrtc.org/11839) Remove default implementations when clients // are updated. void RtpTransceiverInterface::SetDirection( diff --git a/api/rtp_transceiver_interface.h b/api/rtp_transceiver_interface.h index c9d911fac1..4799c4b153 100644 --- a/api/rtp_transceiver_interface.h +++ b/api/rtp_transceiver_interface.h @@ -97,7 +97,8 @@ class RTC_EXPORT RtpTransceiverInterface : public rtc::RefCountInterface { // transceiver's stop() method has been called, but the negotiation with // the other end for shutting down the transceiver is not yet done. // https://w3c.github.io/webrtc-pc/#dfn-stopping-0 - virtual bool stopping() const = 0; + // TODO(hta): Remove default implementation. + virtual bool stopping() const; // The direction attribute indicates the preferred direction of this // transceiver, which will be used in calls to CreateOffer and CreateAnswer. @@ -146,28 +147,28 @@ class RTC_EXPORT RtpTransceiverInterface : public rtc::RefCountInterface { // by WebRTC for this transceiver. // https://w3c.github.io/webrtc-pc/#dom-rtcrtptransceiver-setcodecpreferences virtual RTCError SetCodecPreferences( - rtc::ArrayView codecs) = 0; - virtual std::vector codec_preferences() const = 0; + rtc::ArrayView codecs); + virtual std::vector codec_preferences() const; // Readonly attribute which contains the set of header extensions that was set // with SetOfferedRtpHeaderExtensions, or a default set if it has not been // called. // https://w3c.github.io/webrtc-extensions/#rtcrtptransceiver-interface virtual std::vector HeaderExtensionsToOffer() - const = 0; + const; // Readonly attribute which is either empty if negotation has not yet // happened, or a vector of the negotiated header extensions. // https://w3c.github.io/webrtc-extensions/#rtcrtptransceiver-interface virtual std::vector HeaderExtensionsNegotiated() - const = 0; + const; // The SetOfferedRtpHeaderExtensions method modifies the next SDP negotiation // so that it negotiates use of header extensions which are not kStopped. // https://w3c.github.io/webrtc-extensions/#rtcrtptransceiver-interface virtual webrtc::RTCError SetOfferedRtpHeaderExtensions( rtc::ArrayView - header_extensions_to_offer) = 0; + header_extensions_to_offer); protected: ~RtpTransceiverInterface() override = default; diff --git a/api/test/mock_rtp_transceiver.h b/api/test/mock_rtp_transceiver.h index 5ea9028b77..db587d0768 100644 --- a/api/test/mock_rtp_transceiver.h +++ b/api/test/mock_rtp_transceiver.h @@ -70,10 +70,6 @@ class MockRtpTransceiver final HeaderExtensionsToOffer, (), (const, override)); - MOCK_METHOD(std::vector, - HeaderExtensionsNegotiated, - (), - (const, override)); MOCK_METHOD(webrtc::RTCError, SetOfferedRtpHeaderExtensions, (rtc::ArrayView