mirror of
https://github.com/mollyim/webrtc.git
synced 2025-05-13 22:00:47 +01:00

This is a reland of 11dc6571cb
One fix that makes Web Platform Tests pass in debug mode is applied.
Original change's description:
> Implement transceiver.stop()
>
> This adds RtpTransceiver.StopStandard(), which behaves according to
> the specification at
> https://w3c.github.io/webrtc-pc/#dom-rtcrtptransceiver-stop
>
> It modifies RTCPeerConnection.getTransceivers() to return only
> transceivers that have not been stopped.
>
> Rebase of armax' https://webrtc-review.googlesource.com/c/src/+/172762
>
> Bug: chromium:980879
> Change-Id: I7d383ee874ccc0a006fdcf280496b5d4235425ce
> Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/180580
> Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
> Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
> Reviewed-by: Guido Urdaneta <guidou@webrtc.org>
> Commit-Queue: Harald Alvestrand <hta@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#31893}
Bug: chromium:980879
Change-Id: Ide31d929ac5ea118d83fdf6a35a592af23f7dfa7
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/181263
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Reviewed-by: Guido Urdaneta <guidou@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31907}
80 lines
2.2 KiB
C++
80 lines
2.2 KiB
C++
/*
|
|
* Copyright 2018 The WebRTC project authors. All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license
|
|
* that can be found in the LICENSE file in the root of the source
|
|
* tree. An additional intellectual property rights grant can be found
|
|
* in the file PATENTS. All contributing project authors may
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
*/
|
|
|
|
#include "api/rtp_transceiver_interface.h"
|
|
|
|
#include "rtc_base/checks.h"
|
|
|
|
namespace webrtc {
|
|
|
|
RtpTransceiverInit::RtpTransceiverInit() = default;
|
|
|
|
RtpTransceiverInit::RtpTransceiverInit(const RtpTransceiverInit& rhs) = default;
|
|
|
|
RtpTransceiverInit::~RtpTransceiverInit() = default;
|
|
|
|
absl::optional<RtpTransceiverDirection>
|
|
RtpTransceiverInterface::fired_direction() const {
|
|
return absl::nullopt;
|
|
}
|
|
|
|
bool RtpTransceiverInterface::stopping() const {
|
|
return false;
|
|
}
|
|
|
|
void RtpTransceiverInterface::Stop() {
|
|
StopInternal();
|
|
}
|
|
|
|
RTCError RtpTransceiverInterface::StopStandard() {
|
|
RTC_NOTREACHED() << "DEBUG: RtpTransceiverInterface::StopStandard called";
|
|
return RTCError::OK();
|
|
}
|
|
|
|
void RtpTransceiverInterface::StopInternal() {
|
|
RTC_NOTREACHED() << "DEBUG: RtpTransceiverInterface::StopInternal called";
|
|
}
|
|
|
|
RTCError RtpTransceiverInterface::SetCodecPreferences(
|
|
rtc::ArrayView<RtpCodecCapability>) {
|
|
RTC_NOTREACHED() << "Not implemented";
|
|
return {};
|
|
}
|
|
|
|
std::vector<RtpCodecCapability> RtpTransceiverInterface::codec_preferences()
|
|
const {
|
|
return {};
|
|
}
|
|
|
|
std::vector<RtpHeaderExtensionCapability>
|
|
RtpTransceiverInterface::HeaderExtensionsToOffer() const {
|
|
return {};
|
|
}
|
|
|
|
webrtc::RTCError RtpTransceiverInterface::SetOfferedRtpHeaderExtensions(
|
|
rtc::ArrayView<const RtpHeaderExtensionCapability>
|
|
header_extensions_to_offer) {
|
|
return webrtc::RTCError(webrtc::RTCErrorType::UNSUPPORTED_OPERATION);
|
|
}
|
|
|
|
// TODO(bugs.webrtc.org/11839) Remove default implementations when clients
|
|
// are updated.
|
|
void RtpTransceiverInterface::SetDirection(
|
|
RtpTransceiverDirection new_direction) {
|
|
SetDirectionWithError(new_direction);
|
|
}
|
|
|
|
RTCError RtpTransceiverInterface::SetDirectionWithError(
|
|
RtpTransceiverDirection new_direction) {
|
|
RTC_NOTREACHED() << "Default implementation called";
|
|
return RTCError::OK();
|
|
}
|
|
|
|
} // namespace webrtc
|