Use alsa playback device as a jack client, with resampling.
zita-a2j [options]
This tool allows one to use an ALSA device as a Jack client, to provide additional playback channels. Functionally it is equivalent to alsa_in that comes with Jack, but provides much better audio quality.
The resampling ratio will typically be stable within 1 PPM and change only very smoothly. Delay will be stable as well even under worse case conditions, e.g. the Jack client running near the end of the cycle.
The alsa device should be a 'hw:' one, i.e. direct access to a soundcard and not an ALSA 'plug' device. A well-working Jack system is assumed, running in real-time mode.
The sample rate can be the same as Jack's one, or different. Minimum delay is obtained by running the alsa device at a lower period size than Jack. This can be done safely as the alsa thread will run at a higher priority, and apart from copying to/from an internal buffer no work is done there. There are no restrictions on the product of period_size and number_of_periods as there are for alsa_in and alsa_out.
zita-a2j will optionally print some information four times per second. The first number is the average loop error over the last quarter second, in samples. It should be reduced to small randowm values close to zero after 15 seconds or so. The second is the dynamic correction factor of the nominal resampling ratio. This should converge to a value close to one and not move much.
You may observe small variations in these numbers when Jack apps are started or stopped. This is normal. Anything else isn't - please report.
When starting, and in case of major trouble, you will see the 'Starting synchronisation' message. This can happen if there is a timeout on the Jack server, e.g. a client crashed or terminated in a dirty way. Jack1 will skip one or more cycles when new apps are started, or when a large number of port connections is done in a short time. his may interrupt the audio signal, but should otherwise not have any ill consequences nor require a restart.
zita-a2j and zita-j2a will suspend operation while Jack is in 'freewheeling' mode.
-h
Display this text
-d <device>
ALSA capture device [none]
-r <rate>
Sample rate [48000]
-p <period>
Period size [256]
-n <nfrags>
Number of fragments [2]
-c <nchannels>
Number of channels [2]
-Q <quality>
Resampling quality [48]
-v
Print tracing information [off]
Use '-h' to see all options.
A quick guide is available at <http://kokkinizita.linuxaudio.org/linuxaudio/zita-ajbridge-doc/quickguide.html>
zita-ajbridge was written by Fons Adriaensen <[email protected]>.
This manual page was written by Robin Gareus <[email protected]> for the Debian project (but may be used by others). It is based on the original README and announce message by Fons Adriaensen.