Audio Unit Development

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

Post

Hey Folks!

Within my bachelor thesis my goal is to program an audio unit with xcode (to be precise my goal is a convolution reverb). Because i'm pretty new to programming i have a few basic questions. The first question concerns the stuff i need to program an audio unit. so...what do i need? i've got this:

- c++ skills
- basic audio programming skills
- xcode (which version do you recommend? i'm using snow leopard)
- i read through the audio unit programming guide
- basic knowledge of dft, fft and convolution

i just want to make sure that i dont miss anything.

the next question is about the view. since i'm only familiar with c and c++ i cant use cocoa, am i right? so do i use carbon instead? well, actually the custom view is optional, but it would be nicer to have one.

the third question would be where to get started. although i have c++ and audio programming knowledge (i read a couple of books) this is the first audio unit that i want to program. so can you give me any hints, clues, tips n tricks how to get started the right way?

Thats it for now, i hope that somebody can answer my question.

Thanks very much in advance and please excuse any language errors, i'm from germany ;)

greetings,

patrick

Post

It seems you already are in the right track, I think there even is a gui example with au tutorial stuff but I might remember wrong it was ages since I looked at it.
This is a thesis job so I suspect you might open source the stuff anyhow, then you could use something like JUCE and you will get vst support as a bonus.
David Guda gudaaudio.com

Post

first of all, thanks for the answer.

furthermore i would like to hear, what xcode version somebody would recommend.

and maybe some tips to get started, like "at first you should ... and then ..." cause i'm kind of familiar with the programming language but i never programmed a plug-in before. what i'm looking for is sort of a "to-do-list" in order to reach my goal.

thanks very much!

Post

You might want to read some articles from my blog http://sample-hold.com.

Feel free to pick up any tip from it. As a compensation, I would love you to asset my audio programming thinkings, hence perhaps to help me tackling some pitfalls I met during this past work. That is to say, I'm not very happy with everything inside ;)

Post

bountyhunter2010 wrote:furthermore i would like to hear, what xcode version somebody would recommend.
I second the recommendation of Juce; it will build a complete AU or VST with a "put your DSP code right *here*" comment in the code. It might not hold your hand step-by-step as much as you like, but nothing really will.

I'm using Juce 1.53 with XCode 3.2.6 on Snow Leopard; I haven't done much but it seems to work OK.

I believe the latest revs of Juce support XCode 4.
Image
Don't do it my way.

Post

hey guys thanks for your answers, they helped me out, but i am somewhat confused right now...

okay here's the deal. as i mentioned i want to program a pretty simple convolution audio unit, that just convolves an audio track with an impulse response...

you guys recommended JUCE in order to have somewhat like a foundation to start with. i checked it out and i don't quite get the benefit of it. xcode also provides somthing like a "put your processing code here" section when you start a new project and choose "Audio Unit Effect". or do i miss the whole point of JUCE? is there something else it provides? is it maybe easier to put in my processing code?

i'm totally confused right now what exactly i need (software-wise) in order to reach my goal. :shock:

again, i want to create: simple convolution reverb and OPTIONAL a GUI.

so what would you recommend to start my project (with the option of adding a carbon user interface in hindsight) with? i'm looking for an answer like: xcode version x with JUCE (?) -> audio unit effect with carbon view ...

i don't want to bother you guys but the infinite possibilites to create a new audio unit project made me totally confused and i really don't want to start all over again because i chose the wrong template...

thank you very much!

Post

Well, if gui is not that important, go for the xcode thingie then.
JUCE is probably better if you want a gui that actually looks good and for making not just audio units.
David Guda gudaaudio.com

Post

I'm pleased with the results I get using the Cockos IPlug framework, especially the wdl-ol variant. IPlug supports both Cocoa and Carbon, (it will branch depending on the host). I build on Snow Leopard with XCode 3.
welcome to epoch
enjoy volt

Post

bountyhunter2010 wrote:you guys recommended JUCE in order to have somewhat like a foundation to start with. i checked it out and i don't quite get the benefit of it. xcode also provides somthing like a "put your processing code here" section when you start a new project and choose "Audio Unit Effect". or do i miss the whole point of JUCE? is there something else it provides? is it maybe easier to put in my processing code?
JUCE gives you Windows and Mac, AU, VST, and RTAS plugins from a single code base. If you only care about AU, it doesn't buy you that much (although you might like its GUI editor better or worse than Interface Builder).
Image
Don't do it my way.

Post

I'm pretty much in the same spot as the original poster. I'm trying to get started with my first AU plugin, but with the latest revs of Xcode, the Audio Unit template is gone. I've gone over some of the documentation at apple's site, such as the programming guide, but many of the docs are hopelessly out of date. What I would like is either an up to date Hello World sample (preferably Xcode 4.5 and above) and / or the old templates back ;).

Does anyone here know of an Audio Unit template available anywhere as a 3rd party add on or do I have to roll the entire project from scratch? Any links to good (as in current and maintained) walkthroughs?

Thanks!

Post

glitzerstrahl wrote:I'm pretty much in the same spot as the original poster. I'm trying to get started with my first AU plugin, but with the latest revs of Xcode, the Audio Unit template is gone. I've gone over some of the documentation at apple's site, such as the programming guide, but many of the docs are hopelessly out of date. What I would like is either an up to date Hello World sample (preferably Xcode 4.5 and above) and / or the old templates back ;).

Does anyone here know of an Audio Unit template available anywhere as a 3rd party add on or do I have to roll the entire project from scratch? Any links to good (as in current and maintained) walkthroughs?

Thanks!
This should get you started:
http://sample-hold.com/2011/11/23/getti ... ode-4-2-1/

There is also a FilterDemo you can download from Apple's Developer site that you can look at.

This might also be of help:
http://allthingsarcane.blogspot.co.uk/2 ... de-43.html

Post

Thanks! Yes the filter demo from apple is one of the parts of the SDK that seems to be actively maintained. They even released a tech doc with notes on it's compatibility with Xcode 4.5.

The problem with the other links is that they are actually both out of date. Even the one from earlier this year needs to be updated since Apple no longer ships the audio tools download with the required includes and headers (I think they are part of the frameworks that ship by default with Xcode since 4.4 or 4.5).

Edit: I realize I may be asking for much when complaining about those details of the project setup steps and so on, but it worries me that there are so few online tutorials that are being kept up to date on the subject (at least that I can find...)

Thank you anyway!

Post

Yeah, the current versions of Xcode no longer ship with all the audio tools that it used to. All you need to do is download the Auxiliary Tools from the developer site, which contains CoreAudio as well as the AU libraries and AU Lab for testing.

A bit of a pain I know. But use the sites as a starting point and tweak as needed I guess. It requires a bit of knowledge of the IDE to know how to get it working right.

Post

Thanks for the follow up.

I guess writing an updated tutorial is next on the todo-list then ;-)

If I get it together I'll post a link.

Post Reply

Return to “DSP and Plugin Development”