「iPhone Core Audioプログラミング」(書籍) 発売中

「iPhone Core Audioプログラミング」が発売になりました。

BlogやTwitterを見る限り、ご好評いただいているようで一安心しています。

「これでショートカットできる」、「本当に網羅している」や
「基礎的トピックもしっかり書いてあってよい」という反応をいただきました。

「入門」とはタイトルに入っていないのですが
「Core Audioを始めた当時(2004年)の自分が欲しかった本」
を目指して書いたので、大変うれしく思っています。

さて、実際に購入いただいた方のレビューをご紹介。

O-Planning ゲーム制作のちょっといい話: iPhone Core Audioのバイブル的書籍「iPhone Core Audioプログラミング」発売!!

この書籍のもっとも注目すべきところは、他の書籍では「これくらいなら当たり前の知識だから、他の書籍を見るか、ググってね」とするところを、なんと懇切丁寧に解説していることです。

iPhone Core Audio プログラミング – 丸井綜研

564ページにわたる熱い/厚い解説。まだ熟読したわけではありませんが、読みやすく仕上がっています。iPhoneプログラマでなく、ただMac OS XのCore Audio開発をしたい僕のような人間にも役だってくれそうです。こういう本は後々入手不可能になる可能性がありますので、興味のある人は今のうちに購入しておくべきでしょう。

書籍紹介「iPhone Core Audio プログラミング」 | POPINO BLOG ( ポピノ ブログ )

実際の信号処理のアルゴリズムとかは奥深いので、まだまだ大丈夫だと思いますが、この本で商売あがったりだよーって思ってる人も、多少はいるんじゃないかと思うくらい充実してるお勧めの一冊です。

Objective-Audioさんにもご推薦いただきました。
iPhone Core Audio プログラミング – Objective-Audio

値段は4,200円と、他の入門書と比べてやや高いですが、それだけの価値はあると思います。僕はオーディオメインでプログラミングを勉強してますが、やっぱりその中でも興味があるところに偏って調べていたりするので、読んでみるといろいろ知らないところがたくさんあります。今後iPhoneのオーディオで、忘れていたり、何か新たに調べたくなったときに、役立ってくれる事は確実です。

都内書店を巡ってみましたが、しっかり並んでました。
新宿のジュンク堂書店にOpenGL ES 2.0本を買いに寄ったら、プログラミングコーナーの特集棚(なのかな?)にどどーんと置いていただいていました!

hgei

やっとCore Audioは把握できたので、あとはヴィジュアル面を、というところで、ちょうどOpenGL ES 2.0本が出ていたので買ってきてちょこちょこやってます。
Xcodeのデフォルトのプロジェクトをちょいといじっただけのコードですが、こういうBloomみたいなオーロラっぽいものが高フレームレートで描画できて感動。
Quartzだとこういうのが無理です。

しばらくはQuartz禁止でがんばろうかと。
OpenGL ESがちゃんと理解できるまでどれだけかかることやら・・。

「今の自分」がよいと思える、OpenGLの本がないので、これから数年はOpenGLの攻略を目指そうかな。3D数学をしっかりやらないとですが。

このエントリーをはてなブックマークに追加

8 Comments

  1. TeckIn said:

    iPhone Core Audioプログラミングとても勉強にさせていただいています。
    AudioUnitをつかって周波数を変更するほうほうが書かれていましたが、wavファイルに対して周波数を変更することはできますでしょうか?AudioUnitをつかわなくても、AudioQueueをつかって周波数を変更することもできますでしょうか?本を読んだ中でどうしてもわかりませんでした。ご教示いただけましたら幸いです。

  2. Norihisa Nagano said:

    どうも永野です。

    >AudioUnitをつかって周波数を変更するほうほうが書かれていましたが
    これは何ページのことでしょうか。

    あと、周波数の変更というのは、サンプリングレートの変更の意味でしょうか。
    それともピッチの変更でしょうか。
    AudioUnitをつかって、と書かれているのでおそらくサイン波の周波数を変える処理のことと予測します。
    まず、wavファイルに対してピッチを変更する処理と、サイン波の周波数を変える処理は別モノなので、これは区別して考えてください。

    サウンドファイルの(再生)ピッチの変更でしたら、Core Audioの標準機能では3D Mixer Unitを使うしか方法がありません。
    P334の一番上に書いてありますが、使用例は書いてません。

    これ以外でやるのでしたら、信号処理の本を見て勉強する必要があります。
    ピッチシフトで検索するといいと思います。

  3. TeckIn said:

    お返事ありがとうございます。

    >これは何ページのことでしょうか。

    230ページの部分です。

    3D Mixer Unit調べてみます。ありがとうございます。

    wavファイルのピッチの変更の方法があるのか知りたいです。ピッチシフトでいろいろと検索したのですが、みつからずこの本を予約注文していたのですが、いまいち方法があるのかないのかがわからずにこちらで質問させていただきました。

  4. Norihisa Nagano said:

    サウンドファイルの(再生)ピッチの変更でしたら、Core Audioの標準機能では3D Mixer Unitを使うしか方法がありません。
    で、返信を見るに、ピッチシフトということで
    おそらく再生スピードを変えずにピッチを変更されたいのでしょうから
    これは標準ではできません。
    自分で計算することになるので、信号処理の勉強が必要になってきます。
    そこそこ大変な処理になります。

  5. TeckIn said:

    早速のお返事ありがとうございます。
    はい、再生スピードを変えずにピッチを変更したかったのです。PocketGuitarなんかも結構複雑な処理で鳴らしているのですねぇ。

  6. Dan said:

    初めまして、Danといいます。
    本買わせていただきました、
    大変参考になります!

    それで、
    sampleのFMDrumのコンパイルを行いたかったのですが、
    SimpleFM.mの13行目辺り
    @synthesize carrierFreq;
    @synthesize harmonicityRatio;
    @synthesize modulatorIndex;
    @synthesize duration;
    の部分にコンパイルエラーが出て、エミュレーション環境で
    再生することが出来ませんでした。

    恐縮なのですが、
    解決策などありますでしょうか。

  7. Dan said:

    何度もすみません、
    コンパイルエラーが出る環境は、
    OS3.0以上かもしれません。
    (サンプルが標準としている、2.21の環境が既に手に入らず、
    3.0以上でしか確認できていません)

  8. Norihisa Nagano said:

    永野です。
    10.6からコンパイラによるプロパティのチェックが厳しくなったようです。

    @synthesize carrierFreq;
    @synthesize harmonicityRatio;
    @synthesize modulatorIndex;
    @synthesize duration;

    をコメントアウトしてください。

    http://nagano.monalisa-au.org/?p=1048&cpage=1#comment-6560
    を参照ください。

Leave a Reply

You must be logged in to post a comment.