Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(195)

Side by Side Diff: content/renderer/media/webrtc/peer_connection_dependency_factory.cc

Issue 1417663004: Create an experiment to study whether too many bindings cause NAT failure (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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/peer_connection_dependency_factory.h" 5 #include "content/renderer/media/webrtc/peer_connection_dependency_factory.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/location.h" 10 #include "base/location.h"
(...skipping 187 matching lines...) Expand 10 before | Expand all | Expand 10 after
198 signaling_thread_(NULL), 198 signaling_thread_(NULL),
199 worker_thread_(NULL), 199 worker_thread_(NULL),
200 chrome_signaling_thread_("Chrome_libJingle_Signaling"), 200 chrome_signaling_thread_("Chrome_libJingle_Signaling"),
201 chrome_worker_thread_("Chrome_libJingle_WorkerThread") { 201 chrome_worker_thread_("Chrome_libJingle_WorkerThread") {
202 TryScheduleStunProbeTrial(); 202 TryScheduleStunProbeTrial();
203 } 203 }
204 204
205 PeerConnectionDependencyFactory::~PeerConnectionDependencyFactory() { 205 PeerConnectionDependencyFactory::~PeerConnectionDependencyFactory() {
206 DVLOG(1) << "~PeerConnectionDependencyFactory()"; 206 DVLOG(1) << "~PeerConnectionDependencyFactory()";
207 DCHECK(pc_factory_ == NULL); 207 DCHECK(pc_factory_ == NULL);
208
209 for (auto prober : stun_probers_) {
210 if (prober)
211 delete prober;
212 }
208 } 213 }
209 214
210 blink::WebRTCPeerConnectionHandler* 215 blink::WebRTCPeerConnectionHandler*
211 PeerConnectionDependencyFactory::CreateRTCPeerConnectionHandler( 216 PeerConnectionDependencyFactory::CreateRTCPeerConnectionHandler(
212 blink::WebRTCPeerConnectionHandlerClient* client) { 217 blink::WebRTCPeerConnectionHandlerClient* client) {
213 // Save histogram data so we can see how much PeerConnetion is used. 218 // Save histogram data so we can see how much PeerConnetion is used.
214 // The histogram counts the number of calls to the JS API 219 // The histogram counts the number of calls to the JS API
215 // webKitRTCPeerConnection. 220 // webKitRTCPeerConnection.
216 UpdateWebRTCMethodCount(WEBKIT_RTC_PEER_CONNECTION); 221 UpdateWebRTCMethodCount(WEBKIT_RTC_PEER_CONNECTION);
217 222
(...skipping 460 matching lines...) Expand 10 before | Expand all | Expand 10 after
678 &PeerConnectionDependencyFactory::StartStunProbeTrialOnWorkerThread, 683 &PeerConnectionDependencyFactory::StartStunProbeTrialOnWorkerThread,
679 base::Unretained(this), params), 684 base::Unretained(this), params),
680 base::TimeDelta::FromMilliseconds(kExperimentStartDelayMs)); 685 base::TimeDelta::FromMilliseconds(kExperimentStartDelayMs));
681 } 686 }
682 687
683 void PeerConnectionDependencyFactory::StartStunProbeTrialOnWorkerThread( 688 void PeerConnectionDependencyFactory::StartStunProbeTrialOnWorkerThread(
684 const std::string& params) { 689 const std::string& params) {
685 DCHECK(chrome_worker_thread_.task_runner()->BelongsToCurrentThread()); 690 DCHECK(chrome_worker_thread_.task_runner()->BelongsToCurrentThread());
686 rtc::NetworkManager::NetworkList networks; 691 rtc::NetworkManager::NetworkList networks;
687 network_manager_->GetNetworks(&networks); 692 network_manager_->GetNetworks(&networks);
688 stun_prober_ = StartStunProbeTrial(networks, params, socket_factory_.get()); 693 StartStunProbeTrial(networks, params, socket_factory_.get(), &stun_probers_);
689 } 694 }
690 695
691 void PeerConnectionDependencyFactory::CreateIpcNetworkManagerOnWorkerThread( 696 void PeerConnectionDependencyFactory::CreateIpcNetworkManagerOnWorkerThread(
692 base::WaitableEvent* event) { 697 base::WaitableEvent* event) {
693 DCHECK(chrome_worker_thread_.task_runner()->BelongsToCurrentThread()); 698 DCHECK(chrome_worker_thread_.task_runner()->BelongsToCurrentThread());
694 network_manager_ = new IpcNetworkManager(p2p_socket_dispatcher_.get()); 699 network_manager_ = new IpcNetworkManager(p2p_socket_dispatcher_.get());
695 event->Signal(); 700 event->Signal();
696 } 701 }
697 702
698 void PeerConnectionDependencyFactory::DeleteIpcNetworkManager() { 703 void PeerConnectionDependencyFactory::DeleteIpcNetworkManager() {
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
755 } 760 }
756 761
757 void PeerConnectionDependencyFactory::EnsureWebRtcAudioDeviceImpl() { 762 void PeerConnectionDependencyFactory::EnsureWebRtcAudioDeviceImpl() {
758 if (audio_device_.get()) 763 if (audio_device_.get())
759 return; 764 return;
760 765
761 audio_device_ = new WebRtcAudioDeviceImpl(); 766 audio_device_ = new WebRtcAudioDeviceImpl();
762 } 767 }
763 768
764 } // namespace content 769 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698