This document describes audio units and how to create them. Audio units are digital audio plug-ins based on Apple’s world class Core Audio technology for OS X.
Important: This document describes how to design and build version 2 (V2) audio units, which are set to be deprecated in a future operating system release.
All new audio unit development should employ the audio unit V3 API. For current information about the audio unit V3 API, refer to Audio Unit Framework Reference and to the Audio Unit chapter in App Extension Programming Guide.
As a hobbyist or a computer science student, you can design and build your own audio units to make applications like GarageBand do new things with sound.
As a commercial developer, you can create professional quality software components that provide features like filtering, reverb, dynamics processing, and sample-based looping. You can also create simple or elaborate MIDI-based music synthesizers, as well as more technical audio units such as time and pitch shifters and data format converters.
Free Piano comes with Staccato and Auto Sustain Instruments presets. 3 layers of Sounds Piano+ Strings+Pad with Gain controllers. Velocity sensitive and Round Robing Sampling. The Piano has been recorded with 4 Mic pos. ADSR, Low Pass Filter, Tuning, Reverb, Amp and Level Meter. 100% Free Sample based multi platform VST, VST3, Mac and AU Plugins. Rogue Amoeba – Audio Hijack Overlook. One helpful tool built into macOS is a pair of Audio Units (AU’s), Apple’s AUNetSend and AUNetReceive. As the pair of names implies, the pair is comprised of an Audio Sender, and an Audio Receiver. Both the Sender and the Receiver require an Audio Unit Host. An excellent free option is Hosting AU. Part 2: Best Free Audio Editors for Mac 6. WavePad is comprehensive edit audio Mac software that allows you to record and edit audio recordings, music, and voice. WavePad audio editor free download feature makes it more endearing amongst the users. The other features of this free audio editor are-Easy to use interface. These free effect plug-ins are compatible with Mac OS 10.3.9 or later, and with Macs using Intel x86 processors. They can be used in Logic and other Audio Unit host applications.
As part of Core Audio and being integral to OS X, audio units offer a development approach for audio plug-ins that excels in terms of performance, robustness, and ease of deployment. With audio units, you also gain by providing a consistent, simple experience for end-users.
Your target market is wide, including performers, DJs, recording and mastering engineers, and anyone who likes to play with sound on their iMac.
Note: This first version of Audio Unit Programming Guide does not go into depth on some topics important to commercial audio unit developers such as copy protection, parameter automation, and custom views (graphical user interfaces for audio units). Nor does this version provide instruction on developing types of audio units other than the most common type, effect units.
Who Should Read This Document?
To use this document, you should already be familiar with the C programming language. You should be comfortable with using Xcode to create an OS X plug-in as described in the Xcode Overview. For example, you should know about Xcode’s various build options, such as ZeroLink, and when to use them. You should also know how and why to include frameworks and files in the linking phase of an Xcode build.
It’s very helpful in using this document to have enough familiarity with the C++ programming language to read header and implementation files. It’s also helpful to have a basic understanding of the OS X Component Manager as described in Component Manager for QuickTime, as well as a grounding in digital audio coding and audio DSP (digital signal processing).
This document does not address the needs of audio unit host application developers, whose code opens, connects, and uses audio units. Nor is this document an audio unit cookbook. It devotes very few pages to DSP or music synthesis techniques, which work essentially the same way in audio units as in other audio software technologies
Organization of This Document
Depending on your needs and your learning style, you can use this document in the following ways.
If you want to get your hands on building an audio unit right away, go straight to Tutorial: Building a Simple Effect Unit with a Generic View. As you build the audio unit, you can refer to other sections in this document for conceptual information related to what you’re doing.
If you prefer to build your knowledge incrementally, starting with a solid conceptual foundation before seeing the technology in action, read the chapters in order.
If you already have some familiarity with building your own audio units, you may want to go straight to The Audio Unit and Appendix: Audio Unit Class Hierarchy. You might also want to review A Quick Tour of the Core Audio SDK to see if the SDK contains some treasures you haven’t been using until now.
This document contains the following chapters:
Audio Unit Development Fundamentals, a bird's eye view of audio unit development, covering Xcode, the Core Audio SDK, design, development, testing, and deployment
The Audio Unit, design and programming considerations for the part of an audio unit that performs the audio work
The Audio Unit View, a description of the two audio unit view types—generic and custom—as well as an explanation of parameter automation
A Quick Tour of the Core Audio SDK: Taking advantage of the code in the Core Audio SDK is the fastest route to audio unit development
Tutorial: Building a Simple Effect Unit with a Generic View, a tutorial that takes you from zero to a fully functioning effect unit
Appendix: Audio Unit Class Hierarchy, a tour of the audio unit class hierarchy provided by the Core Audio SDK
Making Further Progress in Audio Unit Development
To go forward in developing your own audio units based on what you learn here, you will need:
The ability to develop plug-ins using the C++ programming language, because the audio unit class hierarchy in the Core Audio SDK uses C++.
A grounding in audio DSP, including the requisite mathematics. Alternatively, you can work with someone who can provide DSP code for your audio units, along with someone who can straddle the audio unit and math worlds. For optimum quality and performance of an audio unit, DSP code needs to be correctly incorporated into the audio unit scaffolding.
A grounding in MIDI, if you are developing instrument units.
Required Tools for Audio Unit Development
When you perform a full installation of the current version of OS X, including Xcode Tools, you’ll have everything you need on your system for audio unit development. These items are also available free from Apple’s developer website, http://developer.apple.com:
The latest version of Xcode. The examples in this document use Xcode version 2.4.
The latest OS X header files. The examples in this document use the header files in the 10.4.0 OS X SDK, installed with Apple’s Xcode Tools.
The latest Core Audio development kit. The examples in this document use Core Audio SDK v1.4.3, installed with Apple’s Xcode Tools at this location on your system:
/Developer/Examples/CoreAudio
At least one audio unit hosting application. Apple recommends the AU Lab application, installed with Apple’s Xcode Tools at this location on your system:
/Developer/Applications/Audio/AU Lab
The audio unit validation command-line tool,
auval
, Apple’s validation tool for audio units, provided with OS X.
See Also
As you learn about developing audio units, you may find the following information and tools helpful:
The coreaudio-api mailing list, a very active discussion forum hosted by Apple that covers all aspects of audio unit design and development.
Audio Unit framework API documentation (preliminary), available from the Audio Topic page on Apple’s developer website.
Additional audio unit API reference available in the Core Audio Framework Reference in Apple’s Reference Library.
The TremoloUnit sample project, which corresponds to the audio unit you build in Tutorial: Building a Simple Effect Unit with a Generic View.
Core Audio Overview, which surveys all of the features available in Core Audio, and describes where audio units fit in.
Bundle Programming Guide, which describes the file-system packaging mechanism in OS X used for audio units.
Component Manager Reference, which describes the API of the Component Manager, the OS X technology that manages audio units at the system level. To learn more about the Component Manager you can refer to Component Manager for QuickTime.
Copyright © 2014 Apple Inc. All Rights Reserved. Terms of Use | Privacy Policy | Updated: 2014-07-15
We are now providing Tampura and Shruti instruments as audio plugins, for use with your sound software. The plugins have really good performances and are very useful for a live performance or a recording mix. All our plugins are working in stereo.
To use our tampura and shruti VST instrument plugin, you need a VST 2.4
compatible software. We have tested it successfully with Cubase SX 3.
Mac Audio Converter
We also developed a tanpura and shruti Audio Unit Generator, and a tanpura and shruti Effect Audio Unit Effect. The difference between the two is that the generator doesn’t need any input, while the effect is adding tampura sound to an input. We advise users to use the generator if possible. We have tested them successfully with GarageBand and AU Lab and Digital Performer 5.12.
See our screenshots : Cubase SX 3 - GarageBand - AU Lab
Consult the Plugin compatibility page to see which software have been tested with the plugins.
Important notes:
AIFF and WAVE files are accepted by the plugins for the sound samples
High quality tampura and shruti sound samples are included within the plugins (madhyam and pancham)
The plugins are can run as a demo for a few minutes if you don’t own a license.
Mac Audio Software
Thanks for reporting problems and compatibility issues with your software.