マイクから読み込むためにportaudio(クロスプラットフォーム機能)を使用しようとしていますが、そのデータをFFTで入れたいのですが、そうではありませんそれを行う方法を確認します。 多くの人が教えてくれました:1.データを取得する、2.apply fft、 しかし、問題は私がデータを取得する方法がわからないため、portaudioにはマイクからの入力を取得するチュートリアルが多くありません。コード、チュートリアル、またはその他のリソースがあれば十分分かります。私はこれでしばらく検索していました。助けてくださいPortAudio:マイクからレコードを取得する方法(データを取得する)
3
A
答えて
3
portaudioディストリビューションには、サンプルCプログラムの形式でドキュメントがあります。それらはtest
ディレクトリにあり、通常patest_...
と呼ばれます。良い資料がたくさんあり、ドキュメントにはoverview with very short description、
があります。見たいものは、コールバックによる非同期録音を行うpatest_record
です。あなたが真剣に何かをしたいなら、これは行く方法です、IMHO。しかし、同期(ブロック)IOを行うpatest_read_record.c
もあります。
コードは実際には非常に簡単です、ここに関連する部分があります(多くのものは除外されています): 1 /あなたはmallocバッファ2 /コールバック3をインストールする/あなたのバッファにデータをコピーします
/* 1 */
data.recordedSamples = (SAMPLE *) malloc(numBytes);
/* 2 */
err = Pa_OpenStream(
&stream,
&inputParameters,
NULL, /* &outputParameters, */
SAMPLE_RATE,
FRAMES_PER_BUFFER,
paClipOff,
recordCallback,
&data);
/* 3, in recordCallBack with rptr the input data and wptr our buffer */
for(i=0; i<framesLeft; i++)
{
*wptr++ = *rptr++; /* left */
if(NUM_CHANNELS == 2) *wptr++ = *rptr++; /* right */
}
これもやはり簡略化されていますが、わかります。かなりの量の簿記があり、サンプルコードはきれいでクリーンではありませんが、あなたの目的に適応するのは簡単です。
関連する問題
- 1. 外部デバイスからオーディオを再取得する方法(マイク)
- 2. PortAudioで記録されたデータを1つの方法で取得する
- 3. ウェブサイトAPIから取得したデータからキーを取得する方法
- 4. クラウドキットからすべてのレコードを取得する方法
- 5. サーバーからのJSONデータの取得方法と取得方法
- 6. laravelモデルからレコードを取得する
- 7. mysqlからレコードを取得する
- 8. ファイアベースからデータを取得するクロージャからデータを取得する
- 9. Hiveから更新レコードの数を取得する方法
- 10. 複数のテーブルからレコードを取得する方法
- 11. CNContactStoreからレコードIDを取得する方法
- 12. 他のテーブルからレコードのIDを取得する方法は?
- 13. hdfテーブルからソートされたレコードを取得する方法
- 14. Yiiデータプロバイダからn個のレコードを取得する方法は?
- 15. レールで検索フォームからレコードIDを取得する方法
- 16. GraphQLのリストからレコードを1つ取得する方法
- 17. CloudantDBからレコードを取得する方法
- 18. ファイヤーベースから角度2のレコードを取得する方法
- 19. PHP mysqlから月別のレコードを取得する方法
- 20. データベースから最新のレコードを取得する方法
- 21. sqliteからレコードを1つずつ取得する方法は?
- 22. サーバーデータベースからローカルデータベースにレコードを取得する方法
- 23. oracleデータベースからランダムにレコードを取得する方法は?
- 24. SQL:xml列から複数のレコードを取得する方法
- 25. Django ModelFormからレコードIDを取得する方法
- 26. マイクのsampleRateを取得するには?
- 27. データをinstertingからデータを取得する方法
- 28. Swift - マイク入力(AVAudioPCMBuffer)から現在の音量を取得する方法
- 29. サーバーからデータを取得するListViewをセットアップする方法
- 30. URLからウェブサイトからデータを取得する方法
誰も私が本当に苦労してください、私を助けることができます。 – Rave
リンク先は次のとおりです。http://www.rossbencina.com/static/writings/portaudio_icmc2001.pdf?q=%7Erossb/writings/portaudio_icmc2001.pdf – unpythonic