jack2 codebase
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Nils Philippsen 250420381b Update to waf 2.0.26 6 months ago
.github Cleanup and rework CI setup (#942) 7 months ago
android Fix misc. typos 2 years ago
autooptions FIx doxygen and user facing and non-facing typos 4 years ago
common Relicence of JackControlAPI.h and control.h after discussion with Nedko Arnaudov. 8 months ago
compat Fix wscripts syntax (#826) 1 year ago
dbus Fix typos 1 year ago
freebsd FreeBSD: Override UpdateLatencies() to fit OSS latencies. 1 year ago
linux Jack MIDI portnames (fixes #944) (#945) 6 months ago
macosx Do not require rosetta for generated macOS packages 7 months ago
man Fix man/fill_template for waf clean 6 months ago
posix JackFifo: Apply given init value in allocate 1 year ago
solaris FreeBSD: Add missing OSS option --excl to man page. 2 years ago
systemd Make sure we use python3 (another patch from Fedora) 4 years ago
tests Fix wscripts syntax (#826) 1 year ago
waflib Update to waf 2.0.26 6 months ago
windows Fix typos 1 year ago
.cirrus.yml CI: Update FreeBSD image to 13.1, fix build. 1 year ago
.flake8 Fix wscripts syntax (#826) 1 year ago
.gitignore Fix wscripts syntax (#826) 1 year ago
.wafupdaterc Update to waf 2.0.11 5 years ago
AUTHORS.rst macOS: Pass JackMachSemaphore send right via mach_msg IPC (#788) 2 years ago
COPYING Add a local GPLv2 license file as COPYING 3 years ago
ChangeLog.rst Update changelog 1 year ago
README.rst IRC has moved to Libera Chat a while ago 1 year ago
README_NETJACK2 FIx doxygen and user facing and non-facing typos 4 years ago
doxyfile.in Fix compilation of documentation 2 years ago
jack.pc.in pkgconfig: Use predefined variables in Libs and Cflags 2 years ago
waf Update to waf 2.0.26 6 months ago
waflib-macos-mods.patch Update to waf 2.0.26 6 months ago
wscript Bump version and update changelog 1 year ago

README.rst

`JACK2 <https://jackaudio.org/>`_
################################

.. image:: https://travis-ci.org/jackaudio/jack2.svg?branch=master
:target: https://travis-ci.org/jackaudio/jack2
.. image:: https://repology.org/badge/tiny-repos/jack-audio-connection-kit.svg
:target: https://repology.org/metapackage/jack-audio-connection-kit/versions

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.
The audible result of this mode is that if a client is not activated
during one cycle, other clients may still run and the resulting audio
stream will still be produced (even if its partial in some way). This
mode usually result in fewer (less audible) audio glitches in a loaded
system.

For further information, see the JACK `homepage <https://jackaudio.org/>`_ and `wiki <https://github.com/jackaudio/jackaudio.github.com/wiki>`_. There are also the #jack and #lad chat channels on `Libera Chat IRC <https://web.libera.chat/#jack>`_.