Audio Units - Auval Validation - _step out of range:

DSP, Plugin and Host development discussion.
Post Reply New Topic
RELATED
PRODUCTS

Post

I just spent a massive amount of time configuring my Audio Unit/tweaking the hell out of Apple's examples to run in full-legacy mode - recognized in 32-bit DAWS and those that still use the Carbon .r file. Everything is finally working, but when auval validates the plugin, I get this message and I can't seem to find any information on Google.

--------------------------------------------------
VALIDATING AUDIO UNIT: 'aumu' - 'jsim' - 'AMMC'
--------------------------------------------------
Manufacturer String: Adam Monroe
AudioUnit Name: AmHonky
Component Version: 1.0.0 (0x10000)

* * PASS
--------------------------------------------------
TESTING OPEN TIMES:
COLD:
_step out of range: 0.000000
_step out of range: 0.000000
_step out of range: 0.007032
_step out of range: 0.007032
Time to open AudioUnit: 16.775 ms
WARM:
_step out of range: 0.000000
_step out of range: 0.000000
_step out of range: 0.007032
_step out of range: 0.007032
Time to open AudioUnit: 11.022 ms
FIRST TIME:
Time for initialization: 1931.784 ms

* * PASS

What the hell does _step out of range mean? Is this an auval thing or some weird OS X terminal thing? Excuse my ignorance but I'm really more of a Windows guy who fiddles with OS X From time to time. I suppose it doesn't matter because the plugin validates, but I'd sure like to know what these cryptic messages mean. I'm not doing anything too fancy in my constructor, just getting some paths and calculating a very small array of floats.

BTW, it's probably been said before, but what a pain in the ass! Apple really doesn't want you to build with 32 bit targets. The book I bought on Objective C should have come with some kind of disclaimer: All the nifty stuff we are teaching you about synthesizing @property's, class extensions, and ARC...don't expect to use that if you ever plan on building with legacy support. Sure, it makes sense for most things - as I'm sure most people have 64-bit Macs by now - but we all know there are people out there still using 32-bit DAWS...

Post

My guess would be that "_step" is probably a localization of one of your controls that is sending a value out of range, or lookup table, etc. See if you can find it in a search of your code and connected libraries.

As for the carbon resource file stuff... I include all that as well, just for the sake of older hosts. If you check the blog in my forum signature, I have a few posts up about including legacy support, as well as a working version of Apple's filter demo plugin with the carbon support added (if you need a reference).

Post

Thanks Alex, your blog and example project have already helped me tremendously in regards to porting my stuff over to the Mac. Apple's Audio Unit documentation is really quite sparse, so I appreciate that you've taken it upon yourself to fill in a lot of the knowledge gaps there. In fact, I think I'll kick a couple PayPal bucks your way...

Post

Hey thanks for that! Indeed, the documentation is spotty, and the SDk is expansive, which makes for a steep learning-curve. Most of the programmers on here are much better than I am, so I try to hit the basics in hopes that some smartletons can jump right into pumping more awesome plugins into the world. It would be nice if Apple kept up some 'best practices' example projects though...

The documentation seemed to be more complete in the older ADC help docs, which are only available on older install disks unfortunately. The current ADC help in XCode has some info, but not the detailed breakdown that it used to. They also used to have more Core Audio and AudioUnit examples there as well as in the SDK when it used to be available separately at developer.apple.com/sdk/... which doesn't exist anymore. Those old examples were all written for 32-bit/Carbon, so they were just abandoned, but if you can dig them up they have useful info in the notes and headers. I have a lot of that archived SOMEWHERE, but I don't know the legality of re-posting online. Another resource is the legacy document archive at developer.apple.com/legacy/index.html, which contains a random smattering of documents going back to 1984... not TOO much there, but I found a few useful documents.

MOTU also has a little AU tourture-test app on github called AUExamin. I don't know if it is maintained, but occasionally it catches things that AUVal doesn't.

Post Reply

Return to “DSP and Plugin Development”