16 #ifndef _CODED_AUDIO_FILE_READER_H_ 17 #define _CODED_AUDIO_FILE_READER_H_ 23 #include <QReadWriteLock> 73 void pushBuffer(
float *interleaved,
int sz,
bool final);
float * m_cacheWriteBuffer
std::vector< float > SampleBlock
Reader for audio files using libsndfile.
void pushBufferResampling(float *interleaved, int sz, float ratio, bool final)
int m_cacheWriteBufferIndex
SNDFILE * m_cacheFileWritePtr
int m_cacheWriteBufferSize
void addSamplesToDecodeCache(float **samples, int nframes)
CodedAudioFileReader(CacheMode cacheMode, int targetRate, bool normalised)
virtual ~CodedAudioFileReader()
void pushBufferNonResampling(float *interleaved, int sz)
void pushBuffer(float *interleaved, int sz, bool final)
virtual void getInterleavedFrames(int start, int count, SampleBlock &frames) const
Return interleaved samples for count frames from index start.
WavFileReader * m_cacheFileReader
Serialiser * m_serialiser
bool isDecodeCacheInitialised() const
virtual bool isQuicklySeekable() const
Intermediate cache means all CodedAudioFileReaders are quickly seekable.
void initialiseDecodeCache()
virtual int getNativeRate() const
void startSerialised(QString id)
QReadWriteLock m_dataLock