NetEq4: Removing templatization for AudioMultiVector

This saves approx 6% runtime for neteq4_speed_test.
$ time out/Release/neteq4_speed_test --runtime_ms=50000000

BUG=1363
R=minyue@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/2320006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4885 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
henrik.lundin@webrtc.org
2013-09-30 20:38:44 +00:00
parent 6ad6a07fd3
commit fd11bbfb56
31 changed files with 145 additions and 170 deletions

View File

@ -17,10 +17,10 @@
namespace webrtc {
class SyncBuffer : public AudioMultiVector<int16_t> {
class SyncBuffer : public AudioMultiVector {
public:
SyncBuffer(size_t channels, size_t length)
: AudioMultiVector<int16_t>(channels, length),
: AudioMultiVector(channels, length),
next_index_(length),
end_timestamp_(0),
dtmf_index_(0) {}
@ -34,7 +34,7 @@ class SyncBuffer : public AudioMultiVector<int16_t> {
// the same number of samples from the beginning of the SyncBuffer, to
// maintain a constant buffer size. The |next_index_| is updated to reflect
// the move of the beginning of "future" data.
void PushBack(const AudioMultiVector<int16_t>& append_this);
void PushBack(const AudioMultiVector& append_this);
// Adds |length| zeros to the beginning of each channel. Removes
// the same number of samples from the end of the SyncBuffer, to
@ -56,13 +56,13 @@ class SyncBuffer : public AudioMultiVector<int16_t> {
// and |position| are selected such that the new data would extend beyond the
// end of the current SyncBuffer, the buffer is not extended.
// The |next_index_| is not updated.
virtual void ReplaceAtIndex(const AudioMultiVector<int16_t>& insert_this,
virtual void ReplaceAtIndex(const AudioMultiVector& insert_this,
size_t length,
size_t position);
// Same as the above method, but where all of |insert_this| is written (with
// the same constraints as above, that the SyncBuffer is not extended).
virtual void ReplaceAtIndex(const AudioMultiVector<int16_t>& insert_this,
virtual void ReplaceAtIndex(const AudioMultiVector& insert_this,
size_t position);
// Reads |requested_len| samples from each channel and writes them interleaved