Add AddTransceiver and GetTransceivers to PeerConnection
WebRTC 1.0 has added the transceiver API to PeerConnection. This
is the first step towards exposing this to WebRTC consumers. For
now, transceivers can be added and fetched but there is not yet
support for creating offers/answers or setting local/remote
descriptions. That support ("Unified Plan") will be added in
follow-up CLs.
The transceiver API is currently only available if the application
opts in by specifying the kUnifiedPlan SDP semantics when creating
the PeerConnection.
Bug: webrtc:7600
Change-Id: I0b8ee24b489b45bb4c5f60b699bd20c61af01d8e
Reviewed-on: https://webrtc-review.googlesource.com/23880
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Reviewed-by: Henrik Boström <hbos@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20896}
This commit is contained in:
@ -93,6 +93,28 @@ class PeerConnectionWrapper {
|
||||
bool SetRemoteDescription(std::unique_ptr<SessionDescriptionInterface> desc,
|
||||
RTCError* error_out);
|
||||
|
||||
// The following are wrappers for the underlying PeerConnection's
|
||||
// AddTransceiver method. They return the result of calling AddTransceiver
|
||||
// with the given arguments, DCHECKing if there is an error.
|
||||
rtc::scoped_refptr<RtpTransceiverInterface> AddTransceiver(
|
||||
cricket::MediaType media_type);
|
||||
rtc::scoped_refptr<RtpTransceiverInterface> AddTransceiver(
|
||||
cricket::MediaType media_type,
|
||||
const RtpTransceiverInit& init);
|
||||
rtc::scoped_refptr<RtpTransceiverInterface> AddTransceiver(
|
||||
rtc::scoped_refptr<MediaStreamTrackInterface> track);
|
||||
rtc::scoped_refptr<RtpTransceiverInterface> AddTransceiver(
|
||||
rtc::scoped_refptr<MediaStreamTrackInterface> track,
|
||||
const RtpTransceiverInit& init);
|
||||
|
||||
// Returns a new dummy audio track with the given label.
|
||||
rtc::scoped_refptr<AudioTrackInterface> CreateAudioTrack(
|
||||
const std::string& label);
|
||||
|
||||
// Returns a new dummy video track with the given label.
|
||||
rtc::scoped_refptr<VideoTrackInterface> CreateVideoTrack(
|
||||
const std::string& label);
|
||||
|
||||
// Calls the underlying PeerConnection's AddTrack method with an audio media
|
||||
// stream track not bound to any source.
|
||||
rtc::scoped_refptr<RtpSenderInterface> AddAudioTrack(
|
||||
|
||||
Reference in New Issue
Block a user