aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/sound
diff options
context:
space:
mode:
authorLee Revell <rlrevell@joe-job.com>2005-03-30 07:04:34 -0500
committerJaroslav Kysela <perex@suse.cz>2005-05-29 03:00:44 -0400
commit9c220a31fd2f609ba55250a75d85ca795051a482 (patch)
tree411e2d8f44119572ea0913fca70107d6fc59c03b /Documentation/sound
parent2b637da5a1bb3c128ecdadea6aee693f6ff3b786 (diff)
[ALSA] some docs for the new emu10k1 multichannel functionality
Documentation Not complete, or even spell checked, but in case I don't get a chance to work on it again before 1.0.9, here is what i have so far. It should go in alsa-kernel/Documentation/emu10k1-jack.txt. Signed-off-by: Lee Revell <rlrevell@joe-job.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'Documentation/sound')
-rw-r--r--Documentation/sound/alsa/emu10k1-jack.txt74
1 files changed, 74 insertions, 0 deletions
diff --git a/Documentation/sound/alsa/emu10k1-jack.txt b/Documentation/sound/alsa/emu10k1-jack.txt
new file mode 100644
index 000000000000..751d45036a05
--- /dev/null
+++ b/Documentation/sound/alsa/emu10k1-jack.txt
@@ -0,0 +1,74 @@
1This document is a guide to using the emu10k1 based devices with JACK for low
2latency, multichannel recording functionality. All of my recent work to allow
3Linux users to use the full capabilities of their hardware has been inspired
4by the kX Project. Without their work I never would have discovered the true
5power of this hardware.
6
7 http://www.kxproject.com
8 - Lee Revell, 2005.03.30
9
10Low latency, multichannel audio with JACK and the emu10k1/emu10k2
11-----------------------------------------------------------------
12
13Until recently, emu10k1 users on Linux did not have access to the same low
14latency, multichannel features offered by the "kX ASIO" feature of their
15Windows driver. As of ALSA 1.0.9 this is no more!
16
17For those unfamiliar with kX ASIO, this consists of 16 capture and 16 playback
18channels. With a post 2.6.9 Linux kernel, latencies down to 64 (1.33 ms) or
19even 32 (0.66ms) frames should work well.
20
21The configuration is slightly more involved than on Windows, as you have to
22select the correct device for JACK to use. Actually, for qjackctl users it's
23fairly self explanatory - select Duplex, then for capture and playback select
24the multichannel devices, set the in and out channels to 16, and the sample
25rate to 48000Hz. The command line looks like this:
26
27/usr/local/bin/jackd -R -dalsa -r48000 -p64 -n2 -D -Chw:0,2 -Phw:0,3 -S
28
29This will give you 16 input ports and 16 output ports.
30
31The 16 output ports map onto the 16 FX buses (or the first 16 of 64, for the
32Audigy). The mapping from FX bus to physical output is described in
33SB-Live-mixer.txt (or Audigy-mixer.txt).
34
35The 16 input ports are connected to the 16 physical inputs. Contrary to
36popular belief, all emu10k1 cards are multichannel cards. Which of these
37input channels have physical inputs connected to them depends on the card
38model. Trial and error is highly recommended; the pinout diagrams
39for the card have been reverse engineered by some enterprising kX users and are
40available on the internet. Meterbridge is helpful here, and the kX forums are
41packed with useful information.
42
43Each input port will either correspond to a digital (SPDIF) input, an analog
44input, or nothing. The one exception is the SBLive! 5.1. On these devices,
45the second and third input ports are wired to the center/LFE output. You will
46still see 16 capture channels, but only 14 are available for recording inputs.
47
48This chart, borrowed from kxfxlib/da_asio51.cpp, describes the mapping of JACK
49ports to FXBUS2 (multitrack recording input) and EXTOUT (physical output)
50channels.
51
52/*JACK (& ASIO) mappings on 10k1 5.1 SBLive cards:
53--------------------------------------------
54JACK Epilog FXBUS2(nr)
55--------------------------------------------
56capture_1 asio14 FXBUS2(0xe)
57capture_2 asio15 FXBUS2(0xf)
58capture_3 asio0 FXBUS2(0x0)
59~capture_4 Center EXTOUT(0x11) // mapped to by Center
60~capture_5 LFE EXTOUT(0x12) // mapped to by LFE
61capture_6 asio3 FXBUS2(0x3)
62capture_7 asio4 FXBUS2(0x4)
63capture_8 asio5 FXBUS2(0x5)
64capture_9 asio6 FXBUS2(0x6)
65capture_10 asio7 FXBUS2(0x7)
66capture_11 asio8 FXBUS2(0x8)
67capture_12 asio9 FXBUS2(0x9)
68capture_13 asio10 FXBUS2(0xa)
69capture_14 asio11 FXBUS2(0xb)
70capture_15 asio12 FXBUS2(0xc)
71capture_16 asio13 FXBUS2(0xd)
72*/
73
74TODO: describe use of ld10k1/qlo10k1 in conjunction with JACK