OLD | NEW |
1 // Copyright (c) 2017 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2017 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/renderer/media/webrtc/rtc_rtp_receiver.h" | 5 #include "content/renderer/media/webrtc/rtc_rtp_receiver.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
| 8 #include "base/memory/ptr_util.h" |
| 9 #include "content/renderer/media/webrtc/rtc_rtp_contributing_source.h" |
8 #include "third_party/webrtc/base/scoped_ref_ptr.h" | 10 #include "third_party/webrtc/base/scoped_ref_ptr.h" |
9 | 11 |
10 namespace content { | 12 namespace content { |
11 | 13 |
12 namespace { | 14 namespace { |
13 | 15 |
14 inline bool operator==(const blink::WebMediaStreamTrack& web_track, | 16 inline bool operator==(const blink::WebMediaStreamTrack& web_track, |
15 const webrtc::MediaStreamTrackInterface& webrtc_track) { | 17 const webrtc::MediaStreamTrackInterface& webrtc_track) { |
16 return !web_track.IsNull() && web_track.Id() == webrtc_track.id().c_str(); | 18 return !web_track.IsNull() && web_track.Id() == webrtc_track.id().c_str(); |
17 } | 19 } |
(...skipping 18 matching lines...) Expand all Loading... |
36 | 38 |
37 uintptr_t RTCRtpReceiver::Id() const { | 39 uintptr_t RTCRtpReceiver::Id() const { |
38 return getId(webrtc_rtp_receiver_.get()); | 40 return getId(webrtc_rtp_receiver_.get()); |
39 } | 41 } |
40 | 42 |
41 const blink::WebMediaStreamTrack& RTCRtpReceiver::Track() const { | 43 const blink::WebMediaStreamTrack& RTCRtpReceiver::Track() const { |
42 DCHECK(web_track_ == webrtc_track()); | 44 DCHECK(web_track_ == webrtc_track()); |
43 return web_track_; | 45 return web_track_; |
44 } | 46 } |
45 | 47 |
| 48 blink::WebVector<std::unique_ptr<blink::WebRTCRtpContributingSource>> |
| 49 RTCRtpReceiver::GetSources() { |
| 50 auto webrtc_sources = webrtc_rtp_receiver_->GetSources(); |
| 51 blink::WebVector<std::unique_ptr<blink::WebRTCRtpContributingSource>> sources( |
| 52 webrtc_sources.size()); |
| 53 for (size_t i = 0; i < webrtc_sources.size(); ++i) { |
| 54 sources[i] = base::MakeUnique<RTCRtpContributingSource>(webrtc_sources[i]); |
| 55 } |
| 56 return sources; |
| 57 } |
| 58 |
46 const webrtc::MediaStreamTrackInterface& RTCRtpReceiver::webrtc_track() const { | 59 const webrtc::MediaStreamTrackInterface& RTCRtpReceiver::webrtc_track() const { |
47 const webrtc::MediaStreamTrackInterface* webrtc_track = | 60 const webrtc::MediaStreamTrackInterface* webrtc_track = |
48 webrtc_rtp_receiver_->track(); | 61 webrtc_rtp_receiver_->track(); |
49 DCHECK(webrtc_track); | 62 DCHECK(webrtc_track); |
50 DCHECK(web_track_ == *webrtc_track); | 63 DCHECK(web_track_ == *webrtc_track); |
51 return *webrtc_track; | 64 return *webrtc_track; |
52 } | 65 } |
53 | 66 |
54 } // namespace content | 67 } // namespace content |
OLD | NEW |