ASIO(Audio Stream Input Output)とは
ASIO(Audio Stream Input Output)は、
ドイツのスタインバーグ社が開発した、オーディオデバイスのドライバインターフェース規格です。主にWindows環境で利用され、多くのオーディオカードがこの規格に準拠しています。Mac OS XのCore Audioは、ASIOと同等の技術として位置づけられています。
概要
ASIOは、オーディオの入出力をアプリケーションから効率的に行うためのAPIとして提供されています。従来のOS標準のサウンドドライバと比較して、低遅延、高同期性、高い
スループットを実現している点が特徴です。これは、従来のドライバではマルチチャンネル入力が考慮されていなかったために、ASIOが開発された背景があります。
ASIOは、マシンの処理能力が許す限り、多様なチャンネル数、
サンプリング周波数、量子化ビット数のオーディオデータを扱うことができます。
ASIOの最大の利点の一つは、その低
レイテンシです。従来のWindows環境のMME(Multimedia Extensions)では200~500ミリ秒、
DirectSoundでも50~100ミリ秒の遅延があったのに対し、ASIOでは数ミリ秒から10ミリ秒以下、環境によっては1ミリ秒以下という非常に低い遅延を実現できます。
この低遅延により、PCに接続した
MIDIキーボードでのソフトウェアシンセサイザー演奏や、エレキギターへのリアルタイムエフェクト処理など、リアルタイム性の求められるオーディオ処理が可能になります。また、OSのソフトウェアミキサーを通さずに、元の波形をそのまま出力できるため、高音質でのオーディオ出力が期待できます。
マルチチャンネル対応
ASIOは、複数のポートを同時に扱うことができるため、マルチチャンネルでのオーディオ入出力が可能です。これにより、エフェクト処理を経由した出力と、ノーマル出力を同時に行うなど、柔軟なオーディオルーティングが可能になります。
ASIO 2.0と2.1
ASIO 1.0の後継として、ASIO 2.0がリリースされました。主な変更点は、入力信号を
コンピュータを介さずに直接モニターできるダイレクトモニタリング機能が追加されたことです。これにより、入力信号の遅延をなくすことができます。
ASIO 2.1では、ソニーの働きかけによりDSD(
Direct Stream Digital)に対応しましたが、その他の変更点はありません。
実装
ASIOは規格であり、実際に利用するためにはASIOに対応したドライバやアプリケーションの実装が必要です。主要なOSはASIOの標準実装を提供していないため、オーディオインターフェースなどのハードウェアではベンダーが、DAW(Digital Audio Workstation)などのアプリケーションでは開発者が、ASIOに対応する必要があります。
Steinberg ASIO SDK
スタインバーグ社は、ASIOの
ソフトウェア開発キット(SDK)を無償で公開しています。このSDKには、ドライバ、インターフェース、ホスト(クライアント)の定義や基底クラス、サンプルなどが含まれており、開発者コミュニティでの意見交換も活発に行われています。
歴史
1990年代から2000年代にかけて、WindowsやMac OSの標準オーディオドライバは大きな入出力遅延がありました。ASIOは低遅延かつマルチチャンネルに対応していたため、広く利用されるようになりました。しかし、macOSではCore Audioが標準実装されたことにより、ASIOは現在では利用されていません。
関連技術
MME (Windows Multimedia Extensions): Windowsにおける従来のオーディオAPI
DirectSound: DirectXの一部であるオーディオAPI
Sound Manager: macOSにおける初期のオーディオAPI
Core Audio: macOSの標準オーディオAPI
Core Audio (Windows): Windows版のCore Audio
レイテンシ: 信号の遅延時間
VST (Virtual Studio Technology): オーディオエフェクトや楽器のプラグイン規格
WASAPI (Windows Audio Session API): Windowsにおける新しいオーディオAPI
外部リンク
ASIO SDK: スタインバーグ社のASIO SDK配布サイト
ASIO4ALL: フリーのASIOエミュレーションドライバ