MICオーディオを継続的に分析し(スニッパーや事前に録音されたサンプルだけでなく)、周波数グラフを表示して、オーディオの特定の側面を除外したいと考えています。iPhoneはそのために十分強力ですか?GoogleとiPhoneの音声認識、Shazaamやその他の音楽認識アプリ、ギターチューナーアプリを考えると、答えはイエスだと思います。ただし、どのような制限に対処する必要があるのかわかりません。
誰かがこのエリアで遊んでいますか?
MICオーディオを継続的に分析し(スニッパーや事前に録音されたサンプルだけでなく)、周波数グラフを表示して、オーディオの特定の側面を除外したいと考えています。iPhoneはそのために十分強力ですか?GoogleとiPhoneの音声認識、Shazaamやその他の音楽認識アプリ、ギターチューナーアプリを考えると、答えはイエスだと思います。ただし、どのような制限に対処する必要があるのかわかりません。
誰かがこのエリアで遊んでいますか?
私が見たアプリは、ある種の音楽/音声認識を行うためにインターネット接続が必要です。したがって、これらはオーディオでのある種の機能計算を行い、これらの機能をhttp経由で送信してサーバーで認識を行う可能性が高いです。
いずれにせよ、頻度グラフとフィルタリングは、12年前に以前より少ないCPUで行われていました。iPhoneは問題ないはずです。
AppleのサンプルコードaurioTouchにはFFT実装があります。
「十分に速い」とは、探している周波数分解能と基本サンプルレートに対するあなた(または顧客)の期待の関数である可能性があります。
NポイントFFTはN*log2(N)計算のオーダーであるため、十分なMIPSがない場合は、Nを減らすことが譲歩の可能性のある領域になります。
多くのアプリケーションでは、サンプルレートは交渉の余地がありませんが、もしそうなら、これは別の可能性です。
FFTをライブで計算するアプリを作りました
http://www.itunes.com/apps/oscope
FFTの私のコードはGitHubで見つけることができます(少しラフですが)
http://github.com/alexbw/iPhoneFFT
Appleの新しいiPhoneOS4.0 SDKでは、「Accelerate」ライブラリを使用してFFTの計算が組み込まれているため、新しいOSがアプリの機能の中心的な部分である場合は、間違いなく新しいOSでの作業を開始します。
Cで記述されたFFTコードをアプリに移植することはできません...浮動小数点演算を複雑にするthumbコンパイラオプションがあります。アームモードにする必要があります