mirror of
https://github.com/mollyim/webrtc.git
synced 2025-05-18 08:07:56 +01:00
Remove AddTrack override with MediaStreams
Bug: None Change-Id: I992d356a7271fd89a174b0f458f9030092953b3e Reviewed-on: https://webrtc-review.googlesource.com/88302 Reviewed-by: Seth Hampson <shampson@webrtc.org> Commit-Queue: Steve Anton <steveanton@webrtc.org> Cr-Commit-Position: refs/heads/master@{#23943}
This commit is contained in:
parent
68793c7667
commit
d78323faba
6 changed files with 3 additions and 55 deletions
|
@ -666,24 +666,9 @@ class PeerConnectionInterface : public rtc::RefCountInterface {
|
||||||
// - INVALID_PARAMETER: |track| is null, has a kind other than audio or video,
|
// - INVALID_PARAMETER: |track| is null, has a kind other than audio or video,
|
||||||
// or a sender already exists for the track.
|
// or a sender already exists for the track.
|
||||||
// - INVALID_STATE: The PeerConnection is closed.
|
// - INVALID_STATE: The PeerConnection is closed.
|
||||||
// TODO(steveanton): Remove default implementation once downstream
|
|
||||||
// implementations have been updated.
|
|
||||||
virtual RTCErrorOr<rtc::scoped_refptr<RtpSenderInterface>> AddTrack(
|
virtual RTCErrorOr<rtc::scoped_refptr<RtpSenderInterface>> AddTrack(
|
||||||
rtc::scoped_refptr<MediaStreamTrackInterface> track,
|
rtc::scoped_refptr<MediaStreamTrackInterface> track,
|
||||||
const std::vector<std::string>& stream_ids) {
|
const std::vector<std::string>& stream_ids) = 0;
|
||||||
return RTCError(RTCErrorType::UNSUPPORTED_OPERATION, "Not implemented");
|
|
||||||
}
|
|
||||||
// |streams| indicates which stream ids the track should be associated
|
|
||||||
// with.
|
|
||||||
// TODO(steveanton): Remove this overload once callers have moved to the
|
|
||||||
// signature with stream ids.
|
|
||||||
virtual rtc::scoped_refptr<RtpSenderInterface> AddTrack(
|
|
||||||
MediaStreamTrackInterface* track,
|
|
||||||
std::vector<MediaStreamInterface*> streams) {
|
|
||||||
// Default implementation provided so downstream implementations can remove
|
|
||||||
// this.
|
|
||||||
return nullptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Remove an RtpSender from this PeerConnection.
|
// Remove an RtpSender from this PeerConnection.
|
||||||
// Returns true on success.
|
// Returns true on success.
|
||||||
|
|
|
@ -32,10 +32,6 @@ PROXY_METHOD2(RTCErrorOr<rtc::scoped_refptr<RtpSenderInterface>>,
|
||||||
AddTrack,
|
AddTrack,
|
||||||
rtc::scoped_refptr<MediaStreamTrackInterface>,
|
rtc::scoped_refptr<MediaStreamTrackInterface>,
|
||||||
const std::vector<std::string>&);
|
const std::vector<std::string>&);
|
||||||
PROXY_METHOD2(rtc::scoped_refptr<RtpSenderInterface>,
|
|
||||||
AddTrack,
|
|
||||||
MediaStreamTrackInterface*,
|
|
||||||
std::vector<MediaStreamInterface*>)
|
|
||||||
PROXY_METHOD1(bool, RemoveTrack, RtpSenderInterface*)
|
PROXY_METHOD1(bool, RemoveTrack, RtpSenderInterface*)
|
||||||
PROXY_METHOD1(RTCErrorOr<rtc::scoped_refptr<RtpTransceiverInterface>>,
|
PROXY_METHOD1(RTCErrorOr<rtc::scoped_refptr<RtpTransceiverInterface>>,
|
||||||
AddTransceiver,
|
AddTransceiver,
|
||||||
|
|
|
@ -1155,25 +1155,6 @@ void PeerConnection::RemoveStream(MediaStreamInterface* local_stream) {
|
||||||
observer_->OnRenegotiationNeeded();
|
observer_->OnRenegotiationNeeded();
|
||||||
}
|
}
|
||||||
|
|
||||||
rtc::scoped_refptr<RtpSenderInterface> PeerConnection::AddTrack(
|
|
||||||
MediaStreamTrackInterface* track,
|
|
||||||
std::vector<MediaStreamInterface*> streams) {
|
|
||||||
TRACE_EVENT0("webrtc", "PeerConnection::AddTrack");
|
|
||||||
std::vector<std::string> stream_ids;
|
|
||||||
for (auto* stream : streams) {
|
|
||||||
if (!stream) {
|
|
||||||
RTC_LOG(LS_ERROR) << "Stream list has null element.";
|
|
||||||
return nullptr;
|
|
||||||
}
|
|
||||||
stream_ids.push_back(stream->id());
|
|
||||||
}
|
|
||||||
auto sender_or_error = AddTrack(track, stream_ids);
|
|
||||||
if (!sender_or_error.ok()) {
|
|
||||||
return nullptr;
|
|
||||||
}
|
|
||||||
return sender_or_error.MoveValue();
|
|
||||||
}
|
|
||||||
|
|
||||||
RTCErrorOr<rtc::scoped_refptr<RtpSenderInterface>> PeerConnection::AddTrack(
|
RTCErrorOr<rtc::scoped_refptr<RtpSenderInterface>> PeerConnection::AddTrack(
|
||||||
rtc::scoped_refptr<MediaStreamTrackInterface> track,
|
rtc::scoped_refptr<MediaStreamTrackInterface> track,
|
||||||
const std::vector<std::string>& stream_ids) {
|
const std::vector<std::string>& stream_ids) {
|
||||||
|
|
|
@ -85,9 +85,6 @@ class PeerConnection : public PeerConnectionInternal,
|
||||||
RTCErrorOr<rtc::scoped_refptr<RtpSenderInterface>> AddTrack(
|
RTCErrorOr<rtc::scoped_refptr<RtpSenderInterface>> AddTrack(
|
||||||
rtc::scoped_refptr<MediaStreamTrackInterface> track,
|
rtc::scoped_refptr<MediaStreamTrackInterface> track,
|
||||||
const std::vector<std::string>& stream_ids) override;
|
const std::vector<std::string>& stream_ids) override;
|
||||||
rtc::scoped_refptr<RtpSenderInterface> AddTrack(
|
|
||||||
MediaStreamTrackInterface* track,
|
|
||||||
std::vector<MediaStreamInterface*> streams) override;
|
|
||||||
bool RemoveTrack(RtpSenderInterface* sender) override;
|
bool RemoveTrack(RtpSenderInterface* sender) override;
|
||||||
|
|
||||||
RTCErrorOr<rtc::scoped_refptr<RtpTransceiverInterface>> AddTransceiver(
|
RTCErrorOr<rtc::scoped_refptr<RtpTransceiverInterface>> AddTransceiver(
|
||||||
|
|
|
@ -4248,16 +4248,11 @@ TEST_F(PeerConnectionIntegrationTestPlanB, RemoveAndAddTrackWithNewStreamId) {
|
||||||
ASSERT_TRUE(CreatePeerConnectionWrappers());
|
ASSERT_TRUE(CreatePeerConnectionWrappers());
|
||||||
ConnectFakeSignaling();
|
ConnectFakeSignaling();
|
||||||
|
|
||||||
rtc::scoped_refptr<MediaStreamInterface> stream_1 =
|
|
||||||
caller()->pc_factory()->CreateLocalMediaStream("stream_1");
|
|
||||||
rtc::scoped_refptr<MediaStreamInterface> stream_2 =
|
|
||||||
caller()->pc_factory()->CreateLocalMediaStream("stream_2");
|
|
||||||
|
|
||||||
// Add track using stream 1, do offer/answer.
|
// Add track using stream 1, do offer/answer.
|
||||||
rtc::scoped_refptr<webrtc::AudioTrackInterface> track =
|
rtc::scoped_refptr<webrtc::AudioTrackInterface> track =
|
||||||
caller()->CreateLocalAudioTrack();
|
caller()->CreateLocalAudioTrack();
|
||||||
rtc::scoped_refptr<webrtc::RtpSenderInterface> sender =
|
rtc::scoped_refptr<webrtc::RtpSenderInterface> sender =
|
||||||
caller()->pc()->AddTrack(track, {stream_1.get()});
|
caller()->AddTrack(track, {"stream_1"});
|
||||||
caller()->CreateAndSetAndSignalOffer();
|
caller()->CreateAndSetAndSignalOffer();
|
||||||
ASSERT_TRUE_WAIT(SignalingStateStable(), kDefaultTimeout);
|
ASSERT_TRUE_WAIT(SignalingStateStable(), kDefaultTimeout);
|
||||||
{
|
{
|
||||||
|
@ -4267,7 +4262,7 @@ TEST_F(PeerConnectionIntegrationTestPlanB, RemoveAndAddTrackWithNewStreamId) {
|
||||||
}
|
}
|
||||||
// Remove the sender, and create a new one with the new stream.
|
// Remove the sender, and create a new one with the new stream.
|
||||||
caller()->pc()->RemoveTrack(sender);
|
caller()->pc()->RemoveTrack(sender);
|
||||||
sender = caller()->pc()->AddTrack(track, {stream_2.get()});
|
sender = caller()->AddTrack(track, {"stream_2"});
|
||||||
caller()->CreateAndSetAndSignalOffer();
|
caller()->CreateAndSetAndSignalOffer();
|
||||||
ASSERT_TRUE_WAIT(SignalingStateStable(), kDefaultTimeout);
|
ASSERT_TRUE_WAIT(SignalingStateStable(), kDefaultTimeout);
|
||||||
// Wait for additional audio frames to be received by the callee.
|
// Wait for additional audio frames to be received by the callee.
|
||||||
|
|
|
@ -47,12 +47,6 @@ class FakePeerConnectionBase : public PeerConnectionInternal {
|
||||||
return RTCError(RTCErrorType::UNSUPPORTED_OPERATION, "Not implemented");
|
return RTCError(RTCErrorType::UNSUPPORTED_OPERATION, "Not implemented");
|
||||||
}
|
}
|
||||||
|
|
||||||
rtc::scoped_refptr<RtpSenderInterface> AddTrack(
|
|
||||||
MediaStreamTrackInterface* track,
|
|
||||||
std::vector<MediaStreamInterface*> streams) override {
|
|
||||||
return nullptr;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool RemoveTrack(RtpSenderInterface* sender) override { return false; }
|
bool RemoveTrack(RtpSenderInterface* sender) override { return false; }
|
||||||
|
|
||||||
RTCErrorOr<rtc::scoped_refptr<RtpTransceiverInterface>> AddTransceiver(
|
RTCErrorOr<rtc::scoped_refptr<RtpTransceiverInterface>> AddTransceiver(
|
||||||
|
|
Loading…
Reference in a new issue