ALSA_IO(1)ALSA_IO(1)NAME
alsa_in, alsa_out - Jack clients that perform I/O with an alternate
audio interface
SYNOPSISalsa_in [options]
alsa_out [options]
DESCRIPTION
A JACK client that opens a specified audio interface (different to the
one used by the JACK server, if any) and moves audio data between its
JACK ports and the interface. alsa_in will provide data from the inter‐
face (potentially for capture); alsa_out will deliver data to it (for
playback).
The audio interface used by alsa_in/alsa_out does not need to be syn‐
chronized with JACK backend (or the hardware it might be using).
alsa_in/alsa_out tries to resample the output stream in an attempt to
compensate for drift between the two clocks.
As of jack-0.116.3 this works almost perfectly. It takes some time, to
reach absolute resample-rate stability. So give it some minutes (its
intended to be running permanently anyways)
OPTIONS-j jack_client_name
Set Client Name.
-d alsa_device
Use this Soundcard.
-v
Verbose, prints out resample coefficient and other parameters
useful for debugging, every 500ms. also reports soft xruns.
-i
Instrumentation. This logs the 4 important parameters of the
samplerate control algorithm every 1ms. You can pipe this into
a file, and plot it. Should only be necessary, if it does not
work as expected, and we need to adjust some of the obscure
parameters, to make it work. Find me on irc.freenode.org #jack
in order to set this up correctly.
-c channels
Set Number of channels.
-r sample_rate
Set sample_rate. The program resamples as necessary. So you can
connect a 44k1 jackd to a soundcard only supporting 48k.
(default is jack sample_rate)
-p period_size
Set the period size. It is not related to the jackd period_size.
Sometimes it affects the quality of the delay measurements.
Setting this lower than the jackd period_size will only work, if
you use a higher number of periods.
-n num_period
Set number of periods. See note for period_size.
-q quality
Set the quality of the resampler from 0 to 4. can significanly
reduce cpu usage.
-m max_diff
The value when a soft xrun occurs. Basically the window, in
which the dma pointer may jitter. I don't think its necessary to
play with this anymore.
-t target_delay
The delay alsa_io should try to approach. Same as for max_diff.
It will be setup based on -p and -n which is generally suffi‐
cient.
-s smooth_array_size
This parameter controls the size of the array used for smoothing
the delay measurement. Its default is 256. If you use a pretty
low period size, you can lower the CPU usage a bit by decreasing
this parameter. However most CPU time is spent in the resam‐
pling so this will not be much.
-C P Control Clamp
If you have a PCI card, then the default value (15) of this
parameter is too high for -p64 -n2... Setting it to 5 should fix
that. Be aware that setting this parameter too low, lets the hf
noise on the delay measurement come through onto the resampler‐
ate, so this might degrade the quality of the output. (but its a
threshold value, and it has been chosen, to mask the noise of a
USB card, which has an amplitude which is 50 times higher than
that of a PCI card, so 5 wont loose you any quality on a PCI
card)
AUTHOR
Torben Hohn
1.9.8 February 2014 ALSA_IO(1)