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 410 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
421 } | 421 } |
422 | 422 |
423 // TODO(sergeyu): Move this to SessionManager? | 423 // TODO(sergeyu): Move this to SessionManager? |
424 // static | 424 // static |
425 scoped_ptr<VideoEncoder> ClientSession::CreateVideoEncoder( | 425 scoped_ptr<VideoEncoder> ClientSession::CreateVideoEncoder( |
426 const protocol::SessionConfig& config) { | 426 const protocol::SessionConfig& config) { |
427 const protocol::ChannelConfig& video_config = config.video_config(); | 427 const protocol::ChannelConfig& video_config = config.video_config(); |
428 | 428 |
429 if (video_config.codec == protocol::ChannelConfig::CODEC_VP8) { | 429 if (video_config.codec == protocol::ChannelConfig::CODEC_VP8) { |
430 return remoting::VideoEncoderVpx::CreateForVP8().PassAs<VideoEncoder>(); | 430 return remoting::VideoEncoderVpx::CreateForVP8().PassAs<VideoEncoder>(); |
| 431 } else if (video_config.codec == protocol::ChannelConfig::CODEC_VP9) { |
| 432 return remoting::VideoEncoderVpx::CreateForVP9().PassAs<VideoEncoder>(); |
431 } | 433 } |
432 | 434 |
433 NOTREACHED(); | 435 NOTREACHED(); |
434 return scoped_ptr<VideoEncoder>(); | 436 return scoped_ptr<VideoEncoder>(); |
435 } | 437 } |
436 | 438 |
437 // static | 439 // static |
438 scoped_ptr<AudioEncoder> ClientSession::CreateAudioEncoder( | 440 scoped_ptr<AudioEncoder> ClientSession::CreateAudioEncoder( |
439 const protocol::SessionConfig& config) { | 441 const protocol::SessionConfig& config) { |
440 const protocol::ChannelConfig& audio_config = config.audio_config(); | 442 const protocol::ChannelConfig& audio_config = config.audio_config(); |
441 | 443 |
442 if (audio_config.codec == protocol::ChannelConfig::CODEC_VERBATIM) { | 444 if (audio_config.codec == protocol::ChannelConfig::CODEC_VERBATIM) { |
443 return scoped_ptr<AudioEncoder>(new AudioEncoderVerbatim()); | 445 return scoped_ptr<AudioEncoder>(new AudioEncoderVerbatim()); |
444 } else if (audio_config.codec == protocol::ChannelConfig::CODEC_OPUS) { | 446 } else if (audio_config.codec == protocol::ChannelConfig::CODEC_OPUS) { |
445 return scoped_ptr<AudioEncoder>(new AudioEncoderOpus()); | 447 return scoped_ptr<AudioEncoder>(new AudioEncoderOpus()); |
446 } | 448 } |
447 | 449 |
448 NOTREACHED(); | 450 NOTREACHED(); |
449 return scoped_ptr<AudioEncoder>(); | 451 return scoped_ptr<AudioEncoder>(); |
450 } | 452 } |
451 | 453 |
452 } // namespace remoting | 454 } // namespace remoting |
OLD | NEW |