I'm completely stymied by AVAudioUnitGenerator.
After hours of piecing together clues from sparse documentation and example code, I'm under the impression that this class is a no-op (on iOS particularly).
Anyone have any idea why it's even there?
I think I have a slightly better understanding of the AVAudioNode addition to AVFoundation now: basically, it's a nice layer for constructing a graph in Objective-C. But, it appears like it does nothing in the direction of allowing developers to create custom nodes.
Most of the nodes are there, as far as I can tell, to wrap the system audio units -- effects, sampler, etc. So, what's the deal with AVAudioUnitGenerator? It doesn't appear to have a corresponding system audio unit like the others. Subclassing it is a mystery, because the underlying audio unit returns 10877 when I try to attach a renderCallbackStruct. And from tweets of other audio developers, no one has gotten the thing to do anything.
I sense that if I were developing strictly for OS X, I could build an Audio Unit, give it a manufacturer ID, etc, and instantiate a generator node that references my custom Audio Unit. Rather than trying to attach a renderCallback, I'd probably need to override the cpp Render method. Which leads me to believe that on iOS it's just a placeholder until Apple provides some system Audio Unit tone-generator or something. Same for the instrument subclass -- good if you want to use AUSampler, but not if you want to build your own MIDI responsive instrument unit on iOS. (Would be very happy to be proven wrong here.)
As cordially as possible, I'd also like to say that the state of the documentation is still pretty weak. It really shouldn't be such a puzzle to figure out obvious questions like, "what's this new generator node, and what can I do with it"?
Greg