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

Side by Side Diff: remoting/host/client_session.cc

Issue 28183002: Add VP9 encode support to the remoting host. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase. Created 7 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 | Annotate | Revision Log
OLDNEW
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
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
OLDNEW
« remoting/codec/video_encoder_vpx.cc ('K') | « remoting/codec/video_encoder_vpx_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698