Mercurial > hg > sonic-visualiser
comparison audioio/AudioCallbackPlaySource.h @ 15:cc566264c935
* timestretcher improvements -- simplify API (it can calculate its own
processing block sizes etc)
author | Chris Cannam |
---|---|
date | Wed, 13 Sep 2006 11:56:44 +0000 |
parents | 085f34c73939 |
children | 3715efc38f95 |
comparison
equal
deleted
inserted
replaced
14:085f34c73939 | 15:cc566264c935 |
---|---|
250 TimeStretcherData(size_t channels, float factor, size_t blockSize); | 250 TimeStretcherData(size_t channels, float factor, size_t blockSize); |
251 ~TimeStretcherData(); | 251 ~TimeStretcherData(); |
252 | 252 |
253 float getFactor() const { return m_factor; } | 253 float getFactor() const { return m_factor; } |
254 PhaseVocoderTimeStretcher *getStretcher(size_t channel); | 254 PhaseVocoderTimeStretcher *getStretcher(size_t channel); |
255 float *getOutputBuffer(size_t channel); | 255 // float *getOutputBuffer(size_t channel); |
256 float *getInputBuffer(); | 256 // float *getInputBuffer(); |
257 | 257 |
258 void run(size_t channel); | 258 // void run(size_t channel); |
259 | 259 |
260 protected: | 260 protected: |
261 TimeStretcherData(const TimeStretcherData &); // not provided | 261 TimeStretcherData(const TimeStretcherData &); // not provided |
262 TimeStretcherData &operator=(const TimeStretcherData &); // not provided | 262 TimeStretcherData &operator=(const TimeStretcherData &); // not provided |
263 | 263 |
264 typedef std::pair<PhaseVocoderTimeStretcher *, float *> StretcherBuffer; | 264 std::map<size_t, PhaseVocoderTimeStretcher *> m_stretcher; |
265 std::map<size_t, StretcherBuffer> m_stretcher; | |
266 float *m_stretchInputBuffer; | |
267 float m_factor; | 265 float m_factor; |
268 size_t m_blockSize; | 266 size_t m_blockSize; |
269 }; | 267 }; |
270 | 268 |
271 size_t m_slowdownCounter; | 269 size_t m_slowdownCounter; |