ASIO 简介
2022-01-21
360
0
ASIO是Audio Stream I/O的简称。
ASIO主要用于对希望在个人电脑音频设备相对于系统的音频设备实现高效音频处理、高数据吞吐量,音频硬件端的同步、低延迟和可扩展性等方面的性能改善。
ASIO比较灵活,音频接口不需要绑定到任何固定数量的输入和输出通道(当然,此数量受计算机系统本身的处理能力和数据吞吐量),同时它没有限制采样率(32 kHz至96 kHz或更高),采样格式(16、24、32位或32/64位浮点格式)。
ASIO利用当今的计算机体系结构实现高数据吞吐量(PCI,FireWire)。它支持用于附加音频处理的复杂硬件解决方案,但与其他方法相比仍然简单。
ASIO工作原理
运行在操作系统中的音频设备需要一个驱动程序,一般由操作系统或硬件厂商提供标准的音频设备驱动程序。
工作ASIO模式下的ASIO硬件厂商用为了实现ASIO提供一个ASIO驱动程序,这样可以使设备以ASIO处理的方式抽象音频硬件。
为了实现数据处理的高效处理和灵活性,ASIO采用了双缓冲区的机制,这样可以适应不同的缓冲区需求。一个缓冲区包含仅一个通道的数据,这样可以在主机应用程序实现额外的算法处理。
ASIO音频驱动为数据分配内存,这使得硬件制造商为其音频I/O解决方案选择最佳内存访问方法。DMA或可以以同样的效率支持内存映射I/O。这是实现音频处理低延迟的关键之一。由于当前的操作系统为多任务操作系统,因此ASIO具有所有优势和权衡,支持异步操作所需的所有功能(时间戳事件通知和自适应数据预取/处理)。