AEMixerBuffer.h File Reference
#import <Foundation/Foundation.h>
#import <AudioToolbox/AudioToolbox.h>

Go to the source code of this file.

Classes

class  AEMixerBuffer
 Mixer buffer. More...
 

Macros

#define AEMixerBufferSourceInactive   (UINT32_MAX-1)
 A frame count value indicating an inactive source.
 

Typedefs

typedef void * AEMixerBufferSource
 A source identifier, for use with AEMixerBufferEnqueue.
 
typedef void(* AEMixerBufferSourceRenderCallback )(AEMixerBufferSource source, UInt32 frames, AudioBufferList *audio, const AudioTimeStamp *inTimeStamp, void *userInfo)
 Source render callback.
 
typedef UInt32(* AEMixerBufferSourcePeekCallback )(AEMixerBufferSource source, AudioTimeStamp *outTimestamp, void *userInfo)
 Source peek callback.
 

Macro Definition Documentation

#define AEMixerBufferSourceInactive   (UINT32_MAX-1)

A frame count value indicating an inactive source.

Typedef Documentation

typedef void* AEMixerBufferSource

A source identifier, for use with AEMixerBufferEnqueue.

This can be anything you like, as long as it is not NULL, and is unique to each source.

typedef void(* AEMixerBufferSourceRenderCallback)(AEMixerBufferSource source, UInt32 frames, AudioBufferList *audio, const AudioTimeStamp *inTimeStamp, void *userInfo)

Source render callback.

This is called by AEMixerBuffer when audio for the source is required, if you have provided callbacks for the source via setRenderCallback:peekCallback:userInfo:forSource: .

Parameters
sourceThe source. This can be anything you like, as long as it is not NULL, and is unique to each source.
framesThe number of frames required.
audioThe audio buffer list - audio should be copied into the provided buffers. May be NULL, in which case your render callback should simply discard the requested audio.
inTimeStampThe timestamp that is expected to correspond to the audio rendered.
userInfoThe opaque pointer passed to setRenderCallback:peekCallback:userInfo:forSource: .
typedef UInt32(* AEMixerBufferSourcePeekCallback)(AEMixerBufferSource source, AudioTimeStamp *outTimestamp, void *userInfo)

Source peek callback.

This is called by AEMixerBuffer when it needs to know the status of the source, if you have provided callbacks for the source via setRenderCallback:peekCallback:userInfo:forSource: .

Parameters
sourceThe source. This can be anything you like, as long as it is not NULL, and is unique to each source.
outTimestampOn output, the timestamp of the next audio from the source.
userInfoThe opaque pointer passed to setRenderCallback:peekCallback:userInfo:forSource: .
Returns
The number of available frames. Return the special value AEMixerBufferSourceInactive to indicate an inactive source.