Cinder  0.8.6
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Classes | Namespaces | Functions
Converter.h File Reference
#include "cinder/audio/Buffer.h"
#include <memory>
Include dependency graph for Converter.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  cinder::audio::dsp::Converter
 A platform-specific converter that supports samplerate and channel conversion. More...
 

Namespaces

 cinder
 
 cinder::audio
 
 cinder::audio::dsp
 

Functions

void cinder::audio::dsp::mixBuffers (const Buffer *sourceBuffer, Buffer *destBuffer, size_t numFrames)
 Mixes numFrames frames of sourceBuffer to destBuffer's layout, replacing its content. Channel up or down mixing is applied if necessary. More...
 
void cinder::audio::dsp::mixBuffers (const Buffer *sourceBuffer, Buffer *destBuffer)
 Mixes sourceBuffer to destBuffer's layout, replacing its content. Channel up or down mixing is applied if necessary. Unequal frame counts are permitted (the minimum size will be used). More...
 
void cinder::audio::dsp::sumBuffers (const Buffer *sourceBuffer, Buffer *destBuffer, size_t numFrames)
 Sums numFrames frames of sourceBuffer into destBuffer. Channel up or down mixing is applied if necessary. More...
 
void cinder::audio::dsp::sumBuffers (const Buffer *sourceBuffer, Buffer *destBuffer)
 Sums sourceBuffer into destBuffer. Channel up or down mixing is applied if necessary. Unequal frame counts are permitted (the minimum size will be used). More...
 
template<typename SourceT , typename DestT >
void cinder::audio::dsp::convert (const SourceT *sourceArray, DestT *destArray, size_t length)
 Converts between two arrays of different precision (ex. float to double). length samples are converted. More...
 
template<typename SourceT , typename DestT >
void cinder::audio::dsp::convertBuffer (const BufferT< SourceT > *sourceBuffer, BufferT< DestT > *destBuffer)
 Converts between two BufferT's of different precision (ex. float to double). The number of frames converted is the lesser of the two. The number of channels converted is the lesser of the two. More...
 
template<typename FloatT >
void cinder::audio::dsp::convertInt24ToFloat (const char *sourceArray, FloatT *destArray, size_t length)
 Converts the 24-bit int sourceArray to floating point precision, placing the result in destArray. length samples are converted. More...
 
template<typename FloatT >
void cinder::audio::dsp::convertFloatToInt24 (const FloatT *sourceArray, char *destArray, size_t length)
 Converts the floating point sourceArray to 24-bit int precision, placing the result in destArray. length samples are converted. More...
 
template<typename T >
void cinder::audio::dsp::interleave (const T *nonInterleavedSourceArray, T *interleavedDestArray, size_t numFramesPerChannel, size_t numChannels, size_t numCopyFrames)
 Interleaves numCopyFrames of nonInterleavedSourceArray, placing the result in interleavedDestArray. numFramesPerChannel and numChannels describe the layout of the non-interleaved array. More...
 
template<typename FloatT >
void cinder::audio::dsp::interleave (const FloatT *nonInterleavedFloatSourceArray, int16_t *interleavedInt16DestArray, size_t numFramesPerChannel, size_t numChannels, size_t numCopyFrames)
 Interleaves numCopyFrames of nonInterleavedSourceArray and converts from floating point to 16-bit int precision at the same time, placing the result in interleavedDestArray. numFramesPerChannel and numChannels describe the layout of the non-interleaved array. More...
 
template<typename T >
void cinder::audio::dsp::deinterleave (const T *interleavedSourceArray, T *nonInterleavedDestArray, size_t numFramesPerChannel, size_t numChannels, size_t numCopyFrames)
 De-interleaves numCopyFrames of interleavedSourceArray, placing the result in nonInterleavedDestArray. numFramesPerChannel and numChannels describe the layout of the non-interleaved array. More...
 
template<typename FloatT >
void cinder::audio::dsp::deinterleave (const int16_t *interleavedInt16SourceArray, FloatT *nonInterleavedFloatDestArray, size_t numFramesPerChannel, size_t numChannels, size_t numCopyFrames)
 De-interleaves numCopyFrames of interleavedSourceArray and converts from 16-bit int to floating point precision at the same time, placing the result in nonInterleavedDestArray. numFramesPerChannel and numChannels describe the layout of the non-interleaved array. More...
 
template<typename T >
void cinder::audio::dsp::interleaveBuffer (const BufferT< T > *nonInterleavedSource, BufferInterleavedT< T > *interleavedDest)
 Interleaves nonInterleavedSource, placing the result in interleavedDest. More...
 
template<typename T >
void cinder::audio::dsp::deinterleaveBuffer (const BufferInterleavedT< T > *interleavedSource, BufferT< T > *nonInterleavedDest)
 De-interleaves interleavedSource, placing the result in nonInterleavedDest. More...
 
template<typename T >
void cinder::audio::dsp::interleaveStereoBuffer (const BufferT< T > *nonInterleavedSource, BufferInterleavedT< T > *interleavedDest)
 Interleaves nonInterleavedSource, placing the result in interleavedDest. This method is only slightly faster than interleaveBuffer(), which can handle an arbitrary number of channels. More...
 
template<typename T >
void cinder::audio::dsp::deinterleaveStereoBuffer (const BufferInterleavedT< T > *interleavedSource, BufferT< T > *nonInterleavedDest)
 De-interleaves interleavedSource, placing the result in nonInterleavedDest. This method is only slightly faster than deinterleaveStereoBuffer(), which can handle an arbitrary number of channels. More...