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 "remoting/host/client_session.h" | 5 #include "remoting/host/client_session.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/message_loop/message_loop_proxy.h" | 9 #include "base/message_loop/message_loop_proxy.h" |
10 #include "remoting/base/capabilities.h" | 10 #include "remoting/base/capabilities.h" |
(...skipping 255 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
266 // Create a VideoEncoder based on the session's video channel configuration. | 266 // Create a VideoEncoder based on the session's video channel configuration. |
267 scoped_ptr<VideoEncoder> video_encoder = | 267 scoped_ptr<VideoEncoder> video_encoder = |
268 CreateVideoEncoder(connection_->session()->config()); | 268 CreateVideoEncoder(connection_->session()->config()); |
269 | 269 |
270 // Create a VideoScheduler to pump frames from the capturer to the client. | 270 // Create a VideoScheduler to pump frames from the capturer to the client. |
271 video_scheduler_ = new VideoScheduler( | 271 video_scheduler_ = new VideoScheduler( |
272 video_capture_task_runner_, | 272 video_capture_task_runner_, |
273 video_encode_task_runner_, | 273 video_encode_task_runner_, |
274 network_task_runner_, | 274 network_task_runner_, |
275 desktop_environment_->CreateVideoCapturer(), | 275 desktop_environment_->CreateVideoCapturer(), |
| 276 desktop_environment_->CreateMouseCursorMonitor(), |
276 video_encoder.Pass(), | 277 video_encoder.Pass(), |
277 connection_->client_stub(), | 278 connection_->client_stub(), |
278 &mouse_clamping_filter_); | 279 &mouse_clamping_filter_); |
279 | 280 |
280 // Create an AudioScheduler if audio is enabled, to pump audio samples. | 281 // Create an AudioScheduler if audio is enabled, to pump audio samples. |
281 if (connection_->session()->config().is_audio_enabled()) { | 282 if (connection_->session()->config().is_audio_enabled()) { |
282 scoped_ptr<AudioEncoder> audio_encoder = | 283 scoped_ptr<AudioEncoder> audio_encoder = |
283 CreateAudioEncoder(connection_->session()->config()); | 284 CreateAudioEncoder(connection_->session()->config()); |
284 audio_scheduler_ = new AudioScheduler( | 285 audio_scheduler_ = new AudioScheduler( |
285 audio_task_runner_, | 286 audio_task_runner_, |
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
444 return scoped_ptr<AudioEncoder>(new AudioEncoderVerbatim()); | 445 return scoped_ptr<AudioEncoder>(new AudioEncoderVerbatim()); |
445 } else if (audio_config.codec == protocol::ChannelConfig::CODEC_OPUS) { | 446 } else if (audio_config.codec == protocol::ChannelConfig::CODEC_OPUS) { |
446 return scoped_ptr<AudioEncoder>(new AudioEncoderOpus()); | 447 return scoped_ptr<AudioEncoder>(new AudioEncoderOpus()); |
447 } | 448 } |
448 | 449 |
449 NOTREACHED(); | 450 NOTREACHED(); |
450 return scoped_ptr<AudioEncoder>(); | 451 return scoped_ptr<AudioEncoder>(); |
451 } | 452 } |
452 | 453 |
453 } // namespace remoting | 454 } // namespace remoting |
OLD | NEW |