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/string_number_conversions.h" |
7 #include "base/strings/utf_string_conversions.h" | 7 #include "base/strings/utf_string_conversions.h" |
8 #include "base/thread_task_runner_handle.h" | 8 #include "base/thread_task_runner_handle.h" |
9 #include "content/common/media/peer_connection_tracker_messages.h" | 9 #include "content/common/media/peer_connection_tracker_messages.h" |
10 #include "content/renderer/media/rtc_media_constraints.h" | 10 #include "content/renderer/media/rtc_media_constraints.h" |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
86 if (i != optional.size() - 1) | 86 if (i != optional.size() - 1) |
87 result += ", "; | 87 result += ", "; |
88 } | 88 } |
89 result += "}"; | 89 result += "}"; |
90 } | 90 } |
91 return result; | 91 return result; |
92 } | 92 } |
93 | 93 |
94 static string SerializeMediaStreamComponent( | 94 static string SerializeMediaStreamComponent( |
95 const blink::WebMediaStreamTrack component) { | 95 const blink::WebMediaStreamTrack component) { |
96 string id = base::UTF16ToUTF8(component.source().id()); | 96 string id = base::UTF16ToUTF8(base::StringPiece16(component.source().id())); |
97 return id; | 97 return id; |
98 } | 98 } |
99 | 99 |
100 static string SerializeMediaDescriptor( | 100 static string SerializeMediaDescriptor( |
101 const blink::WebMediaStream& stream) { | 101 const blink::WebMediaStream& stream) { |
102 string label = base::UTF16ToUTF8(stream.id()); | 102 string label = base::UTF16ToUTF8(base::StringPiece16(stream.id())); |
103 string result = "label: " + label; | 103 string result = "label: " + label; |
104 blink::WebVector<blink::WebMediaStreamTrack> tracks; | 104 blink::WebVector<blink::WebMediaStreamTrack> tracks; |
105 stream.audioTracks(tracks); | 105 stream.audioTracks(tracks); |
106 if (!tracks.isEmpty()) { | 106 if (!tracks.isEmpty()) { |
107 result += ", audio: ["; | 107 result += ", audio: ["; |
108 for (size_t i = 0; i < tracks.size(); ++i) { | 108 for (size_t i = 0; i < tracks.size(); ++i) { |
109 result += SerializeMediaStreamComponent(tracks[i]); | 109 result += SerializeMediaStreamComponent(tracks[i]); |
110 if (i != tracks.size() - 1) | 110 if (i != tracks.size() - 1) |
111 result += ", "; | 111 result += ", "; |
112 } | 112 } |
(...skipping 374 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
487 constraints); | 487 constraints); |
488 } | 488 } |
489 | 489 |
490 void PeerConnectionTracker::TrackAddIceCandidate( | 490 void PeerConnectionTracker::TrackAddIceCandidate( |
491 RTCPeerConnectionHandler* pc_handler, | 491 RTCPeerConnectionHandler* pc_handler, |
492 const blink::WebRTCICECandidate& candidate, | 492 const blink::WebRTCICECandidate& candidate, |
493 Source source, | 493 Source source, |
494 bool succeeded) { | 494 bool succeeded) { |
495 DCHECK(main_thread_.CalledOnValidThread()); | 495 DCHECK(main_thread_.CalledOnValidThread()); |
496 string value = | 496 string value = |
497 "sdpMid: " + base::UTF16ToUTF8(candidate.sdpMid()) + ", " + | 497 "sdpMid: " + |
498 "sdpMLineIndex: " + base::IntToString(candidate.sdpMLineIndex()) + ", " + | 498 base::UTF16ToUTF8(base::StringPiece16(candidate.sdpMid())) + ", " + |
499 "candidate: " + base::UTF16ToUTF8(candidate.candidate()); | 499 "sdpMLineIndex: " + base::IntToString(candidate.sdpMLineIndex()) + |
| 500 ", " + "candidate: " + |
| 501 base::UTF16ToUTF8(base::StringPiece16(candidate.candidate())); |
500 | 502 |
501 // OnIceCandidate always succeeds as it's a callback from the browser. | 503 // OnIceCandidate always succeeds as it's a callback from the browser. |
502 DCHECK(source != SOURCE_LOCAL || succeeded); | 504 DCHECK(source != SOURCE_LOCAL || succeeded); |
503 | 505 |
504 string event = | 506 string event = |
505 (source == SOURCE_LOCAL) ? "onIceCandidate" | 507 (source == SOURCE_LOCAL) ? "onIceCandidate" |
506 : (succeeded ? "addIceCandidate" | 508 : (succeeded ? "addIceCandidate" |
507 : "addIceCandidateFailed"); | 509 : "addIceCandidateFailed"); |
508 | 510 |
509 SendPeerConnectionUpdate(pc_handler, event, value); | 511 SendPeerConnectionUpdate(pc_handler, event, value); |
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
604 RTCPeerConnectionHandler* pc_handler) { | 606 RTCPeerConnectionHandler* pc_handler) { |
605 DCHECK(main_thread_.CalledOnValidThread()); | 607 DCHECK(main_thread_.CalledOnValidThread()); |
606 SendPeerConnectionUpdate(pc_handler, "onRenegotiationNeeded", std::string()); | 608 SendPeerConnectionUpdate(pc_handler, "onRenegotiationNeeded", std::string()); |
607 } | 609 } |
608 | 610 |
609 void PeerConnectionTracker::TrackCreateDTMFSender( | 611 void PeerConnectionTracker::TrackCreateDTMFSender( |
610 RTCPeerConnectionHandler* pc_handler, | 612 RTCPeerConnectionHandler* pc_handler, |
611 const blink::WebMediaStreamTrack& track) { | 613 const blink::WebMediaStreamTrack& track) { |
612 DCHECK(main_thread_.CalledOnValidThread()); | 614 DCHECK(main_thread_.CalledOnValidThread()); |
613 SendPeerConnectionUpdate(pc_handler, "createDTMFSender", | 615 SendPeerConnectionUpdate(pc_handler, "createDTMFSender", |
614 base::UTF16ToUTF8(track.id())); | 616 base::UTF16ToUTF8(base::StringPiece16(track.id()))); |
615 } | 617 } |
616 | 618 |
617 void PeerConnectionTracker::TrackGetUserMedia( | 619 void PeerConnectionTracker::TrackGetUserMedia( |
618 const blink::WebUserMediaRequest& user_media_request) { | 620 const blink::WebUserMediaRequest& user_media_request) { |
619 DCHECK(main_thread_.CalledOnValidThread()); | 621 DCHECK(main_thread_.CalledOnValidThread()); |
620 RTCMediaConstraints audio_constraints( | 622 RTCMediaConstraints audio_constraints( |
621 GetNativeMediaConstraints(user_media_request.audioConstraints())); | 623 GetNativeMediaConstraints(user_media_request.audioConstraints())); |
622 RTCMediaConstraints video_constraints( | 624 RTCMediaConstraints video_constraints( |
623 GetNativeMediaConstraints(user_media_request.videoConstraints())); | 625 GetNativeMediaConstraints(user_media_request.videoConstraints())); |
624 | 626 |
(...skipping 17 matching lines...) Expand all Loading... |
642 DCHECK(main_thread_.CalledOnValidThread()); | 644 DCHECK(main_thread_.CalledOnValidThread()); |
643 if (peer_connection_id_map_.find(pc_handler) == peer_connection_id_map_.end()) | 645 if (peer_connection_id_map_.find(pc_handler) == peer_connection_id_map_.end()) |
644 return; | 646 return; |
645 | 647 |
646 RenderThreadImpl::current()->Send( | 648 RenderThreadImpl::current()->Send( |
647 new PeerConnectionTrackerHost_UpdatePeerConnection( | 649 new PeerConnectionTrackerHost_UpdatePeerConnection( |
648 peer_connection_id_map_[pc_handler], type, value)); | 650 peer_connection_id_map_[pc_handler], type, value)); |
649 } | 651 } |
650 | 652 |
651 } // namespace content | 653 } // namespace content |
OLD | NEW |