Matrix Reverb EXC_BAD_ACCESS
Matrix Reverb EXC_BAD_ACCESS
- Subject: Matrix Reverb EXC_BAD_ACCESS
- From: Ethan Funk <email@hidden>
- Date: Sat, 18 Dec 2010 14:49:47 -0700
I have made a few changes to my application which hosts AU effects in OS X 10.6. Previously, I only allowed AU effects that supported stereo in/out channel configurations. I just made some changes to my code to allow stereo to mono mix-down when a mono in, stereo out AU is inserted into an effects chain in my program. Here is the problem:
I instantiate an Apple Matrix Reverb with a single channel input and two channel output, as it advertises. No errors. I start rendering through it with AudioUnitRender, passing an audio buffer list with two buffers, sized correctly for the number of samples I am requesting from the AU's output. The Matrix Reverb in turn requests samples from it's assigned callback, requesting the same number of samples and passing the callback an audio buffer list with a single buffer (mono input), also sized correctly for the number of samples requested. I fill the buffer with summed samples, and return no error, and the code crashes with a EXC_BAD_ACCESS. The back trace is off in no-mans land in an AUMultibandCompressorEntry call some place at the time of the fault.
If I return an -1 error instead of no error for the AU's callback there is no crash... and of course no audio either. If I eliminate my code to perform the mixdown entirly, and simply return with the passed AudioBufferList untouched in the callback, it still crashes... my callback at this point is not doing anything.
Has any one seen behavior like this before?
AS a side note, I also noticed that the jackos.com:JACK-insert AU advertises itself as a mono in, stereo out AU, but when instantiated and configured for one channel input, two channel output, it's input callback passes a two buffer audio buffer list. Does any one know how I should handle this? Is it a bug in the jack AU? I was planning to use the passed audio buffer list buffer count to indicate if a mix down is required in the AU callback function.
Thanks,
Ethan Funk
http://redmountainradio.co/arsuite/ _______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden