[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[sc-users] new list member - with a ribbon controller
Dear SC Users,
Let me introduce myself briefly: I am a physicist working in
biophysics with some programming skills (Fortran, C and some Perl).
My hobby is music and audio engineering. I am also interested in
acoustics and psychoacousting and I may start a project in my
research group on how the human brain processes sound sources (this
is only a plan at the moment).
I promise to go through the tutorials and read manuals (I usually
do :-)), but for now I would like to hear some comments whether what
I plan is possible with SC before I jump into it. Here we go (sorry
to be a lengthy):
I have a Doepfer R2M ribbon controller (see http://www.doepfer.de/
home_e.htm ). It outputs control voltages, which can drive analog
oscillators. The first control voltage is proportional to the ribbon
position (on a linear octave/voltage scale). The second voltage is
proportional with the pressure (independent of pitch position).
Lacking analog oscillators, the MIDI side is more interesting at the
moment. The box outputs MIDI data too. The first control voltage is
converted to NoteOn (with or without pitchbend), just pitchbend (with
a fixed note) or controller data of your choice. The second control
voltage can be converted to +- pitchbend or controller data. I tried
to drive MIDI instruments in Live with this. The main problem is that
there is no choice to change the pressure to velocity and since the
NoteOn is always before pressure all notes play with the default
constant velocity of 127. To be able to play somewhat expressively, I
mapped the pressure (as controller data) to the volume of the synth.
It worked but it is not ideal as velocity is always 127 and the
volume change comes after the NoteOn message.
In principle, what I want is that SC behaves as if it was an analog,
CV driven synth receiving the VCO and VCA control voltages from the
device. What I was thinking is the following:
- Take the NoteOn and the pitchbend
- Collect the subsequent pressure data as long as the pressure
increases (or a fixed period of time is reached) or a new note is
coming (the minimum re-trigger time is 1 msec on the device)
- Calculate the slope of the pressure raise for the initial period it
is raising; calculate a velocity value that is proportional to this
slope (with some proper scaling)
- Generate a NoteOn message with this velocity and proper pitchbed,
followed with the pressure values from the first local maximum (for
using the pressure for effects like modulation, whatever)
- drive other programs or external MIDI devices with this stream of MIDI
- alternatively drive some SC synths with this data
In this way I could use the pressure to both control velocity and
after-touch effects. It will generate some delay because of the
integration period for the pressure data, but may still be playable
(I have a relatively low latency audio interface - MetricHalo ULN-2).
I guess that a better solution is to buy an analogue CV controlled
VCO and some VCA and pitch- and envelope-track it, but I would like
to see if the SC approach makes a sense, before investing into more
iron.
What routines, ugens and approaches comes to your mind for such a setup.
Thanks in advance for any comments,
--
Tibor