| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  *  Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. | 2  *  Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. | 
| 3  * | 3  * | 
| 4  *  Use of this source code is governed by a BSD-style license | 4  *  Use of this source code is governed by a BSD-style license | 
| 5  *  that can be found in the LICENSE file in the root of the source | 5  *  that can be found in the LICENSE file in the root of the source | 
| 6  *  tree. An additional intellectual property rights grant can be found | 6  *  tree. An additional intellectual property rights grant can be found | 
| 7  *  in the file PATENTS.  All contributing project authors may | 7  *  in the file PATENTS.  All contributing project authors may | 
| 8  *  be found in the AUTHORS file in the root of the source tree. | 8  *  be found in the AUTHORS file in the root of the source tree. | 
| 9  */ | 9  */ | 
| 10 | 10 | 
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 56         } | 56         } | 
| 57       } | 57       } | 
| 58     } | 58     } | 
| 59   } | 59   } | 
| 60   return true; | 60   return true; | 
| 61 } | 61 } | 
| 62 | 62 | 
| 63 }  // namespace | 63 }  // namespace | 
| 64 | 64 | 
| 65 void AecDumpBasedSimulator::PrepareProcessStreamCall( | 65 void AecDumpBasedSimulator::PrepareProcessStreamCall( | 
| 66     const webrtc::audioproc::Stream& msg) { | 66     const webrtc::audioproc::Stream& msg, | 
|  | 67     bool* set_stream_analog_level_called) { | 
| 67   if (msg.has_input_data()) { | 68   if (msg.has_input_data()) { | 
| 68     // Fixed interface processing. | 69     // Fixed interface processing. | 
| 69     // Verify interface invariance. | 70     // Verify interface invariance. | 
| 70     RTC_CHECK(interface_used_ == InterfaceType::kFixedInterface || | 71     RTC_CHECK(interface_used_ == InterfaceType::kFixedInterface || | 
| 71               interface_used_ == InterfaceType::kNotSpecified); | 72               interface_used_ == InterfaceType::kNotSpecified); | 
| 72     interface_used_ = InterfaceType::kFixedInterface; | 73     interface_used_ = InterfaceType::kFixedInterface; | 
| 73 | 74 | 
| 74     // Populate input buffer. | 75     // Populate input buffer. | 
| 75     RTC_CHECK_EQ(sizeof(fwd_frame_.data_[0]) * fwd_frame_.samples_per_channel_ * | 76     RTC_CHECK_EQ(sizeof(fwd_frame_.data_[0]) * fwd_frame_.samples_per_channel_ * | 
| 76                      fwd_frame_.num_channels_, | 77                      fwd_frame_.num_channels_, | 
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 120     } | 121     } | 
| 121   } else { | 122   } else { | 
| 122     ap_->set_stream_key_pressed(*settings_.use_ts); | 123     ap_->set_stream_key_pressed(*settings_.use_ts); | 
| 123   } | 124   } | 
| 124 | 125 | 
| 125   // TODO(peah): Add support for controlling the analog level via the | 126   // TODO(peah): Add support for controlling the analog level via the | 
| 126   // command-line. | 127   // command-line. | 
| 127   if (msg.has_level()) { | 128   if (msg.has_level()) { | 
| 128     RTC_CHECK_EQ(AudioProcessing::kNoError, | 129     RTC_CHECK_EQ(AudioProcessing::kNoError, | 
| 129                  ap_->gain_control()->set_stream_analog_level(msg.level())); | 130                  ap_->gain_control()->set_stream_analog_level(msg.level())); | 
|  | 131     *set_stream_analog_level_called = true; | 
|  | 132   } else { | 
|  | 133     *set_stream_analog_level_called = false; | 
| 130   } | 134   } | 
| 131 } | 135 } | 
| 132 | 136 | 
| 133 void AecDumpBasedSimulator::VerifyProcessStreamBitExactness( | 137 void AecDumpBasedSimulator::VerifyProcessStreamBitExactness( | 
| 134     const webrtc::audioproc::Stream& msg) { | 138     const webrtc::audioproc::Stream& msg) { | 
| 135   if (bitexact_output_) { | 139   if (bitexact_output_) { | 
| 136     if (interface_used_ == InterfaceType::kFixedInterface) { | 140     if (interface_used_ == InterfaceType::kFixedInterface) { | 
| 137       bitexact_output_ = VerifyFixedBitExactness(msg, fwd_frame_); | 141       bitexact_output_ = VerifyFixedBitExactness(msg, fwd_frame_); | 
| 138     } else { | 142     } else { | 
| 139       bitexact_output_ = VerifyFloatBitExactness(msg, out_config_, *out_buf_); | 143       bitexact_output_ = VerifyFloatBitExactness(msg, out_config_, *out_buf_); | 
| (...skipping 360 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 500   } | 504   } | 
| 501 | 505 | 
| 502   SetupBuffersConfigsOutputs( | 506   SetupBuffersConfigsOutputs( | 
| 503       msg.sample_rate(), output_sample_rate, msg.reverse_sample_rate(), | 507       msg.sample_rate(), output_sample_rate, msg.reverse_sample_rate(), | 
| 504       reverse_output_sample_rate, msg.num_input_channels(), num_output_channels, | 508       reverse_output_sample_rate, msg.num_input_channels(), num_output_channels, | 
| 505       msg.num_reverse_channels(), num_reverse_output_channels); | 509       msg.num_reverse_channels(), num_reverse_output_channels); | 
| 506 } | 510 } | 
| 507 | 511 | 
| 508 void AecDumpBasedSimulator::HandleMessage( | 512 void AecDumpBasedSimulator::HandleMessage( | 
| 509     const webrtc::audioproc::Stream& msg) { | 513     const webrtc::audioproc::Stream& msg) { | 
| 510   PrepareProcessStreamCall(msg); | 514   bool set_stream_analog_level_called = false; | 
|  | 515   PrepareProcessStreamCall(msg, &set_stream_analog_level_called); | 
| 511   ProcessStream(interface_used_ == InterfaceType::kFixedInterface); | 516   ProcessStream(interface_used_ == InterfaceType::kFixedInterface); | 
|  | 517   if (set_stream_analog_level_called) { | 
|  | 518     // Call stream analog level to ensure that any side-effects are triggered. | 
|  | 519     (void)ap_->gain_control()->stream_analog_level(); | 
|  | 520   } | 
|  | 521 | 
| 512   VerifyProcessStreamBitExactness(msg); | 522   VerifyProcessStreamBitExactness(msg); | 
| 513 } | 523 } | 
| 514 | 524 | 
| 515 void AecDumpBasedSimulator::HandleMessage( | 525 void AecDumpBasedSimulator::HandleMessage( | 
| 516     const webrtc::audioproc::ReverseStream& msg) { | 526     const webrtc::audioproc::ReverseStream& msg) { | 
| 517   PrepareReverseProcessStreamCall(msg); | 527   PrepareReverseProcessStreamCall(msg); | 
| 518   ProcessReverseStream(interface_used_ == InterfaceType::kFixedInterface); | 528   ProcessReverseStream(interface_used_ == InterfaceType::kFixedInterface); | 
| 519 } | 529 } | 
| 520 | 530 | 
| 521 }  // namespace test | 531 }  // namespace test | 
| 522 }  // namespace webrtc | 532 }  // namespace webrtc | 
| OLD | NEW | 
|---|