AudioComponentDescription searchDesc = { 0, 0, 0, 0, 0 };
AudioComponent comp = NULL;
while (true) {
comp = AudioComponentFindNext(comp, &searchDesc);
if (comp == NULL) break;
AudioComponentDescription desc;
if (AudioComponentGetDescription(comp, &desc)) continue;
if (desc.componentType == kAudioUnitType_Effect) {
CFStringRef stringRef = NULL;
AudioComponentCopyName(comp, &stringRef);
NSString *name = (__bridge_transfer NSString *)stringRef;
NSLog(@"component name %@ ",name);
}
}