Chromium Code Reviews| Index: remoting/protocol/session_config.cc |
| diff --git a/remoting/protocol/session_config.cc b/remoting/protocol/session_config.cc |
| index 528d96c400268959a7ef07d54421c6b4287c9f81..9594c45129de6c1e6ac54dfe1b4dde44d5cc594f 100644 |
| --- a/remoting/protocol/session_config.cc |
| +++ b/remoting/protocol/session_config.cc |
| @@ -22,7 +22,9 @@ ChannelConfig::ChannelConfig(TransportType transport, int version, Codec codec) |
| } |
| bool ChannelConfig::operator==(const ChannelConfig& b) const { |
| - return transport == b.transport && version == b.version && codec == b.codec; |
| + return transport == b.transport && |
| + version == b.version && |
| + codec == b.codec; |
| } |
| void ChannelConfig::Reset() { |
| @@ -43,6 +45,9 @@ SessionConfig SessionConfig::GetDefault() { |
| result.set_video_config(ChannelConfig(ChannelConfig::TRANSPORT_STREAM, |
| kDefaultStreamVersion, |
| ChannelConfig::CODEC_VP8)); |
| + result.set_audio_config(ChannelConfig(ChannelConfig::TRANSPORT_STREAM, |
| + kDefaultStreamVersion, |
| + ChannelConfig::CODEC_UNDEFINED)); |
| return result; |
| } |
| @@ -52,7 +57,8 @@ CandidateSessionConfig::CandidateSessionConfig( |
| const CandidateSessionConfig& config) |
| : control_configs_(config.control_configs_), |
| event_configs_(config.event_configs_), |
| - video_configs_(config.video_configs_) { |
| + video_configs_(config.video_configs_), |
| + audio_configs_(config.audio_configs_) { |
| } |
| CandidateSessionConfig::~CandidateSessionConfig() { } |
| @@ -63,19 +69,23 @@ bool CandidateSessionConfig::Select( |
| ChannelConfig control_config; |
| ChannelConfig event_config; |
| ChannelConfig video_config; |
| + ChannelConfig audio_config; |
| if (!SelectCommonChannelConfig( |
| control_configs_, client_config->control_configs_, &control_config) || |
| !SelectCommonChannelConfig( |
| event_configs_, client_config->event_configs_, &event_config) || |
| !SelectCommonChannelConfig( |
| - video_configs_, client_config->video_configs_, &video_config)) { |
| + video_configs_, client_config->video_configs_, &video_config) || |
| + !SelectCommonChannelConfig( |
| + audio_configs_, client_config->audio_configs_, &audio_config)) { |
| return false; |
| } |
| result->set_control_config(control_config); |
| result->set_event_config(event_config); |
| result->set_video_config(video_config); |
| + result->set_audio_config(audio_config); |
| return true; |
| } |
| @@ -85,19 +95,22 @@ bool CandidateSessionConfig::IsSupported( |
| return |
| IsChannelConfigSupported(control_configs_, config.control_config()) && |
| IsChannelConfigSupported(event_configs_, config.event_config()) && |
| - IsChannelConfigSupported(video_configs_, config.video_config()); |
| + IsChannelConfigSupported(video_configs_, config.video_config()) && |
| + IsChannelConfigSupported(audio_configs_, config.audio_config()); |
| } |
| bool CandidateSessionConfig::GetFinalConfig(SessionConfig* result) const { |
| if (control_configs_.size() != 1 || |
| event_configs_.size() != 1 || |
| - video_configs_.size() != 1) { |
| + video_configs_.size() != 1 || |
| + audio_configs_.size() != 1) { |
| return false; |
| } |
| result->set_control_config(control_configs_.front()); |
| result->set_event_config(event_configs_.front()); |
| result->set_video_config(video_configs_.front()); |
| + result->set_audio_config(audio_configs_.front()); |
| return true; |
| } |
| @@ -142,6 +155,7 @@ scoped_ptr<CandidateSessionConfig> CandidateSessionConfig::CreateFrom( |
| result->mutable_control_configs()->push_back(config.control_config()); |
| result->mutable_event_configs()->push_back(config.event_config()); |
| result->mutable_video_configs()->push_back(config.video_config()); |
| + result->mutable_audio_configs()->push_back(config.audio_config()); |
| return result.Pass(); |
| } |
| @@ -160,6 +174,14 @@ scoped_ptr<CandidateSessionConfig> CandidateSessionConfig::CreateDefault() { |
| ChannelConfig(ChannelConfig::TRANSPORT_STREAM, |
| kDefaultStreamVersion, |
| ChannelConfig::CODEC_VP8)); |
| + result->mutable_audio_configs()->push_back( |
| + ChannelConfig(ChannelConfig::TRANSPORT_STREAM, |
| + kDefaultStreamVersion, |
| + ChannelConfig::CODEC_UNDEFINED)); |
| + result->mutable_audio_configs()->push_back( |
|
Sergey Ulanov
2012/06/21 17:24:56
Please make TRANSPORT_NONE the first audio config
kxing
2012/06/21 18:09:22
Done.
|
| + ChannelConfig(ChannelConfig::TRANSPORT_NONE, |
| + kDefaultStreamVersion, |
| + ChannelConfig::CODEC_UNDEFINED)); |
| return result.Pass(); |
| } |