diff options
author | Joerg Mueller <nexyon@gmail.com> | 2011-06-14 16:13:19 +0400 |
---|---|---|
committer | Joerg Mueller <nexyon@gmail.com> | 2011-06-14 16:13:19 +0400 |
commit | d8974a60f6811faa2872b55eda41b03387614ed1 (patch) | |
tree | a517f14ea860a1c0111fe758c293d9471dca7496 /intern/audaspace/SRC | |
parent | 8ff0c2e10720bd6e583a6b133b75e7bdff27a5f8 (diff) |
3D Audio GSoC:
Changed Readers to top-down architecture instead of bottom-up.
Diffstat (limited to 'intern/audaspace/SRC')
-rw-r--r-- | intern/audaspace/SRC/AUD_SRCResampleReader.cpp | 9 | ||||
-rw-r--r-- | intern/audaspace/SRC/AUD_SRCResampleReader.h | 2 |
2 files changed, 4 insertions, 7 deletions
diff --git a/intern/audaspace/SRC/AUD_SRCResampleReader.cpp b/intern/audaspace/SRC/AUD_SRCResampleReader.cpp index e9a94418b60..42696a1caaa 100644 --- a/intern/audaspace/SRC/AUD_SRCResampleReader.cpp +++ b/intern/audaspace/SRC/AUD_SRCResampleReader.cpp @@ -75,11 +75,10 @@ AUD_SRCResampleReader::~AUD_SRCResampleReader() long AUD_SRCResampleReader::doCallback(float** data) { int length = m_buffer.getSize() / AUD_SAMPLE_SIZE(m_tspecs); - sample_t* buffer; - m_reader->read(length, buffer); + *data = m_buffer.getBuffer(); + m_reader->read(length, *data); - *data = buffer; return length; } @@ -105,15 +104,13 @@ AUD_Specs AUD_SRCResampleReader::getSpecs() const return m_tspecs; } -void AUD_SRCResampleReader::read(int & length, sample_t* & buffer) +void AUD_SRCResampleReader::read(int & length, sample_t* buffer) { int size = length * AUD_SAMPLE_SIZE(m_tspecs); if(m_buffer.getSize() < size) m_buffer.resize(size); - buffer = m_buffer.getBuffer(); - length = src_callback_read(m_src, m_factor, length, buffer); m_position += length; diff --git a/intern/audaspace/SRC/AUD_SRCResampleReader.h b/intern/audaspace/SRC/AUD_SRCResampleReader.h index 21193661911..2d67e636bd7 100644 --- a/intern/audaspace/SRC/AUD_SRCResampleReader.h +++ b/intern/audaspace/SRC/AUD_SRCResampleReader.h @@ -104,7 +104,7 @@ public: virtual int getLength() const; virtual int getPosition() const; virtual AUD_Specs getSpecs() const; - virtual void read(int & length, sample_t* & buffer); + virtual void read(int & length, sample_t* buffer); }; #endif //AUD_SRCRESAMPLEREADER |