OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 #include "content/renderer/media/peer_connection_tracker.h" | 4 #include "content/renderer/media/peer_connection_tracker.h" |
5 | 5 |
| 6 #include "base/strings/string_number_conversions.h" |
6 #include "base/strings/utf_string_conversions.h" | 7 #include "base/strings/utf_string_conversions.h" |
7 #include "content/common/media/peer_connection_tracker_messages.h" | 8 #include "content/common/media/peer_connection_tracker_messages.h" |
8 #include "content/renderer/media/rtc_media_constraints.h" | 9 #include "content/renderer/media/rtc_media_constraints.h" |
9 #include "content/renderer/media/rtc_peer_connection_handler.h" | 10 #include "content/renderer/media/rtc_peer_connection_handler.h" |
10 #include "content/renderer/render_thread_impl.h" | 11 #include "content/renderer/render_thread_impl.h" |
11 #include "third_party/WebKit/public/platform/WebMediaConstraints.h" | 12 #include "third_party/WebKit/public/platform/WebMediaConstraints.h" |
12 #include "third_party/WebKit/public/platform/WebMediaStream.h" | 13 #include "third_party/WebKit/public/platform/WebMediaStream.h" |
13 #include "third_party/WebKit/public/platform/WebMediaStreamSource.h" | 14 #include "third_party/WebKit/public/platform/WebMediaStreamSource.h" |
14 #include "third_party/WebKit/public/platform/WebMediaStreamTrack.h" | 15 #include "third_party/WebKit/public/platform/WebMediaStreamTrack.h" |
15 #include "third_party/WebKit/public/platform/WebRTCICECandidate.h" | 16 #include "third_party/WebKit/public/platform/WebRTCICECandidate.h" |
(...skipping 367 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
383 | 384 |
384 SendPeerConnectionUpdate( | 385 SendPeerConnectionUpdate( |
385 pc_handler, | 386 pc_handler, |
386 "updateIce", | 387 "updateIce", |
387 servers_string + ", " + transport_type + ", " + constraints); | 388 servers_string + ", " + transport_type + ", " + constraints); |
388 } | 389 } |
389 | 390 |
390 void PeerConnectionTracker::TrackAddIceCandidate( | 391 void PeerConnectionTracker::TrackAddIceCandidate( |
391 RTCPeerConnectionHandler* pc_handler, | 392 RTCPeerConnectionHandler* pc_handler, |
392 const blink::WebRTCICECandidate& candidate, | 393 const blink::WebRTCICECandidate& candidate, |
393 Source source) { | 394 Source source, |
394 string value = "mid: " + base::UTF16ToUTF8(candidate.sdpMid()) + ", " + | 395 bool succeeded) { |
395 "candidate: " + base::UTF16ToUTF8(candidate.candidate()); | 396 string value = |
396 SendPeerConnectionUpdate( | 397 "sdpMid: " + base::UTF16ToUTF8(candidate.sdpMid()) + ", " + |
397 pc_handler, | 398 "sdpMLineIndex: " + base::IntToString(candidate.sdpMLineIndex()) + ", " + |
398 source == SOURCE_LOCAL ? "onIceCandidate" : "addIceCandidate", value); | 399 "candidate: " + base::UTF16ToUTF8(candidate.candidate()); |
| 400 |
| 401 // OnIceCandidate always succeeds as it's a callback from the browser. |
| 402 DCHECK(source != SOURCE_LOCAL || succeeded); |
| 403 |
| 404 string event = |
| 405 (source == SOURCE_LOCAL) ? "onIceCandidate" |
| 406 : (succeeded ? "addIceCandidate" |
| 407 : "addIceCandidateFailed"); |
| 408 |
| 409 SendPeerConnectionUpdate(pc_handler, event, value); |
399 } | 410 } |
400 | 411 |
401 void PeerConnectionTracker::TrackAddStream( | 412 void PeerConnectionTracker::TrackAddStream( |
402 RTCPeerConnectionHandler* pc_handler, | 413 RTCPeerConnectionHandler* pc_handler, |
403 const blink::WebMediaStream& stream, | 414 const blink::WebMediaStream& stream, |
404 Source source){ | 415 Source source){ |
405 SendPeerConnectionUpdate( | 416 SendPeerConnectionUpdate( |
406 pc_handler, source == SOURCE_LOCAL ? "addStream" : "onAddStream", | 417 pc_handler, source == SOURCE_LOCAL ? "addStream" : "onAddStream", |
407 SerializeMediaDescriptor(stream)); | 418 SerializeMediaDescriptor(stream)); |
408 } | 419 } |
(...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
518 const std::string& value) { | 529 const std::string& value) { |
519 if (peer_connection_id_map_.find(pc_handler) == peer_connection_id_map_.end()) | 530 if (peer_connection_id_map_.find(pc_handler) == peer_connection_id_map_.end()) |
520 return; | 531 return; |
521 | 532 |
522 RenderThreadImpl::current()->Send( | 533 RenderThreadImpl::current()->Send( |
523 new PeerConnectionTrackerHost_UpdatePeerConnection( | 534 new PeerConnectionTrackerHost_UpdatePeerConnection( |
524 peer_connection_id_map_[pc_handler], type, value)); | 535 peer_connection_id_map_[pc_handler], type, value)); |
525 } | 536 } |
526 | 537 |
527 } // namespace content | 538 } // namespace content |
OLD | NEW |