Pebble Coding

ソフトウェアエンジニアによるIT技術、数学の備忘録

OSXのAudioUnit自作ガイド

OSXのAudioUnitを自作する場合は、Appleの以下のサンプルソースを参考に作るのが、もっとも早道です。 TremoroUnitというトレモロ効果を与えるサンプルです。

Core Audio Utility Classes

ビルドしてできたTremoro.componentをどこにインストールすればいいかについては、ここに説明があります。 Audio Unit Development Fundamentals

開発中はココでもいいみたいです。

~/Library/Audio/Plug-Ins/Components/

通常のThirdPartyのAudioUnitの置き場所はココのようです。

/Library/Audio/Plug-Ins/Components/

またDAWなどのホストアプリはAPIを使って任意のパスのAudioUnitを登録し利用できるようです。

サンプルプロジェクトのビルドとインストール

  1. StarterAudioUnitExampleフォルダの下のTremoloUnit.xcodeprojを開きます。
  2. TremoroUnitのターゲットを選び、New Copy Files Phaseを追加し、
    Destination: Absolute Path
    Path: ~/Library/Audio/Plug-Ins/Components/
    Name: Tremoro.component
    と設定して、ビルド毎にインストールされるようにしてしまいましょう。

  3. 動作を確認するにはAppleの開発ツールであるAU Labを使います。

AudioUnitのVersion

このAudioUnitのサンプルはVersion2と呼ばれるものでOSXのみで対応しています。 サンプルはC++で書かれています。

iOS9、OSX10.11からVersion3というAudioUnitが追加されます。 AVFoundationにAVAudioUnitというクラスが追加され、少ないコードで作成ができるようになっているようです。 詳細はWWDC2015のセッションビデオSession508

Audio Unit Extensions - WWDC 2015 - Videos - Apple Developer

を見るとよいでしょう。