| Index: webrtc/common_audio/audio_ring_buffer.cc
|
| diff --git a/webrtc/common_audio/audio_ring_buffer.cc b/webrtc/common_audio/audio_ring_buffer.cc
|
| index 0ec53a34b85730106860a947f73454e81ae62f2b..13cf36bfa1f091fa4ad22a31f30c47f99505421b 100644
|
| --- a/webrtc/common_audio/audio_ring_buffer.cc
|
| +++ b/webrtc/common_audio/audio_ring_buffer.cc
|
| @@ -18,6 +18,7 @@
|
| namespace webrtc {
|
|
|
| AudioRingBuffer::AudioRingBuffer(size_t channels, size_t max_frames) {
|
| + buffers_.reserve(channels);
|
| for (size_t i = 0; i < channels; ++i)
|
| buffers_.push_back(WebRtc_CreateBuffer(max_frames, sizeof(float)));
|
| }
|
| @@ -31,7 +32,7 @@ void AudioRingBuffer::Write(const float* const* data, size_t channels,
|
| size_t frames) {
|
| DCHECK_EQ(buffers_.size(), channels);
|
| for (size_t i = 0; i < channels; ++i) {
|
| - size_t written = WebRtc_WriteBuffer(buffers_[i], data[i], frames);
|
| + const size_t written = WebRtc_WriteBuffer(buffers_[i], data[i], frames);
|
| CHECK_EQ(written, frames);
|
| }
|
| }
|
| @@ -39,7 +40,8 @@ void AudioRingBuffer::Write(const float* const* data, size_t channels,
|
| void AudioRingBuffer::Read(float* const* data, size_t channels, size_t frames) {
|
| DCHECK_EQ(buffers_.size(), channels);
|
| for (size_t i = 0; i < channels; ++i) {
|
| - size_t read = WebRtc_ReadBuffer(buffers_[i], nullptr, data[i], frames);
|
| + const size_t read =
|
| + WebRtc_ReadBuffer(buffers_[i], nullptr, data[i], frames);
|
| CHECK_EQ(read, frames);
|
| }
|
| }
|
| @@ -54,9 +56,18 @@ size_t AudioRingBuffer::WriteFramesAvailable() const {
|
| return WebRtc_available_write(buffers_[0]);
|
| }
|
|
|
| -void AudioRingBuffer::MoveReadPosition(int frames) {
|
| +void AudioRingBuffer::MoveReadPositionForward(size_t frames) {
|
| for (auto buf : buffers_) {
|
| - int moved = WebRtc_MoveReadPtr(buf, frames);
|
| + const size_t moved =
|
| + static_cast<size_t>(WebRtc_MoveReadPtr(buf, static_cast<int>(frames)));
|
| + CHECK_EQ(moved, frames);
|
| + }
|
| +}
|
| +
|
| +void AudioRingBuffer::MoveReadPositionBackward(size_t frames) {
|
| + for (auto buf : buffers_) {
|
| + const size_t moved = static_cast<size_t>(
|
| + -WebRtc_MoveReadPtr(buf, -static_cast<int>(frames)));
|
| CHECK_EQ(moved, frames);
|
| }
|
| }
|
|
|