Jump to content

Audio Stream Input/Output

From Wikipedia, the free encyclopedia

ASIO
Developer(s)Steinberg
Stable release
1.0.7 / March 18, 2024; 9 months ago (2024-03-18)
Operating systemMicrosoft Windows 10, 11
Platformx86-64, Arm64
TypeAPI
LicenseProprietary
Websitewww.steinberg.net/developers

Audio Stream Input/Output (ASIO) is a computer audio interface driver protocol for digital audio specified by Steinberg, providing high data throughput, synchronization, and low latency between a software application and a computer's audio interface or sound card.[1]

ASIO was initially released in 1997 in order to enable streaming of one or more audio streams from an (multi-input/output) audio interface to a software and vice versa with minimal latency and sample accurate synchronization of the audio streams. It allows the audio streams to use any sample rate and supports bit resolutions of 16, 24, 32 bit integer and 32 or 64 bit floating point.[2]

The release of ASIO 2.0 in 1999 brought further enhancements such as ASIO Direct Monitoring, where an audio signal is monitored directly from the audio interface with basically zero latency, and ASIO Positioning Protocol, used to sample accurately synchronize a computer to other digital machines such as ADAT recorder or also other computers.[3]

ASIO 2.3 introduced monitoring for dropouts in the audio stream.[4]

ASIO bypasses the normal audio path from a user application through layers of intermediary operating system software so that an application connects directly to the sound card hardware. Each layer that is bypassed means a reduction in latency (the delay between an application sending audio information and it being reproduced by the sound card, or input signals from the sound card being available to the application). In this way, ASIO offers a relatively simple way of accessing multiple audio inputs and outputs independently.

Operating systems

[edit]

Currently only Microsoft Windows (AMD/Intel x86-64) is supported by the ASIO SDK. Microsoft announced to incorporate ASIO into their USB Audio Class 2 driver for their Arm64 architecture.[5]

While originally supporting MacOS, the introduction of Core Audio with macOS X made ASIO support for this OS unnecessary.

There is also an experimental ASIO driver for Wine, WineASIO,[6] for a Windows compatibility layer for Linux.[7] WineASIO driver uses the JACK sound server as its audio back-end and allows many ASIO-aware applications to run with low latency under WINE.[7]

Licensing

[edit]

The license to use the ASIO software development kit (SDK) and to distribute an ASIO driver is free of charge. Yet an SDK license agreement has to be signed.[8]

Distribution of the source code is not allowed. For example, the user manual of the Audacity audio editor states: "Licensing restrictions prevent us including ASIO support in released versions of Audacity, but Audacity can be compiled with ASIO support for private, non-distributable use."[9]

See also

[edit]

References

[edit]
  1. ^ "ASIO ? What is it?". Steinberg Forums. 20 June 2016. Retrieved 11 September 2024.
  2. ^ "ASIO ? What is it?". Steinberg Forums. 20 June 2016. Retrieved 11 September 2024.
  3. ^ "Steinberg Cubase VST 3.7". www.soundonsound.com. Retrieved 11 September 2024.
  4. ^ ASIO SDK 2.3.pdf, as part of the ASIO SDK.
  5. ^ Brown, Pete (21 October 2024). "Make Great Music with Windows on Arm". Windows MIDI and Music dev. Retrieved 22 October 2024.
  6. ^ "WineASIO website". Archived from the original on 1 March 2020. Retrieved 1 March 2020.
  7. ^ a b Mielewczik, Michael (2008). "Renoise für Linux. Musikproduktion im Retro-Stil". LinuxLife (in German). 5/2008: 69–72.
  8. ^ Steinberg ASIO SDK Licensing Agreement Version 2.0.3, PDF available as part of the ASIO SDK.
  9. ^ "ASIO Audio Interface". 2008. Retrieved 2 December 2019.
[edit]