The JACK Audio Connection Kit originates from the audio sector. High performance editing of audio tracks with real-time functions was the goal of the development. To meet the real-time requirements, it is possible to provide the Linux kernel with real-time capabilities by means of a patch.
The name JACK Audio Connection Kit is a recursive acronym. JACK is designed for high performance data transmission of audio streams. JACK is characterized by low latencies, making it suitable for measurement applications. JACK provides an easy to use API.
The idea of the LimeJACK project is to use a soundcard as a measurement card, which is connected to a Linux via JACK. In contrast to this, classical measurement technology is still hardware oriented. Software libraries are often complicated and also proprietary.
Starting from the PC hardware, various parameters for starting the JACK server are possible. For LimeJACK, attention was always paid to low possible latency.
/usr/bin/chrt 99 dbus-launch /usr/bin/jackd -R -P89 -t1000 -dalsa -dhw:0 -r32000 -p32 -n2
The latency l is calculated as follows:
l = n * P / r = 2 * 32 / (32000 Hz) = 2 / (1000 Hz) = 2 / 1000 s = 2 ms
Here you will find latency measurements.
If you have more than one soundcard in your computer you will find the correct hardware number as follows:
hwxonar=`cat /proc/asound/cards | grep ':.*Xonar' | cut -f2 -d' '`