I have a Delta 1010LT audio card.
I have ALSA version 0.9.4 installed on a RedHat Linux 9.
I want to record multiple, unrelated audio streams that overlap in time
but do not necessarily stop and start at the same time. Imagine radios,
each tuned to a different station, plugged in to each audio input on the
audio card.
I have an existing application, which uses OSS interfaces, which will do
what I want if I can just configure ALSA to create a different emulated
OSS sound device for each input channel on the sound card. (Or, perhaps
for stereo pairs of input channels). So, is there a way to configure
ALSA to do this, and if so, what is it?
I had a conversation with a colleague recently about (exactly?) this problem.
He uses multiple soundcards to record radio (each station mixed to mono
externally and presented to a single channel) according to a schedule whilst
he is at work (he also uses OSS). He currently records larger 'slabs' of
audio than he needs (to account for the overlap because you can't open OSS
devices more than once), and splits/copies them to extract individual
programmes. All very complicated.
My suggestion to him (and to you) is that a JACK server will do the hard work
of ALSA interfacing for you, and present the soundcards n-channels as JACK
ports. Each port is mono.
Modify the JACK capture client to suit your needs, and invoke a client for
each recording you wish to make. If the recordings overlap on a single
channel, JACK will take care of it for you by providing the port data to both
applications.
This is all based upon my rudimentary understanding of JACK, and might of
course be wrong.
R