カバンのセレクション
ゼロ・ハリバートン,リモア,吉田カバン正規取扱店
レアもの・ユニークギフト専門店
ボブルビーなど各種グッズ取り扱い
デコーダーを作るにあたり少なくとも音を取り込まなければ、どうにもならない。
ターゲットとするOSなどの開発知識は当然必要であるが、サウンド系APIも必要である。Win32であればDirect Sound、Mac OS Xであれば、Core Audioということになる。
サウンドの取り込みは、APIからのコールバックとなるのであるが、これらはマルチスレッド(MT)で呼ばれてくるので、MTプログラミングが必須となってくる。MTプログラミングというと、セマフォ等のLockオブジェクトの使い方ということになるのだが、それ以外にOSのAPIをMTでちゃんと呼び出せるようになっていないとうまくいかない。UIがらみでのMTは結構はまりやすいように思える(特にMac OS X)。
サウンドの信号処理は、場合によってはかなりのCPUパワーを必要とする場合がある。そのため、いずれ何だかのチューニングが必要となってくる。アルゴリズム的なチューニングだとある程度の限界に達してしまうことが多く、最終的にはアクセラレータのような信号処理に特化したAPIなどを使うことになる。
Mac OS Xだと、Velocity Engineといわれるベクトル演算ユニットがある。これを使うにはvDSPなどAPIを利用する。Velocity Engineなどは、10.4ではAccelerator Frameworkに含まれている。Win32のベクトル演算ライブラリでSSE系を使うものがあればいいが、なければSSE系の命令を使うようにコンパイルするか、直接SSE系のコードを書くことになる。
いずれにしろ、ベクトル演算で計算しておくことは、信号処理のチューニングでは有効であるため、最初からコーディングしておいたほうがよいだろう。
0 件のコメント:
コメントを投稿