Please file a radar with a stripped-down test case. The AUMIDISynth and AUSampler both have note-stealing capability, so if this is not working for your case, I will need to reproduce this as you are. (Hint hint if you can do this soon you will have a much better chance of a timely fix).
The AUMIDISynth and AUSampler have **voice** limits, which is different from polyphony limits. If each MIDI note-on generates more than one voice (as many complex patches do), you will hit the voice limit sooner. -DS > On Nov 1, 2016, at 1:36 PM, Archagon <[email protected]> wrote: > > I've run into a pretty major issue with AUMIDISynth > (kAudioUnitSubType_MIDISynth) that I can also replicate in AUSampler. > In brief, I have an SF2 with some samples that play for several > seconds after touch-up, and if I play too many notes in succession, > new notes will simply fail to sound until at least one of the previous > notes has finished attenuating. My understanding is that standard MIDI > polyphony is supposed to "steal" an already-playing note when you go > past the polyphony limit. In AU Lab, using AUSampler, this works > correctly when the polyphony is set to 8. However, if you set the > polyphony to something like 32, the number of "voices" appears to be > capped at 14 and prevents any new keys from sounding past 14 > simultaneously playing notes. > > Here's a demo YouTube video: https://www.youtube.com/watch?v=69KkpKk0OlQ > > Unfortunately, I can't find a way to adjust the polyphony or voice > count when using kAudioUnitSubType_MIDISynth in software, which means > there's no good way to prevent notes from failing to play past the > voice limit. Sending a Sound Off command does reset the voices and > allow me to start playing notes again, but this is a channel command, > so I can only use it as a crude bludgeon to turn off every note > simultaneously. I've considered several approaches to fix the problem > — creating a separate synth for each instrument and putting each note > in its own channel, creating a "double buffer" out of every two > channels and only sending Sound Off to a buffer when they switch, or > maybe just automatically sending Sound Off every 14 notes — but these > feel like hacks. Surely there's a way to get around the issue in a > more conventional way? It would be a shame if I had to code up a > complex meta-synth just because I couldn't tweak a symple polyphony > setting! > > _______________________________________________ > Do not post admin requests to the list. They will be ignored. > Coreaudio-api mailing list ([email protected]) > Help/Unsubscribe/Update your Subscription: > https://lists.apple.com/mailman/options/coreaudio-api/douglas_scott%40apple.com > > This email sent to [email protected] _______________________________________________ Do not post admin requests to the list. They will be ignored. Coreaudio-api mailing list ([email protected]) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/coreaudio-api/archive%40mail-archive.com This email sent to [email protected]
