| 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 |