Experimental/risky: convert sampler voice to use AoS instead of SoA for left/right.
[calfbox.git] / README
blob72c45749b71f822a7fadd264a2e9766609d78842
1 Configuration file sections
2 ---------------------------
4 [io]
5 ;Determines number of JACK audio inputs/outputs and auto-connections.
7 ;4 mono audio inputs (2 stereo pairs)
8 inputs=2
10 ;2 mono audio outputs (1 stereo pair)
11 outputs=4
13 ;autoconnection of inputs - first two inputs connect to first two physical ports
14 in_1=#1
15 in_2=#2
17 ;similar for outputs
18 out_1=#1
19 out_2=#2
20 out_3=#3
21 out_4=#4
23 ;MIDI autoconnect: connect those ports, exact match
24 midi=alsa_pcm:E-MU-XMidi2X2/midi_capture_2;alsa_pcm:E-MU-XMidi2X2/midi_capture_1
26 ;MIDI autoconnect: connect first port matching a regex
27 midi=~alsa_pcm:in-.*-(E-MU-XMidi2X2-MIDI-.*|padKONTROL-MIDI-.*|Kurzweil-PC3-.*)
29 ;MIDI autoconnect: connect all ports matching a regex
30 midi=*alsa_pcm:in-.*-(E-MU-XMidi2X2-MIDI-.*|padKONTROL-MIDI-.*|Kurzweil-PC3-.*)
32 ;if kicked out by JACK, wait N seconds and reconnect; 0 = disable
33 ;OTOH one can always use /rt/cycle() (Tools/Unzombify)
34 auto_reconnect=1
36 ========================================================================
38 [master]
39 ;Transport properties - tempo and time signature
40 ;Also contains master effect setting
42 ;tempo (in bpm)
43 tempo=100
45 ;time signature/4
46 beats_per_bar=4
48 ;master effect, used for output 1
49 effect=cbox_reverb
51 ========================================================================
53 [metronome]
54 ;Metronome settings
56 ;Channel number
57 channel=1
59 ;note number for non-accented beats
60 note=C4
61 ;note number for accented beats
62 note_accent=C5
64 ========================================================================
66 [scene:myscene]
67 ;Defines a scene (set of instruments and assignments)
69 ;Scene title (user-visible)
70 title=My scene
72 ;Layer references
73 layer1=piano_all
74 layer2=epiano_all
75 layer3=drums
77 ========================================================================
79 [layer:piano_all]
80 ;Defines a scene layer, which processes input events and sends some of them,
81 ;with optional modifications, to an instrument
83 ;Layer's output - send to this instrument
84 instrument=default
86 ;Input channel filter - only notes for this channel will be matched
87 in_channel=1
88 ;Output channel
89 out_channel=1
91 ;This blocks aftertouch events (default 1)
92 aftertouch=0
94 ;This can be used to invert the polarity of the sustain pedal, very hacky
95 ;workaround but might be useful for emergency situations/ancient gear
96 ;invert_sustain=1
98 ;Do not send the note matched by this layer to any further layer
99 ;(might be useful for selective layers before default/catch-all layers)
100 consume=1
102 ========================================================================
104 [layer:piano]
105 ;This layer sends notes C#3 and above on channel 1 to instrument default
106 instrument=default
107 in_channel=1
108 out_channel=1
110 ;Skip notes below this note
111 low_note=C#3
112 out_channel=1
114 ========================================================================
116 [layer:brass]
117 ;This layer sends notes B2 and below on channel 1 to instrument default
118 ;channel 3
119 instrument=default
120 in_channel=1
121 out_channel=3
122 ;Skip notes above this note
123 high_note=B2
124 ;Transpose notes by that many semitones
125 transpose=24
127 ========================================================================
129 [instrument:sampler]
130 ;Defines an instrument
132 ;Selects a DSP engine for the instrument; this selects a built in simple 
133 ;sampler module
134 engine=sampler
135 ;Program 0 is defined in section [spgm:piano]
136 program0=piano
138 ========================================================================
140 [spgm:piano]
141 ;Program definition for the sampler
143 ;Directory to use for samples
144 sample_path=/media/resources/samples/sp250/
145 ;Layer references (refer to [slayer:piano-c1 and so forth)
146 layer1=piano-c1
147 layer2=piano-c2
148 layer3=piano-c3
149 layer4=piano-c4
150 layer5=piano-c5
152 ========================================================================
154 [slayer:piano-layer]
155 ;Definition of a layer for the sampler. This one is not referenced directly,
156 ;but is included in a "proper" sampler layer piano-c1
158 ;Filter cutoff
159 cutoff=100
160 ;Filter resonance
161 resonance=4
162 ;Filter envelope amount 
163 fileg_depth=9600
164 ;Filter DAHDSR settings
165 filter_attack=0
166 filter_decay=0.3
167 filter_sustain=0.1
169 [slayer:piano-c1]
171 ;Waveform to load
172 file=c1-vel127.wav
173 ;Lowest note assigned to the layer
174 low_note=36
175 ;Highest note assigned to the layer
176 high_note=47
177 ;Playing the sample at the original freq. corresponds to this note
178 root_note=36
179 ;Copy all the other settings from another layer (can be only used one time in each layer)
180 import=slayer:piano-layer
182 ========================================================================
184 engines:
185 tonewheel_organ
186 stream_player
187 jack_input
188 sampler (partly done)
189 fluidsynth
191 phaser
192 chorus
193 delay
194 reverb (yuck)
196 tone_control
197 fxchain
199 insert effects
200 multi I/O
202 ========================================================================
204 [fxpreset:...]
206 ========================================================================
208 [autojack]
210 ========================================================================
212 [soundcard:...]
214 ========================================================================
216 [pattern:...]
218 ========================================================================
220 [drumpattern:...]
222 ========================================================================
224 [track:...]
226 ========================================================================
228 [drumtrack:...]