EXS 24 Logic Sampler Users Group group photo

Yahoo Groups archive

EXS 24 Logic Sampler Users Group

Index last updated: 2026-04-28 23:25 UTC

Message

EXS additional control? (was: Re: [exs] MkII Select by CC ...)

2002-12-28 by Eric Baird <eric_baird@compuserve.com>

[re: random modulation source]
--- In exs-users@yahoogroups.com, PersingEP@a... wrote:
> This is something you can do in Stylus and Atmosphere for 
example....it is 
> very cool.

Yep, the people who designed Atmosphere do seem to have put a lot of 
thought into it, don't they! :-) 
Bought it a few weeks ago, very happy with it, think I'll be using 
its "orchestral" strings a lot.

I suppose that if you want a hihat line to jump around the stereo 
field or vary its decay on each note independently of velocity, one 
could /try/ to work around the lack on a proper randomise parameter 
on other instruments by assigning a controller number and using the 
sequencer to tediously program in a pseudo-random sequence of 
controller changes ... but when you have a strings section, and want 
(eg) random placement of each note within a chord within the stereo 
field, then controllers will normally pan the entire chord as a 
block, which isn't the right effect.
So I was very pleased to spot "random" on Atmosphere's modulation 
matrix! 
 

<rambling on...>
You can't apply these sorts of polyphonic effects afterwards with 
audio signal processing, so to set additional parameters on a per-
note basis, I guess you'd have to: 
 (A) have the sequencer and instrument utilising a form of "extended 
MIDI" that has one or more additional parameters per noteon event, 
that can be programmed on the event list and used as (static per 
note) modulation sources on the instrument (perhaps logic already 
allows MIDI extensions, but the logic instruments don't seem to 
support them yet), or 
 (B) use special controller event(s) before each note, and have some 
way of telling the instrument that it is only supposed to use the 
initial value for playing the note, and not respond to further 
controller changes mid-note (which would happen when notes 
overlapped), or 
 (C) find some wierd way of doing it with programmed polyphonic 
aftertouch. 

emagic could capitalise on their ownership of both logic and the 
logic-specific instruments, and implement custom MIDI noteon 
extensions so that we could do this. Then if we decided that a guitar 
part needed an additional three fixed parameters per note to play 
with, we could have them, and each note played on the emagic 
instrument could get its own programmable attack time, damping 
strength, pitch envelope strength and so on.

For compatability with non-emagic instruments, logic could then allow 
background conversion between "extended parameter" noteons, noteons 
preceded by controller events, and noteons associated with polyphonic 
aftertouch events.    
The "preceding controller events" version would probably be best for 
transmission of multiple additional values through conventional MIDI 
hardware, but might play oddly on polyphonic parts if the receiving 
instrument didn't realise that it wasn't supposed to allow variation 
once a note was already playing, and would slow the data stream 
rather (lots of extra status bytes). 
The "poly aftertouch" version would already work on lots of standard 
MIDI instruments (but would presumably only allow one additional 
parameter)
And the "extended MIDI noteon" mode would be the optimal solution for 
advanced programming of multiple additional parameters on emagic's 
own softinstruments (where the datastream is completely under 
emagic's own control, and having the wrong number of noteon 
parameters wouldn't matter).

I suppose the extra information would be stored as logic-specific 
events so that it didn't freak out earlier versions of logic, and 
you'd need an extra track parameter to say how it was to be formatted 
for transmission to softinstruments, midi ports, etc.

It'd be fun!

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.