音のデータを一時的に貯めるバッファ
前回も紹介したとおり、レイテンシーとはオーディオインターフェイスを通すことで生じる音の遅れです。このレイテンシーが大きいと、ソフトシンセをリアルタイム演奏した際などに、違和感を感じるほか、リアルタイムでエフェクトをかけた際のモニタ音に大きなディレイがかかってしまい、使いにくいものになります。
では、そのレイテンシーの原因はどこにあるのでしょうか?
ここにはオーディオインターフェイス上に存在するバッファというものと大きな関係があります。このバッファとは、小さなメモリであり、ごく微量のデータを貯めておく場所を意味しています。
ちょっと難しい話になりますが、実際のデータの流れを追ってみることにしましょう。
CPUから渡される音のデータはいったんバッファに貯められた後、D/Aコンバータを経由として音となる |
そこで、CPUからオーディオインターフェイスへは一括してある程度のデータをまとめて渡し、バッファに貯めておくのです。その先をオーディオインターフェイスが自動処理することでCPUがいちいちコントロールしなくてもいいようになっているのです。そして、CPUはバッファが空になる前に、次のデータのまとまりを渡してやればいいのです。