[ardour-users] Recording Mic and Line at the same time

Shayne O'Connor forums at machinehasnoagenda.com
Wed Apr 6 01:58:00 PDT 2005


Jürgen Schöneberg wrote:

>Hello!
>
>I want to record the microphone and the line input at the same time to
>two different tracks. (witch jack and ardour)
>
>1. is there a possibility to do this with one soundcard?
>
>2. do I have to have two soundcards?
>I tried this also, but I can only see alsa_pcm:capture_1 and 
>alsa_pcm:capture_2  (stereo capture of one soundcard)
>not for two in qjackconnect and in the route window of ardour
>
>3. Or can somebody recommend a soundcard prepared for that?
>
>(I'm using SB PCI128 and a on board sound)
>
>  
>

i think this should be possible, so long as you've got the latest alsa
driver (1.09rc2 ?) ... courtesy of Lee Revell's emu10k1 patch modelled
on the kx driver for windows.

it works for my sb live (although i'm not *positive* about using the mic
+ line input at the same time - i've got a live drive, so i usually just
use that input, plus maybe the mic input on the sb live) ...

here's the beginnings of some documentation from Lee, as pulled from the
alsa-devel mailing list:


*************************************8

This document is a guide to using the emu10k1 based devices with JACK
for low
latency, multichannel recording functionality.  All of my recent work to
allow
Linux users to use the full capabilities of their hardware has been
inspired
by the kX Project.  Without their work I never would have discovered the
true
power of this hardware.

    http://www.kxproject.com
                        - Lee Revell, 2005.03.30

Low latency, multichannel audio with JACK and the emu10k1/emu10k2
-----------------------------------------------------------------

Until recently, emu10k1 users on Linux did not have access to the same low
latency, multichannel features offered by the "kX ASIO" feature of their
Windows driver.  As of ALSA 1.0.9 this is no more!

For those unfamiliar with kX ASIO, this consists of 16 capture and 16
playback
channels.  With a post 2.6.9 Linux kernel, latencies down to 64 (1.33 ms) or
even 32 (0.66ms) frames should work well.

The configuration is slightly more involved than on Windows, as you have to
select the correct device for JACK to use.  Actually, for qjackctl users
it's
fairly self explanatory - select Duplex, then for capture and playback
select
the multichannel devices, set the in and out channels to 16, and the sample
rate to 48000Hz.  The command line looks like this:

/usr/local/bin/jackd -R -dalsa -r48000 -p64 -n2 -D -Chw:0,2 -Phw:0,3 -S

This will give you 16 input ports and 16 output ports.

The 16 output ports map onto the 16 FX buses (or the first 16 of 64, for the
Audigy).  The mapping from FX bus to physical output is described in
SB-Live-mixer.txt (or Audigy-mixer.txt).

The 16 input ports are connected to the 16 physical inputs.  Contrary to
popular belief, all emu10k1 cards are multichannel cards.  Which of these
input channels have physical inputs connected to them depends on the card
model.  Trial and error is highly recommended; the pinout diagrams
for the card have been reverse engineered by some enterprising kX users
and are
available on the internet.  Meterbridge is helpful here, and the kX
forums are
packed with useful information.

Each input port will either correspond to a digital (SPDIF) input, an analog
input, or nothing.  The one exception is the SBLive! 5.1.  On these devices,
the second and third input ports are wired to the center/LFE output. 
You will
still see 16 capture channels, but only 14 are available for recording
inputs.

This chart, borrowed from kxfxlib/da_asio51.cpp, describes the mapping
of JACK
ports to FXBUS2 (multitrack recording input) and EXTOUT (physical output)
channels.

/*JACK (& ASIO) mappings on 10k1 5.1 SBLive cards:
--------------------------------------------
JACK        Epilog        FXBUS2(nr)
--------------------------------------------
capture_1    asio14        FXBUS2(0xe)
capture_2    asio15        FXBUS2(0xf)
capture_3    asio0        FXBUS2(0x0)   
~capture_4    Center        EXTOUT(0x11)    // mapped to by Center
~capture_5    LFE        EXTOUT(0x12)    // mapped to by LFE
capture_6    asio3        FXBUS2(0x3)
capture_7    asio4        FXBUS2(0x4)
capture_8    asio5        FXBUS2(0x5)
capture_9    asio6        FXBUS2(0x6)
capture_10    asio7        FXBUS2(0x7)
capture_11    asio8        FXBUS2(0x8)
capture_12    asio9        FXBUS2(0x9)
capture_13    asio10        FXBUS2(0xa)
capture_14    asio11        FXBUS2(0xb)
capture_15    asio12        FXBUS2(0xc)
capture_16    asio13        FXBUS2(0xd)
*/

TODO: describe use of ld10k1/qlo10k1 in conjunction with JACK



More information about the Ardour-Users mailing list