iPhone/iPod touch向けのシンセを作るには

「楽器アプリの作り方」という連載をたまたま見つけたついでに、いろいろメモ。

楽器アプリの作り方

全く初めての人向けのようです。この連載はSystem Sound Service、Audio Queue Service、OpenALの解説のみで、Audio Unit Servicesとかの説明がありません。ワンショットサンプルを鳴らすだけの単純なアプリは別として、それ以外の普通のソフトシンセを書くならAudio UnitのRemote IOを直接使ってオーディオ入出力するのが普通だと思ってたけど、なんでスルーしてるんだろ。

もっと詳しく

シンセの開発を目的とするなら、こちらのサイトのほうが詳しいです*1。MacやiPhoneのCore Audio関連のことがよくわかります。


もちろん、SDKのCore Audio関連のリファレンスもとりあえず一通り読む。


[追記]
iPhoneにおけるオーディオ関連APIの解説から、最後の方にFMシンセを作ってみるサンプルまで載っている「iPhone Core Audioプログラミング」は必読。

iPhone Core Audioプログラミング

iPhone Core Audioプログラミング


iOS 4.2以降のiPadではCore MIDIが扱えますので、対応を考えてみるのもおもしろいと思います

どうやって作る?

上記のサイトを参考にすれば、オーディオ入出力まわりの理解、既存のオーディオファイルやsine waveの再生などは簡単にできるようになります。

でもその先、肝心のシンセをどうやって作ればいいのかって情報はそんなに多くないんですよね。

たぶん、オープンソースVSTiソースコードを読むのが一番良い勉強方法かなと思います*2。AUよりVSTiのほうが情報が多いし、ディジタル信号処理の根本的な部分に関して、違いは何もありません。



オシレータとか各種エフェクト類のDSP処理のコードが豊富
http://www.musicdsp.org/

DSP/音響プログラミング系リンク集
http://d.hatena.ne.jp/miurror/20071109

*1:ouiLead作った時にお世話になりました。

*2:海外サイトには結構あります。