Audio Stream Input/Output: Difference between revisions
→Development: link to wineasio project |
→Development: Update link to ASIO SDK home |
||
Line 15: | Line 15: | ||
== External links == |
== External links == |
||
===Development=== |
===Development=== |
||
* [http://www.steinberg. |
* [http://www.steinberg.net/en/company/3rd_party_developer.html Steinberg]'s [[Third-party_developer|third party developer]] site, home of the ASIO [[SDK]]. |
||
* [http://www.rigisystems.net/index_files/usbpal.htm USBPAL] — USB ASIO and third party [[Windows Driver Model|WDM]] multi-channel professional audio drivers and hardware DDK |
* [http://www.rigisystems.net/index_files/usbpal.htm USBPAL] — USB ASIO and third party [[Windows Driver Model|WDM]] multi-channel professional audio drivers and hardware DDK. |
||
* [[Juce]] — an open-source c++ toolkit that includes support for ASIO audio devices |
* [[Juce]] — an open-source c++ toolkit that includes support for ASIO audio devices. |
||
* [http://www.portaudio.com Portaudio] — an open-source c library for audio I/O that includes ASIO support |
* [http://www.portaudio.com Portaudio] — an open-source c library for audio I/O that includes ASIO support. |
||
* [http://www.codeproject.com/KB/audio-video/Asio_Net.aspx ASIO.NET] — Low latency audio using ASIO drivers in [[Microsoft .NET]]. |
* [http://www.codeproject.com/KB/audio-video/Asio_Net.aspx ASIO.NET] — Low latency audio using ASIO drivers in [[Microsoft .NET]]. |
||
* [http://github.com/mhroth/jasiohost/tree/master JAsioHost] - Low latency audio using ASIO drivers in [[Java (programming language)|Java]]. |
* [http://github.com/mhroth/jasiohost/tree/master JAsioHost] - Low latency audio using ASIO drivers in [[Java (programming language)|Java]]. |
Revision as of 20:03, 10 April 2010
This article includes a list of references, related reading, or external links, but its sources remain unclear because it lacks inline citations. (November 2009) |
Audio Stream Input/Output (ASIO) is a computer soundcard driver protocol for digital audio specified by Steinberg, providing a low-latency and high fidelity interface between a software application and a computer's sound card. Whereas Microsoft’s DirectSound is commonly used as a stereo input and output for non-professional users, ASIO allows musicians and sound engineers to process their audio via Windows computer software instead of external hardware.
Overview
ASIO bypasses the normal audio path from the user application through layers of intermediary Windows operating system software, so that the application connects directly to the soundcard 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 soundcard, or input signals from the soundcard being available to the application. In this way ASIO offers a relatively simple way of accessing multiple audio inputs and outputs independently. Its main strength lies in its method of bypassing the inherently high latency of Windows audio mixing kernels (KMixer), allowing direct, high speed communication with audio hardware. Unlike KMixer, an unmixed ASIO output is "bit identical", that is, the bits sent to the soundcard are identical to those of the original source, thus having higher audio fidelity.
Operating systems
Interface support is normally restricted to Microsoft Windows, since other operating systems (e.g. Apple's Mac OS X or Linux) do not have such mixer latency problems (see Core Audio and ALSA). In Windows Vista, KMixer has been removed and replaced by a new WaveRT port driver. WaveRT cannot provide synchronized audio to multiple devices and does not support external clocks.[1]
As of 2007 there is also an experimental ASIO driver for Wine, a Windows layer for Linux. This 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.
References
External links
Development
- Steinberg's third party developer site, home of the ASIO SDK.
- USBPAL — USB ASIO and third party WDM multi-channel professional audio drivers and hardware DDK.
- Juce — an open-source c++ toolkit that includes support for ASIO audio devices.
- Portaudio — an open-source c library for audio I/O that includes ASIO support.
- ASIO.NET — Low latency audio using ASIO drivers in Microsoft .NET.
- JAsioHost - Low latency audio using ASIO drivers in Java.
- wineasio project at SourceForge.
WDM to ASIO Drivers
- ASIO4ALL — a free universal ASIO driver for Windows that brings ASIO support to users of virtually all consumer-grade soundcards and integrated audio chipsets. It also supports semi-pro and pro digital audio systems.
- The kX Project — third party WDM audio drivers for EMU10K1 and EMU10K2-based sound cards (SoundBlaster Live! and SoundBlaster Audigy 1/2/4 cards)
- ASIO2KS — yet another free universal ASIO driver for Windows. Project appears to have been abandoned.
Utilities and Plugins
- ASIOTestSigGen — a simple, free Audio Test Signal Generator utility to test ASIO setups
- MultiStream ASIO Player — a free MP3 Player for ASIO with built-in test signal generator
- http://www.jrmediacenter.com — J. River Media Center natively supports playback where ASIO compliant hardware is present.
- Template:Ja iconWinamp plug-in — open-source ASIO output plug-in for Winamp.
- XMPlay plug-in — ASIO output plug-in for XMPlay
- foobar2000 plug-in — ASIO output plug-in for foobar2000