Base renderer class. More...

#import <AERenderer.h>

Inherits NSObject.

Protected Member Functions

(void) - AERendererRun
 Perform one pass of the render loop.
 

Properties

AERenderLoopBlock _Nonnull block
 The output loop block.
 
double sampleRate
 The sample rate.
 
int numberOfOutputChannels
 The number of output channels.
 
BOOL isOffline
 Whether rendering is offline (faster than realtime), default NO.
 
AEBufferStack *_Nonnull stack
 Buffer stack.
 

Detailed Description

Base renderer class.

A renderer is responsible for driving the main processing loop, which is the central point for audio generation and processing. A sub-renderer may also be used, which can drive an intermediate render loop, such as for a variable-speed module.

Renderers can provide an interface with the system audio output, or offline rendering to file, offline analysis, conversion, etc.

Use this class by allocating an instance, then assigning a block to the 'block' property, which will be invoked during audio generation, usually on the audio render thread. You may assign new blocks to this property at any time, and assignment will be thread-safe.

Method Documentation

- (void) AERendererRun (__unsafe_unretained AERenderer *_Nonnull)  renderer
(const AudioBufferList *_Nonnull)  bufferList
(UInt32)  frames
(const AudioTimeStamp *_Nonnull)  timestamp 

Perform one pass of the render loop.

Parameters
rendererThe renderer instance
bufferListAn AudioBufferList to write audio to. If mData pointers are NULL, will set these to the top buffer's mData pointers instead.
framesThe number of frames to process
timestampThe timestamp of the current period

Property Documentation

- (AERenderLoopBlock _Nonnull) block
readwritenonatomiccopy

The output loop block.

Assignment is thread-safe.

- (double) sampleRate
readwritenonatomicassign

The sample rate.

- (int) numberOfOutputChannels
readwritenonatomicassign

The number of output channels.

- (BOOL) isOffline
readwritenonatomicassign

Whether rendering is offline (faster than realtime), default NO.

- (AEBufferStack* _Nonnull) stack
readnonatomicassign

Buffer stack.


The documentation for this class was generated from the following file: