JACK – JACK low-latency audio server

The JACK Audio Connection Kit (JACK) is a low-latency audio server daemon that provides low latency connection to applications. It can connect a number of different applications to an audio device, as well as allowing them to share audio between themselves.

Its clients can run in their own processes (i.e. as normal applications), or can they can run within the JACK server (i.e. as a “plugin”).

JACK is a system for sending audio between applications as well as allowing them to all share an audio interface. Each application is run in exact sample sync with each other, and the entire system is designed to run at very low latencies (as low as your hardware will allow). There is NO extra latency caused by using JACK for audio input and output.

QjackCtl, a separate application, provides a simple Qt application to control the JACK sound server daemon, specific for the Linux Audio Desktop infrastructure.

Features include:

  • Provides a high level abstraction for programmers that removes the audio interface hardware from the picture and allows them to concentrate on the core functionality of their software.
  • Allows applications to send and receive audio data to/from each other as well as the audio interface.
  • Applications that work with JACK include:
    • Audacity – a digital audio editor.
    • Aqualung – music player.
    • Ardour – a free digital audio workstation program for Linux.
    • Audacious – a fork of beep-media-player.
    • Baudline – a signal analysis tool.
    • SuperCollider – a real-time audio programming language.
    • ChucK – a real-time audio programming language.
    • CheeseTracker – an Impulse Tracker clone.
    • SooperLooper – a live looping sampler capable of immediate loop recording, overdubbing, multiplying, reversing and more.
    • XMMS – a free music player for X11.
    • XMMS2 – client/server based redesign of XMMS.
    • Freqtweak – a digital EQ.
    • MusE – a Qt-based MIDI/audio sequencer.
    • Rosegarden – a sophisticated MIDI (and audio) sequencer and notation editor.
    • Mixxx – a digital DJ system, for wave, ogg and mp3 files.
    • Pure data – a graphical programming language for multimedia.
    • Seq24 – a loop based MIDI sequencer.
    • Bristol – an emulation package for a number of different ‘classic’ synthesisers including additive and subtractive and a few organs.
    • ZynAddSubFX – an opensource software synthesizer.
    • terminatorX – a realtime audio synthesizer that allows you to “scratch”.
    • Hydrogen – an advanced drum machine.
    • JAMin – state-of-the-art realtime mastering processor.
    • LiVES – a Video Editing System.
    • VLC – a highly portable multimedia player for various audio and video formats (MPEG-1, MPEG-2, MPEG-4, DivX, mp3, ogg, …) as well as DVDs, VCDs, and various streaming protocols.
    • MPlayer – a movie player.

Website: jackaudio.org
Support: Wiki
Developer: Paul Davis and others
License: GNU GPL, GNU LGPL

JACK is written in C++. Learn C++ with our recommended free books and free tutorials.

Return to Audio Home Page

Read our complete collection of recommended free and open source software. The collection covers all categories of software.

The software collection forms part of our series of informative articles for Linux enthusiasts. There's tons of in-depth reviews, alternatives to Google, fun things to try, hardware, free programming books and tutorials, and much more.
Share this article

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.