Module base class. More...
#import <AEModule.h>
Inherits NSObject.
Inherited by AEAudiobusInputModule, AEAudioFileRecorderModule, AEAudioUnitInputModule, AEAudioUnitModule, AEMixerModule, AEOscillatorModule, AESplitterModule, and AESubrendererModule.
Instance Methods | |
| (instancetype _Nullable) | - initWithRenderer: |
| Initializer. | |
| (instancetype _Nonnull) | - NS_UNAVAILABLE |
| (void) | - rendererDidChangeSampleRate |
| Notifies the module that the renderer's sample rate has changed. | |
| (void) | - rendererDidChangeNumberOfChannels |
| Notifies the module that the renderer's channel count has changed. | |
Properties | |
| AEModuleProcessFunc _Nonnull | processFunction |
| Process function. | |
| AEModuleIsActiveFunc _Nullable | isActiveFunction |
| Active test function. | |
| AERenderer *_Nullable | renderer |
| The renderer. | |
Module base class.
Modules are the basic processing unit, and all provide a function to perform processing. Processing is invoked by calling AEModuleProcess and passing in the module.
| - (instancetype _Nullable) initWithRenderer: | (AERenderer *_Nullable) | NS_DESIGNATED_INITIALIZER |
Initializer.
| renderer | The renderer. |
Implemented in AEMixerModule, AEBandpassModule, AEDelayModule, AEDistortionModule, AEDynamicsProcessorModule, AEHighPassModule, AEHighShelfModule, AELowPassModule, AELowShelfModule, AEParametricEqModule, AEPeakLimiterModule, and AEReverbModule.
| - (instancetype _Nonnull) NS_UNAVAILABLE |
| - (void) rendererDidChangeSampleRate |
Notifies the module that the renderer's sample rate has changed.
Subclasses may override this method to react to sample rate changes.
| - (void) rendererDidChangeNumberOfChannels |
Notifies the module that the renderer's channel count has changed.
Subclasses may override this method to react to channel count changes.
|
readwritenonatomicassign |
Process function.
All subclasses must set this property to the address of their processing function to be able to process audio.
|
readwritenonatomicassign |
Active test function.
Subclasses may set this property to the address of a function that returns whether or not the module is currently active. If it returns NO, the module is considered inactive and processing can be skipped by client code.
|
readwritenonatomicweak |
The renderer.
This may be re-assigned after initialization; the module will begin tracking the parameters of the new renderer.