Next: Qjackctl Up: Applications Previous: Music-Typesetting
JACK is a low-latency audio server. It can connect several client applications to an audio device, and allow them to share audio with each other. Clients can run as separate processes like normal applications, or within the JACK server as "plug-ins".
Traditionally it has been hard if not impossible to write audio applications that can share data with each other. In addition, configuring and managing audio interface hardware has often been one of the most complex aspects of writing audio software.
JACK allows applications to send and receive audio data to/from each other as well as the audio interface. There is difference in how an application sends or receives data regardless of whether it comes from another application or an audio interface. From the programmers point of view it is an API that provides a high level abstraction and removes the audio interface hardware from the picture and allows them to concentrate on the core functionality of their software.