AUComponent.h 、または Audio Unit Component Services Reference より、iOS で使用可能な Audio Unit のサブタイプ を抜き出してみました。
概要説明つき。(ただし RemoteIO のようによく知られているものや、名称から役割が明らかなものは省略)
利用可能なiOSバージョンも付記してあります。これを見ると、iOS 5 でエフェクトが大量に追加され、iOS 6 でもコンバーター/ミキサーまわりが強化されたようです(個人的には delay の追加も嬉しい)。
##kAudioUnitType_Output
- kAudioUnitSubType_GenericOutput
A generic output unit provides the start/stop API, and provides the basic
services to convert Linear PCM formats.
- kAudioUnitSubType_RemoteIO
- kAudioUnitSubType_VoiceProcessingIO
This audio unit can do input as well as output. Bus 0 is used for the output
side, bus 1 is used to get audio input (thus, on the iPhone, it works in a
very similar way to the Remote I/O). This audio unit does signal processing on
the incoming audio (taking out any of the audio that is played from the device
at a given time from the incoming audio).
##kAudioUnitType_MusicDevice
- kAudioUnitSubType_Sampler
- iOS 5.0 and later.
##kAudioUnitType_FormatConverter
- kAudioUnitSubType_AUConverter
- kAudioUnitSubType_Varispeed
An audio unit that can be used to control playback rate (as the rate is faster,
the pitch is higher). It provides a generic view, so can be used in both a UI
and programmatic context. It also comes in an Offline version so can be used
to process audio files.
-
iOS 5.0 and later.
-
kAudioUnitSubType_DeferredRenderer
An audio unit that is used to get its input from a separate thread than the
thread that its render method is called. It thus allows an application to
introduce multiple threads into a rendering graph. There is a buffer sized
delay introduced between the input and output
-
iOS 6.0 and later.
-
kAudioUnitSubType_Splitter
An audio unit that provides 2 output buses and 1 input bus. The audio unit
splits (duplicates) the input signal to the two output buses
-
iOS 6.0 and later.
-
kAudioUnitSubType_Merger
An audio unit that provides 2 input buses and 2 output bus. The audio unit
merges the two inputs to the single output
-
iOS 6.0 and later.
-
kAudioUnitSubType_NewTimePitch
An audio unit that provides good quality time stretching and pitch shifting
while still being very fast.
-
iOS 6.0 and later.
-
kAudioUnitSubType_AUiPodTimeOther
An audio unit that provides time domain time stretching.
-
iOS 5.0 and later.
-
kAudioUnitSubType_AUiPodTime
An audio unit that provides simple (and limited) control over playback rate
and time.
##kAudioUnitType_Effect
- kAudioUnitSubType_PeakLimiter
- iOS 5.0 and later.
- kAudioUnitSubType_DynamicsProcessor
- iOS 5.0 and later.
- kAudioUnitSubType_LowPassFilter
- iOS 5.0 and later.
- kAudioUnitSubType_HighPassFilter
- iOS 5.0 and later.
- kAudioUnitSubType_BandPassFilter
- iOS 5.0 and later.
- kAudioUnitSubType_HighShelfFilter
- iOS 5.0 and later.
- kAudioUnitSubType_LowShelfFilter
- iOS 5.0 and later.
- kAudioUnitSubType_ParametricEQ
- iOS 5.0 and later.
- kAudioUnitSubType_Distortion
- iOS 5.0 and later.
- kAudioUnitSubType_Delay
- iOS 6.0 and later.
- kAudioUnitSubType_Reverb2
- iOS 5.0 and later.
- kAudioUnitSubType_AUiPodEQ
- kAudioUnitSubType_NBandEQ
- iOS 5.0 and later.
- kAudioUnitSubType_SampleDelay
- Available in iOS 8.0 and later.
An audio unit that provides a time delay for a specified number of samples.
##kAudioUnitType_Mixer
- kAudioUnitSubType_MultiChannelMixer
- kAudioUnitSubType_MatrixMixer
An audio unit that can have any number of input and output buses with any number of channels on each bus. You configure the mix using a matrix of channels with a separate input level control for each channel. The audio unit also provides individual level control for each input-channel-to-output-channel combination, as well as level control for each output channel. Finally, the audio unit provides a global level control for the matrix as a whole.
- iOS 6.0 and later
- kAudioUnitSubType_AU3DMixerEmbedded
- Deprecated in iOS 9.0
##kAudioUnitType_Generator
- kAudioUnitSubType_ScheduledSoundPlayer
A generator unit that can be used to schedule slices of audio to be played at specified times. The audio is scheduled using the time stamps for the render operation and can be scheduled from any thread.
-
iOS 5.0 and later
-
kAudioUnitSubType_AudioFilePlayer
A generator unit that is used to play a file. In OS X it presents a custom UI so can be used in a UI context as well as in a programmatic context.
- iOS 5.0 and later
##関連記事