snd_pcm_readi()を呼び出して、20ミリ秒ごとまたは40ミリ秒ごとにオーディオデータを取得したいと思います。データを同期的に取得する方法を知りたい...つまりXミリ秒ごと...
ご回答ありがとうございます。
リアルタイムのオーディオ読み取りまたは再生の場合、通常、呼び出し元の専用の優先度の高いワーカースレッドを作成してから、いくつかのリングバッファーを利用します。スレッドはロックを回避する必要があります。
alsaの例:
http://www.alsa-project.org/alsa-doc/alsa-lib/_2test_2latency_8c-example.html#a36
http://www.alsa-project.org/alsa-doc/alsa-lib/_2test_2pcm_8c-example.html
単にディスクから読み取る場合は、十分なバッファが必要です。次にウェイクアップして、次にウェイクアップする前にさらに読み取る必要があるかどうかを確認します(合計レイテンシを考慮)。