開発エンジニアのためのiPhone活用法(4) ―― iPhoneの音楽アプリでシステム・デバックをアシストする
●AudioScope (115円)
AudioScopeという音楽アプリは,オシロスコープ機能とスペクトラム・アナライザ機能のほかに,ソノグラム機能も備えています.これにより,時間当たりの周波数成分と強度を視覚的に確認できます(図3)(3).
図3 AudioScopeのオシロスコープ画面
1ms/divの高速取り込みモード
組み込みシステム開発ではソノグラムはあまり使いませんが,音紋解析では広く用いられます.
AudioScopeに搭載された機能は,縦軸を周波数(下側が低周波,上側が高周波)にして信号の強度を表し,一定の周期で画面をスクロールすることで経過時間当たりのスペクトラムを記録します.また,信号の強度は高くなるに従って,青色から赤色に変化します(図4).
図4 AudioScopeのソノグラム画面
淑野裕香子演奏『G線上のアリア』より.バイオリンの音紋状況を示している
例として,ドの音をピアノ,ギター,フルート,オカリナなどの楽器から出したときの高調波成分には大きな差があります.ソノグラムは周波数成分の差異を時間軸で表示できるため, 結果に対してパターン・マッチングを行うことで,どのような楽器が使われているかを推測できます.
●音楽アプリはこう活用する
今回紹介したアプリは,すべて音楽系のものです.組み込みシステムではスピーカに音を出すという機能は一般的ではありません.多くの場合,曲を演奏する必要はなく,圧電ブザーを使ってパルスをON/OFFする程度です.これを,ここで紹介した音楽アプリの動作の引き金(トリガ)とし,周期タイマの割り込みに使います.機械式リレーがあれば,なお良いでしょう.
Metronome - reloadedは,分オーダで製品の割り込みタイミングを予測する際に使えます.分レベルでどれだけズレが発生しているかが分かります.
ms(ミリ秒)オーダの処理ループをもつ回路であれば,A=440Hzのオシロスコープ機能を使うとよいでしょう.A=440Hzの本来の使い方はチューニング用途で,設定した数値とギターなどの音の間でどれだけズレが発生しているかを確認して弦を張り直します.そのため,セント単位の微調整マーカが用意されており,どの程度の誤差かが分かります.製品運用時に最大割り込み応答時間から逆算した周期をセットしておき,マーカが早いことを示していれば,「割り込み応答の性能を満たしている」ことになります.
A=440Hzと似たような機能を持つAudioScopeは,応答の性能が非常に高い点が特徴です.実際に使うと分かりますが,マイクに入力した瞬間にオシロスコープ機能に波形が表示される様子には驚かされると思います.また操作は非常に簡単で,ほかの二つと違って説明はまったくいりません.オシロスコープの管理画面では,ピンチ操作(2本の指の間を縮めたり広げたりする)により1ms/div~93ms/divの間で切り替えられます.ソノグラム機能への切り替えもワンタッチで行えます.すぐに音を取り込み始めてくれるので,筆者は大変助かっています.
●アプリケーションのリンク先,参考文献
(1) Chris & Uwe;Metronome - reloaded,http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=297704514&mt=8
(2) 小倉 哲;A=440Hz,http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=297709039&mt=8
(3) Rob Hensley;Audio Scope,http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=296990547&mt=8
(第5回に続く)
いくら・まさみ
◆筆者プロフィール◆
井倉 将実.代表取締役 兼 学生.ASIC開発にiPhoneを取り入れることで楽しく設計できるのではないか? と,ここバンコクのソンクラーン祭りの会場で,マンゴとメロンを頬張りながら,仲間と語っています.