2

私は現在、iPhoneとiPad用のオーディオ録音ベースのアプリケーションに取り組んでいます。ここでは、基本的なオーディオ録音機能を自分で実行しましたが、17,000 Hzを超えるなど、特定の周波数を超えるオーディオを録音する方法がわかりません。だから、誰かがこれを達成するために私を助けることができますか?それは本当に私のキャリアに大いに役立つでしょう。

4

3 に答える 3

2

加速フレームワークを使用する必要があると思います。内部には、FFT(高速フーリエ変換)を実行できるvDSPAPIがあります。データを時間領域から周波数領域に変換します。ビンサイズ情報によると、特定のビンサイズの後にマグニチュード/振幅を抽出できます。

これで問題は解決すると思います。

vDSPについては、AppleのWebサイトからaurioTouch2を参照できます。

そこでFFTがどのように機能するかについては、この質問を参照してください-aurioTouch2でのFFTの理解

これがお役に立てば幸いです。

PSAurioTouchまたはAurioTouch1はvDSPAPIを使用していません。iOS 4の前に、同じようなことをすることができるが遅いFFT関数があったことを覚えています。したがって、vDSPはiOS4.0以降でのみ利用可能であると考えるかもしれません

于 2012-05-31T01:11:21.737 に答える
1

インターネットで調べたところ、この2つのインクが見つかりました..

周波数を見つけるためのライブラリhttps://github.com/jkells/sc_listener

上記ライブラリを使用した例https://github.com/jkells/sc_listener_sample

頻度の数値を取得し、これを達成できる条件を設定することで願っています.これが役立つことを願っています...

于 2012-05-31T05:03:33.020 に答える
0

単純なフィルター ソリューションと比較すると、FFT の使用は計算コストが高く、非常に複雑です。周波数ドメインで作業を行う必要が本当にない限り、それは避けるべきです。

代わりに、PCM をハイパス フィルターに通します。関連するウィキペディアのページは、適切なフィルターを選択するのに役立ちます。最小頻度制限が定数の場合、このページでフィルターの定数が生成されます。それ以外の場合、これらの定数を動的に生成することはそれほど難しくありません。または、上記のフィルター係数生成ページのソース コードを使用することもできます

于 2013-08-15T17:09:08.080 に答える