Index: webrtc/modules/audio_processing/echo_control_mobile_impl.h |
diff --git a/webrtc/modules/audio_processing/echo_control_mobile_impl.h b/webrtc/modules/audio_processing/echo_control_mobile_impl.h |
index dc1b72c559db829ea0d5386c6e16881a4babb7de..571de36add8483b74fee43e99bdd8803b3f915f3 100644 |
--- a/webrtc/modules/audio_processing/echo_control_mobile_impl.h |
+++ b/webrtc/modules/audio_processing/echo_control_mobile_impl.h |
@@ -31,7 +31,7 @@ class EchoControlMobileImpl : public EchoControlMobile { |
~EchoControlMobileImpl() override; |
- int ProcessRenderAudio(const AudioBuffer* audio); |
+ void ProcessRenderAudio(rtc::ArrayView<const int16_t> packed_render_audio); |
int ProcessCaptureAudio(AudioBuffer* audio, int stream_delay_ms); |
// EchoControlMobile implementation. |
@@ -43,8 +43,13 @@ class EchoControlMobileImpl : public EchoControlMobile { |
size_t num_reverse_channels, |
size_t num_output_channels); |
- // Reads render side data that has been queued on the render call. |
- void ReadQueuedRenderData(); |
+ static void PackRenderAudioBuffer(const AudioBuffer* audio, |
+ size_t num_output_channels, |
+ size_t num_channels, |
+ std::vector<int16_t>* packed_buffer); |
+ |
+ static size_t NumCancellersRequired(size_t num_output_channels, |
+ size_t num_reverse_channels); |
private: |
class Canceller; |
@@ -57,9 +62,6 @@ class EchoControlMobileImpl : public EchoControlMobile { |
int SetEchoPath(const void* echo_path, size_t size_bytes) override; |
int GetEchoPath(void* echo_path, size_t size_bytes) const override; |
- size_t num_handles_required() const; |
- |
- void AllocateRenderQueue(); |
int Configure(); |
rtc::CriticalSection* const crit_render_ ACQUIRED_BEFORE(crit_capture_); |
@@ -72,17 +74,6 @@ class EchoControlMobileImpl : public EchoControlMobile { |
unsigned char* external_echo_path_ GUARDED_BY(crit_render_) |
GUARDED_BY(crit_capture_); |
- size_t render_queue_element_max_size_ GUARDED_BY(crit_render_) |
- GUARDED_BY(crit_capture_); |
- |
- std::vector<int16_t> render_queue_buffer_ GUARDED_BY(crit_render_); |
- std::vector<int16_t> capture_queue_buffer_ GUARDED_BY(crit_capture_); |
- |
- // Lock protection not needed. |
- std::unique_ptr< |
- SwapQueue<std::vector<int16_t>, RenderQueueItemVerifier<int16_t>>> |
- render_signal_queue_; |
- |
std::vector<std::unique_ptr<Canceller>> cancellers_; |
std::unique_ptr<StreamProperties> stream_properties_; |