Так как способ для создания экземпляра AVAudioUnit
это:Как я могу подклассы AVAudioUnit?
[AVAudioUnit instantiateWithComponentDescription:componentDescription options:0 completionHandler:^(__kindof AVAudioUnit * _Nullable audioUnit, NSError * _Nullable error) {
}];
Как я должен подкласс AVAudioUnit
? Я попытался это:
[MySubclassOfAVAudioUnit instantiateWithComponentDescription:componentDescription options:0 completionHandler:^(__kindof AVAudioUnit * _Nullable audioUnit, NSError * _Nullable error) {
}];
Но audioUnit
, который возвращается в блок еще типа AVAudioUnit
и НЕ MySubclassOfAVAudioUnit
.
ответ Per ритмической Fistman, я имею в регистрации мой пользовательский AUAudioUnit
подкласс с примером кода Apple:
componentDescription.componentType = kAudioUnitType_Effect;
componentDescription.componentSubType = 0x666c7472; /*'fltr'*/
componentDescription.componentManufacturer = 0x44656d6f; /*'Demo'*/
componentDescription.componentFlags = 0;
componentDescription.componentFlagsMask = 0;
Я хочу, чтобы мой AVAudioUnit
подкласс всегда использовать мой AUAudioUnit
.
Я понял, что мой ответ был неправильным, вы можете использовать только подкласс 'AUAudioUnit' и закрепить его в подходящем подклассе' AVAudioUnit'. См. Мой обновленный ответ. –