cinder::audio Namespace Reference

Classes

class  LoaderSourceCallback
 
class  Callback
 
class  CircularBuffer
 
class  CocoaCaConverter
 
class  FftProcessorImpl
 
class  FftProcessor
 
class  FftProcessorImplAccelerate
 
class  Input
 
class  InputExc
 
class  InvalidDeviceInputExc
 
class  InputImplAudioUnit
 
class  Io
 
class  Target
 
class  Source
 
class  Loader
 
class  IoException
 
class  IoExceptionFailedLoad
 
class  IoExceptionSourceNotFound
 
class  IoExceptionUnsupportedDataType
 
class  IoExceptionUnsupportedDataFormat
 
struct  IoRegistrar
 
struct  IoRegistrant
 
class  Track
 
class  OutputImpl
 
class  Output
 
class  OutputException
 
class  OutOfTracksException
 
class  TargetOutputImplAudioUnit
 
class  OutputImplAudioUnit
 
class  TargetOutputImplXAudio
 
class  OutputImplXAudio
 
struct  BufferT
 
struct  BufferListT
 
class  PcmBufferT
 
class  PcmBufferException
 
class  InvalidChannelPcmBufferException
 
class  OutOfRangePcmBufferException
 
class  LoaderSourceFile
 
class  SourceFile
 
class  LoaderSourceFileWav
 
class  SourceFileWav
 
class  LoaderSourceFileWindowsMedia
 
class  SourceFileWindowsMedia
 

Typedefs

typedef ComponentDescription AudioComponentDescription
 
typedef std::shared_ptr< class
FftProcessor
FftProcessorRef
 
typedef std::shared_ptr
< InputDevice > 
InputDeviceRef
 
typedef std::shared_ptr< class
Source
SourceRef
 
typedef std::shared_ptr< class
Target
TargetRef
 
typedef std::shared_ptr< class
Loader
LoaderRef
 
typedef HRESULT(* LoaderDataCallback )(void *audioData, uint32_t dataSize, void *track, uint64_t sampleTime, uint32_t sampleDuration)
 
typedef int32_t TrackId
 
typedef std::shared_ptr< class
cinder::audio::Track
TrackRef
 
typedef enum
cinder::audio::ChannelIdentifier 
ChannelIdentifier
 
typedef BufferT< void > BufferGeneric
 
typedef BufferT< uint8_t > Buffer8u
 
typedef BufferT< int8_t > Buffer8i
 
typedef BufferT< uint16_t > Buffer16u
 
typedef BufferT< int16_t > Buffer16i
 
typedef BufferT< int32_t > Buffer32i
 
typedef BufferT< uint32_t > Buffer32u
 
typedef BufferT< float > Buffer32f
 
typedef std::shared_ptr
< BufferT< float > > 
Buffer32fRef
 
typedef BufferListT< void > BufferList
 
typedef BufferListT< float > BufferList32f
 
typedef std::shared_ptr
< BufferList32f
BufferList32fRef
 
typedef PcmBufferT< float > PcmBuffer32f
 
typedef std::shared_ptr
< PcmBuffer32f
PcmBuffer32fRef
 
typedef std::shared_ptr< class
SourceFile
SourceFileRef
 
typedef std::shared_ptr< class
LoaderSourceFile
LoaderSourceFileRef
 
typedef std::shared_ptr< class
SourceFileWav
SourceFileWavRef
 
typedef std::shared_ptr< class
LoaderSourceFileWav
LoaderSourceFileWavRef
 
typedef std::shared_ptr< class
SourceFileWindowsMedia
SourceFileWindowsMediaRef
 
typedef std::shared_ptr< class
LoaderSourceFileWindowsMedia
LoaderSourceFileWindowsMediaRef
 

Enumerations

enum  {
  WAV_FORMAT_UNKOWN = 0x000, WAV_FORMAT_PCM = 0x0001, WAV_FORMAT_MS_ADPCM = 0x0002, WAV_FORMAT_IEEE_FLOAT = 0x0003,
  WAV_FORMAT_ALAW = 0x0006, WAV_FORMAT_MULAW = 0x0007, WAV_FORMAT_DIALOGIC_OKI_ADPCM = 0x0011, WAV_FORMAT_YAMAHA_ADPCM = 0x0016,
  WAV_FORMAT_GSM610 = 0x0031, WAV_FORMAT_G721_ADPCM = 0x0040, WAV_FORMAT_MPEG = 0x0050, WAV_FORMAT_MP3 = 0x0055
}
 
enum  ChannelIdentifier { CHANNEL_FRONT_LEFT = 0, CHANNEL_FRONT_RIGHT = 1 }
 

Functions

std::shared_ptr< float > calculateFft (Buffer32fRef aBuffer, uint16_t aBandCount)
 
void deleteFftBuffer (float *buffer)
 
SourceRef load (const std::string &path, std::string extension="")
 Loads an audio from the file path path. Optional extension parameter allows specification of a file type. For example, "mp3" would force the file to load as a MP3. More...
 
SourceRef load (DataSourceRef dataSource, std::string extension="")
 Loads an audio from dataSource. Optional extension parameter allows specification of a file type. For example, "mp3" would force the file to load as a MP3. More...
 
template<typename T >
void deleteBuffer (BufferT< T > *aBuffer)
 
template<typename T >
std::shared_ptr< BufferListT< T > > createBufferList (uint32_t sampleCount, uint16_t channelCount, bool isInterleaved)
 
template<typename T >
void deleteBufferList (BufferListT< T > *aBufferList)
 
 BOOST_PP_SEQ_FOR_EACH (CREATE_BUFFERLIST_PROTOTYPES,~, AUDIO_DATA_TYPES) template< typename T > PcmBufferT< T >
 
template<typename T >
void readStreamWithEndianess (IStreamRef aIStream, T *param, bool isBigEndian)
 
template<typename T , typename U >
std::shared_ptr< Callback< T, U > > createCallback (T *callbackObj, void(T::*callbackFn)(uint64_t inSampleOffset, uint32_t inSampleCount, BufferT< U > *ioBuffer), bool ownCallbackObj=false, uint32_t aSampleRate=44100, uint16_t aChannelCount=2)
 
void silenceBuffers (BufferList *aBufferList)
 

Variables

const uint32_t gRiffMarker = 'FFIR'
 
const uint32_t gRifxMarker = 'XFIR'
 
const uint32_t gWaveMarker = 'EVAW'
 
const uint32_t gDataMarker = 'atad'
 
const uint32_t gFmtMarker = ' tmf'
 

Typedef Documentation

typedef ComponentDescription cinder::audio::AudioComponentDescription
typedef std::shared_ptr<class FftProcessor> cinder::audio::FftProcessorRef
typedef std::shared_ptr<InputDevice> cinder::audio::InputDeviceRef
typedef std::shared_ptr<class Source> cinder::audio::SourceRef
typedef std::shared_ptr<class Target> cinder::audio::TargetRef
typedef std::shared_ptr<class Loader> cinder::audio::LoaderRef
typedef HRESULT(* cinder::audio::LoaderDataCallback)(void *audioData, uint32_t dataSize, void *track, uint64_t sampleTime, uint32_t sampleDuration)
typedef int32_t cinder::audio::TrackId
typedef std::shared_ptr<class cinder::audio::Track> cinder::audio::TrackRef
typedef BufferT<uint8_t> cinder::audio::Buffer8u
typedef BufferT<uint16_t> cinder::audio::Buffer16u
typedef BufferT<uint32_t> cinder::audio::Buffer32u
typedef std::shared_ptr<BufferT<float> > cinder::audio::Buffer32fRef
typedef std::shared_ptr<PcmBuffer32f> cinder::audio::PcmBuffer32fRef
typedef std::shared_ptr<class SourceFile> cinder::audio::SourceFileRef
typedef std::shared_ptr<class LoaderSourceFile> cinder::audio::LoaderSourceFileRef
typedef std::shared_ptr<class SourceFileWav> cinder::audio::SourceFileWavRef

Enumeration Type Documentation

anonymous enum
Enumerator
WAV_FORMAT_UNKOWN 
WAV_FORMAT_PCM 
WAV_FORMAT_MS_ADPCM 
WAV_FORMAT_IEEE_FLOAT 
WAV_FORMAT_ALAW 
WAV_FORMAT_MULAW 
WAV_FORMAT_DIALOGIC_OKI_ADPCM 
WAV_FORMAT_YAMAHA_ADPCM 
WAV_FORMAT_GSM610 
WAV_FORMAT_G721_ADPCM 
WAV_FORMAT_MPEG 
WAV_FORMAT_MP3 
Enumerator
CHANNEL_FRONT_LEFT 
CHANNEL_FRONT_RIGHT 

Function Documentation

std::shared_ptr< float > cinder::audio::calculateFft ( Buffer32fRef  aBuffer,
uint16_t  aBandCount 
)
void cinder::audio::deleteFftBuffer ( float *  buffer)
SourceRef cinder::audio::load ( const std::string &  path,
std::string  extension 
)

Loads an audio from the file path path. Optional extension parameter allows specification of a file type. For example, "mp3" would force the file to load as a MP3.

SourceRef cinder::audio::load ( DataSourceRef  dataSource,
std::string  extension 
)

Loads an audio from dataSource. Optional extension parameter allows specification of a file type. For example, "mp3" would force the file to load as a MP3.

template<typename T >
void cinder::audio::deleteBuffer ( BufferT< T > *  aBuffer)
template<typename T >
std::shared_ptr< BufferListT< T > > cinder::audio::createBufferList ( uint32_t  sampleCount,
uint16_t  channelCount,
bool  isInterleaved 
)
template<typename T >
void cinder::audio::deleteBufferList ( BufferListT< T > *  aBufferList)
cinder::audio::BOOST_PP_SEQ_FOR_EACH ( CREATE_BUFFERLIST_PROTOTYPES  ,
,
AUDIO_DATA_TYPES   
)
template<typename T >
void cinder::audio::readStreamWithEndianess ( IStreamRef  aIStream,
T *  param,
bool  isBigEndian 
)
template<typename T , typename U >
std::shared_ptr<Callback<T,U> > cinder::audio::createCallback ( T *  callbackObj,
void(T::*)(uint64_t inSampleOffset, uint32_t inSampleCount, BufferT< U > *ioBuffer)  callbackFn,
bool  ownCallbackObj = false,
uint32_t  aSampleRate = 44100,
uint16_t  aChannelCount = 2 
)
void cinder::audio::silenceBuffers ( BufferList *  aBufferList)

Variable Documentation

const uint32_t cinder::audio::gRiffMarker = 'FFIR'
const uint32_t cinder::audio::gRifxMarker = 'XFIR'
const uint32_t cinder::audio::gWaveMarker = 'EVAW'
const uint32_t cinder::audio::gDataMarker = 'atad'
const uint32_t cinder::audio::gFmtMarker = ' tmf'