On Tue, Feb 07, 2012 at 09:31:30AM +0100, Jan Stary wrote: > > Now, I can record further tracks with e.g. > > $ aucat -i background.wav -i solo.wav -o vocal.wav > > I can specify relative volumes with -v (or even control > them with hardware knobs when using a midi controller); > what I miss is stereo panning.
heh, that's exactly what i do :) > Without further options, all the previous tracks are "mixed" as 1/n, > and positioned in the "middle" of the stereo panorama; that's doable, > but the musical experience would be very much enhanced with stereo > positioning. I mean e.g. hearing the drums in the left and the bass > in the right while recording the vocals. > > I realize that this can be considered "mixing" already, and aucat does not, > by design, use a full matrix mixer: it uses a 0/1 matrix (controlled > with the -C/-c ranges). > > There are workarounds: I can pre-procces the existing tracks > with e.g. SoX to attenuate/amplify the left/right channel of each, > and then play these preprocessed streams. > > Am I right at thinking that there is currently no way > to do that in aucat directly? There's no easy/handy way to adjust the pan with aucat. You still can split everything into mono files, work on them, and finally combine them in a stereo file with the appropriate volume. Somewhat unpractical. You'll face other problems preventing you from doing everything with aucat. First, there's no reverb, which is necessary to create the spacial feel, volume changes are too abrupt (cause small clicks) and not real-time. Implementing pan, effects and smooth parameter changes would bloat aucat/sndiod. IMO the way to go is to handle processing in small programs (with a simple record->process->play loop) and keep sndiod only for routing the signal to the hardware or other programs. Currently that's the way I handle some effects, I write small programs that apply effects on the record stream to send the result in real-time on the play stream. Then I use -mmon to record the result in a file. Not very flexible, but good enough to test the concept. For off-line processing, audacity might help too. Besides that, sometimes I use an external mixer and effect processor, amongst others, to change the pan, equalize and add effects to the input, i.e. I record the processed signal; which means I can't change parameters later. This might not seem flexible, but remember that that's exactly what people do during live concerts and they manage to get very good sound. -- Alexandre

