iiwusynth-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[iiwusynth-devel] [Swami-devel] Stuff


From: M. Nentwig
Subject: [iiwusynth-devel] [Swami-devel] Stuff
Date: Fri, 20 Sep 2002 11:28:50 +0300

Hello,

nice to hear again from you, it -was- rather quiet. Well, I was just
about to write this afternoon or tomorrow; I'll also update Swami again.

What was the problem with pitch in modulators again? Was it that the
generator number for pitch is mentioned nowhere? I think I missed the
discussion.

I implemented the modulators for coarse / fine sample start etc. a
couple of months ago and thought, that the code is waterproof. Seems
that it isn't - I'll look into this.

We had a discussion about individual channel audio outputs a while ago.
I said that I could use individual outputs for each MIDI channel, but I
realized that this isn't versatile enough. It will be fine for
sequencing and using the synth as part of other programs, but it's too
limited for 'real-time' playing:
Assume you want to program a 'split' sound, for example an electric
piano on the left end of the keyboard, organ on the right. The piano
should play through a multi-tap delay, but not the organ.
So what now? They are both controlled with the same MIDI channel, just
different zones in one preset.
The best solution I have come up with so far is to add a new generator
'Output select' to the sound font. Of course, the feature has to be
supported by both synth and sound font editor to work. If the generator
is 0 or undefined / default, then audio is routed to L/R, chorus, reverb
using pan. If it's 1, then it goes only to individual channel 1, pan is
ignored. Same with 2, 3, 4 etc. This works with stereo and is effective,
because the synth doesn't need to be able to send a signal to individual
output 1,2,3, L/R chorus and reverb at the same time, with most of the
gain settings 0 anyway - it just avoids useless buffer copying.


Unrelated, but maybe interesting (if just for the pure joy of hacking):
I found a cheap alphanumeric LCD display (40 char) in an electronics
shop - hooking it up to the parallel port was easy. Add some cardboard,
a battery and -lots- of adhesive tape, and the result is a display in a
robust little box, that can be controlled from the command line, as in
>> LCD 'Hello World!'. And if the display is disconnected, the computer
doesn't even notice.

Now what does that have to do with Iiwusynth? Add another 160 lines of
perl code, that
- starts iiwusynth with some sound and puts the name on the LCD
- does nothing while I'm playing
- waits for a program change (it reads the output through a pipe)
- kills the synth
- starts the synth with a different sound and prints the name on the LCD

- waits for a program change
etc.

Now the perl program keeps all the settings (gain, chorus parameters,
reverb parameters, font name, program number) together in one place, and
the LADSPA Fx unit can be programmed differently for each sound. There
is a reasonable default value for everything, which is only modified,
where needed. And I can operate the whole mess without ever touching the
PC once it's running. Well... I -am- an optimist... But I'll try it in
real-life soon, let's see what happens. Good that my keyboard can make
some noises of its own, something to fall back to if (when?) things go
to hell :-)

Cheers

Markus





reply via email to

[Prev in Thread] Current Thread [Next in Thread]