diff options
author | Joerg Mueller <nexyon@gmail.com> | 2011-06-22 00:14:53 +0400 |
---|---|---|
committer | Joerg Mueller <nexyon@gmail.com> | 2011-06-22 00:14:53 +0400 |
commit | cc71dcc218d9ee4612bfe955be6f00be521be5b1 (patch) | |
tree | 5f868efc11f940b72cdf0e0c5d19f27e7d3067c7 /intern/audaspace/FX/AUD_ReverseReader.cpp | |
parent | 7ba4362c72c3ccd4763762414bd928682a51b7ce (diff) |
3D Audio GSoC:
Streaming improved.
Diffstat (limited to 'intern/audaspace/FX/AUD_ReverseReader.cpp')
-rw-r--r-- | intern/audaspace/FX/AUD_ReverseReader.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/intern/audaspace/FX/AUD_ReverseReader.cpp b/intern/audaspace/FX/AUD_ReverseReader.cpp index 3d5828dd129..1a5083d3eb4 100644 --- a/intern/audaspace/FX/AUD_ReverseReader.cpp +++ b/intern/audaspace/FX/AUD_ReverseReader.cpp @@ -60,7 +60,7 @@ int AUD_ReverseReader::getPosition() const return m_position; } -void AUD_ReverseReader::read(int & length, sample_t* buffer) +void AUD_ReverseReader::read(int& length, bool& eos, sample_t* buffer) { // first correct the length if(m_position + length > m_length) @@ -69,6 +69,7 @@ void AUD_ReverseReader::read(int & length, sample_t* buffer) if(length <= 0) { length = 0; + eos = true; return; } @@ -81,7 +82,7 @@ void AUD_ReverseReader::read(int & length, sample_t* buffer) // read from reader m_reader->seek(m_length - m_position - len); - m_reader->read(len, buffer); + m_reader->read(len, eos, buffer); // set null if reader didn't give enough data if(len < length) @@ -102,4 +103,5 @@ void AUD_ReverseReader::read(int & length, sample_t* buffer) } m_position += length; + eos = false; } |