| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/rtc_peer_connection_handler.h" | 5 #include "content/renderer/media/rtc_peer_connection_handler.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 #include <utility> | 8 #include <utility> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 178 description->ToString(sdp); | 178 description->ToString(sdp); |
| 179 *type = description->type(); | 179 *type = description->type(); |
| 180 } | 180 } |
| 181 } | 181 } |
| 182 | 182 |
| 183 // Converter functions from WebKit types to WebRTC types. | 183 // Converter functions from WebKit types to WebRTC types. |
| 184 | 184 |
| 185 void GetNativeRtcConfiguration( | 185 void GetNativeRtcConfiguration( |
| 186 const blink::WebRTCConfiguration& blink_config, | 186 const blink::WebRTCConfiguration& blink_config, |
| 187 webrtc::PeerConnectionInterface::RTCConfiguration* webrtc_config) { | 187 webrtc::PeerConnectionInterface::RTCConfiguration* webrtc_config) { |
| 188 DCHECK_EQ(webrtc_config->enable_localhost_ice_candidate, false); | 188 if (blink_config.isNull() || !webrtc_config) |
| 189 | |
| 190 // When we don't have WebRTCConfiguration, treat it as a special case where we | |
| 191 // should generate local host candidate. This will only be honored if | |
| 192 // enable_multiple_routes is disabled. | |
| 193 if (blink_config.isNull()) { | |
| 194 webrtc_config->enable_localhost_ice_candidate = true; | |
| 195 return; | 189 return; |
| 196 } | 190 for (size_t i = 0; i < blink_config.numberOfServers(); ++i) { |
| 197 | 191 webrtc::PeerConnectionInterface::IceServer server; |
| 198 if (blink_config.iceServers().isNull()) { | 192 const blink::WebRTCICEServer& webkit_server = |
| 199 // Same as when iceServers is undefined or unspecified. | 193 blink_config.server(i); |
| 200 webrtc_config->enable_localhost_ice_candidate = true; | 194 server.username = |
| 201 } else { | 195 base::UTF16ToUTF8(base::StringPiece16(webkit_server.username())); |
| 202 for (size_t i = 0; i < blink_config.iceServers().numberOfServers(); ++i) { | 196 server.password = |
| 203 webrtc::PeerConnectionInterface::IceServer server; | 197 base::UTF16ToUTF8(base::StringPiece16(webkit_server.credential())); |
| 204 const blink::WebRTCICEServer& webkit_server = | 198 server.uri = webkit_server.uri().spec(); |
| 205 blink_config.iceServers().server(i); | 199 webrtc_config->servers.push_back(server); |
| 206 server.username = | |
| 207 base::UTF16ToUTF8(base::StringPiece16(webkit_server.username())); | |
| 208 server.password = | |
| 209 base::UTF16ToUTF8(base::StringPiece16(webkit_server.credential())); | |
| 210 server.uri = webkit_server.uri().spec(); | |
| 211 webrtc_config->servers.push_back(server); | |
| 212 } | |
| 213 } | 200 } |
| 214 | 201 |
| 215 switch (blink_config.iceTransports()) { | 202 switch (blink_config.iceTransports()) { |
| 216 case blink::WebRTCIceTransportsNone: | 203 case blink::WebRTCIceTransportsNone: |
| 217 webrtc_config->type = webrtc::PeerConnectionInterface::kNone; | 204 webrtc_config->type = webrtc::PeerConnectionInterface::kNone; |
| 218 break; | 205 break; |
| 219 case blink::WebRTCIceTransportsRelay: | 206 case blink::WebRTCIceTransportsRelay: |
| 220 webrtc_config->type = webrtc::PeerConnectionInterface::kRelay; | 207 webrtc_config->type = webrtc::PeerConnectionInterface::kRelay; |
| 221 break; | 208 break; |
| 222 case blink::WebRTCIceTransportsAll: | 209 case blink::WebRTCIceTransportsAll: |
| (...skipping 1404 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1627 } | 1614 } |
| 1628 | 1615 |
| 1629 void RTCPeerConnectionHandler::ResetUMAStats() { | 1616 void RTCPeerConnectionHandler::ResetUMAStats() { |
| 1630 DCHECK(thread_checker_.CalledOnValidThread()); | 1617 DCHECK(thread_checker_.CalledOnValidThread()); |
| 1631 num_local_candidates_ipv6_ = 0; | 1618 num_local_candidates_ipv6_ = 0; |
| 1632 num_local_candidates_ipv4_ = 0; | 1619 num_local_candidates_ipv4_ = 0; |
| 1633 ice_connection_checking_start_ = base::TimeTicks(); | 1620 ice_connection_checking_start_ = base::TimeTicks(); |
| 1634 memset(ice_state_seen_, 0, sizeof(ice_state_seen_)); | 1621 memset(ice_state_seen_, 0, sizeof(ice_state_seen_)); |
| 1635 } | 1622 } |
| 1636 } // namespace content | 1623 } // namespace content |
| OLD | NEW |