Hi all,
I'm trying to build an audio logger- a machine to record audio that can stay
running all the time. I've been attempting to use Rotter and Jack for this,
but I'm getting the same problems across a variety of distros (Arch, Ubuntu,
Ubuntu Studio, CentOs &c.). I'm using an Edirol FA-101, attached to a P4
3ghz machine with a second SATA drive as an audio recording volume. I
launch jack, with a big period so as to avoid xruns:
jackd -v -d firewire -r 44100 -n 3 -p 4096 2> jack_stderr.log >
jack_stdout.log &
Then I launch multiple instances of Rotter, one per channel, six total:
rotter -f flac -c 1 -n channelone -d 500 -L flat -v
/secondsatadrive/channelone
.
.
.
rotter -f flac -c 1 -n channelsix -d 500 -L flat -v
/secondsatadrive/channelsix
Then I launch esjit and patch physical input one to rotter instance
channelone, etc.
This works, for a while. Jackd still gets xruns, but the recording happens
and files are written properly. However, after several hours and a whole
lot of xruns, it stops working. Files are still written and named properly,
but they are only a few hundred k in size and contain no audio. The error
logs show the xruns, but nothing else (no error messages, except for xruns).
The output of Rotter also does not show anything wrong. Clearly, jackd is
breaking somehow; anyone have clues? Any way to get more info from jackd?
What am I doing wrong? This problem is the same across several distros
(see above), and occurs whether or not I use the -R realtime flag.