

JACK Audio Connection Kit
JACK is a professional sound server daemon that provides real-time low latency connections for both audio and MIDI data between applications that implement its API. The API can be used through either JACK1 or JACK2.
JACK Audio Connection Kit News & Activities
Recent News
Recent activities
- POX liked JACK Audio Connection Kit
tomrob added JACK Audio Connection Kit as alternative to Audamux- ofiane liked JACK Audio Connection Kit
- hammyhammer thinks Low Latency is a important feature of JACK Audio Connection Kit
JACK Audio Connection Kit information
What is JACK Audio Connection Kit?
JACK is a professional sound server daemon that provides real-time low latency connections for both audio and MIDI data between applications that implement its API. The API can be used through either JACK1 or JACK2.
JACK provides a basic infrastructure for audio applications to communicate with each other and with audio hardware. Through JACK, users are enabled to build powerful systems for signal processing and music production. Jack 1 and Jack 2 are equivalent implementations of the same protocol.
JACK2 aka jackdmp is a C++ version of the JACK low-latency audio server for multi-processor machines. It is a new implementation of the JACK server core features that aims at removing some limitations of the JACK1 design. The activation system has been changed for a data flow model and lock-free programming techniques for graph access have been used to have a more dynamic and robust system.
• uses a new client activation model, that allows simultaneous client execution (on a SMP machine) when parallel clients exist in the graph (client that have the same inputs). This activation model allows to better use available CPU on a smp machine, but also works on mono-processor machine.
• uses a lock-free way to access (read/write) the client graph, thus allowing connections/disconnection to be done without interrupting the audio stream. The result is that connections/disconnections are glitch-free. • can work in two different modes at the server level:
- synchronous activation: in a given cycle, the server waits for all clients to be finished (similar to normal jackd)
- asynchronous activation: in a given cycle, the server does not wait for all clients to be finished and use output buffer computed the previous cycle.





