Yahoo Groups archive

The Logic Off Topic list

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

Thread

[L-OT] Transformers

[L-OT] Transformers

2004-06-21 by dan.antopolski@

I am using Virtual Guitarist on Logic Pro.

One of the parameters of this virtual instrument is called "part" - 
there are up to eight variations on the riff, you can move between them 
in real time by clicking on the buttons on the instrument interface.

When I zoom into the track automation for this "part" parameter, the 
zoom level isn't high enough to isolate the 0-8 range I need from the 
0-127 total, so it's a fiddly business drawing in the points.

I think it would be easier to control this parameter in real time 
through my digital piano - using the lowest eight notes which I don't 
really play.

I believe I need to create a transformer in the environment that would 
transform these note events to controller events - or are they "meta" 
events? I don't know how the transformer works - could anyone explain 
how to create this?

Thanks

Dan Antopolski

Re: [L-OT] Transformers

2004-06-21 by Hendrik Jan Veenstra

On a fine day, 21-06-2004, dan.antopolski@ wrote:

>I am using Virtual Guitarist on Logic Pro.
>
>One of the parameters of this virtual instrument is called "part" -
>there are up to eight variations on the riff, you can move between them
>in real time by clicking on the buttons on the instrument interface.
>
>When I zoom into the track automation for this "part" parameter, the
>zoom level isn't high enough to isolate the 0-8 range I need from the
>0-127 total, so it's a fiddly business drawing in the points.
>
>I think it would be easier to control this parameter in real time
>through my digital piano - using the lowest eight notes which I don't
>really play.
>
>I believe I need to create a transformer in the environment that would
>transform these note events to controller events - or are they "meta"
>events? I don't know how the transformer works - could anyone explain
>how to create this?

I'm not sure why you post this in the OT group instead of the LUG, as 
it is very much _on_ topic.  Oh well, anyway...

In the audio mxier, create a Monitor object.  Cable from the Virtual 
Guitarist mixer strip into the Monitor.  Press the part-buttons and 
watch the Monitor. If all is well you should see something like "F 2 
xx yy".  That's: Fader event on channel 2, the event type is xx and 
the value is yy.  Hopefully you get just _one_ xx value for all 
buttons with different yy's (probably 0-8).  Remember the xx and yy's.

Go to the Clicks and Ports layer of the environment and create 2 
transformers.  Cable from Physical Input SUM outlet into the 1st 
transformer.  Cable the 1st outlet of this transformer into the To 
Sequencer (sometimes called "to rec & thru") object (this path thus 
replaces the original PhysIn SUM -> To Sequencer cable).
Cable the 2nd outlet of this transformer into the 2nd transformer. 
Open a 2nd environment window, this time showing the VG mixer strip. 
Cable the 1st outlet of the 2nd transformer into the mixer strip 
(click-hold on the transformer outlet in the 1st window and drag 
until the mixer strip in the 2nd window highlights).  You've now 
created a cross-layer cable.

Double click the 1st transformer and set its top popup to "Condition 
Splitter".  Set the Conditions to "Status = Note" and "Pitch Outside 
aa bb" where aa and bb are the 1st and last note you want to use for 
switching.
This transformer now picks the notes you don't want to use, sends 
them out the top cable so that they enter the sequencer.  The other 
notes (i.e. the switches) leave the bottom cable and go to the 2nd 
transformer).

Double click the 2nd transformer and its top popup to "Track 
Automation Splitter".  Set the Conditions to "-2- Unequal 0" (filter 
out note-offs).  Set the Operations to "Status Fix Fader", "Cha Fix 
2", "-1- Fix xx" where xx is the value you observed earlier, and "-2- 
Use Map".  This is: transformer to Fader Events on channel 2 (VSTi 
insert slot) with the proper parameter value.

In between Conditions and Operations you see 3 vertical black lines: 
| | |.  Click on the last on until it looks like "| | \" so the 
Conditions -1- parameter is connected to the Operations -2- parameter.

Now all you need to do is draw the map at the bottom of the 
transformer.  Suppose the notes you want to use are midi-notes 36-44, 
and the VG buttons send out values 0-8 (the yy's you noted earlier). 
Scroll the 1st numerical box at the bottom left of the transformer 
window to 36, and set the 2nd box to 0.  Then increment the 1st box 
to 37 and set the 2nd box to 1... until you end with the 1st box at 
44 and the 2nd box at 8.

Done.

-- 
Hendrik Jan Veenstra   h @ k n o w a r e . n l
Omega Art: http://www.omega-art.com/

Re: [L-OT] Transformers, Hendrik's advice

2004-06-21 by dan.antopolski@

Hendrik

I have just done what you said and it works perfectly. A thousand 
thanks.

I have always wondered how to use transformers but they have seemed 
intimidatingly complex and there isn't very clear help in the manual - 
is there any more user-friendly writing on the subject?

Thanks again

Dan Antopolski

Re: [L-OT] Transformers, Hendrik's advice

2004-06-22 by Hendrik Jan Veenstra

On a fine day, 21-06-2004, dan.antopolski@ wrote:

>Hendrik
>
>I have just done what you said and it works perfectly. A thousand
>thanks.

Glad it works -- and you're welcome.

>I have always wondered how to use transformers but they have seemed
>intimidatingly complex and there isn't very clear help in the manual -
>is there any more user-friendly writing on the subject?

Not that I know of...  However, I don't think transformers are really 
that difficult in themselves.  The difficulty is more in acquiring 
the mindset that enables you to use them.  Sounds silly, but I'm 
serious.  The basic idea is pretty simple: use Conditions that will 
match the required input data, and set up Operations that transform 
the input to the desired output format.  That's about it (minus some 
details such as the use of the top "mode" popup, and using the 3 
vertical bars that connect Conditions and Operations).  Using them 
however requires you to think somewhat like a programmer, which is 
probably not a typical musician-skill -- and _that_ is most likely 
the biggest problem.

But, if you're serious about wanting to learn how to do stuff in the 
with transformers, you can do 2 things, simultaneously.  First, build 
your own patches, starting simple -- like using a transformer to 
transpose all live mididata one octave up or down, or something like 
that.  Use your mod-wheel to control the EXS's filter cutoff. 
Etcetera.  Second, download small environments either from www. 
swiftkick.com or from my site, and dissect them and study them until 
you understand what happens.  Insert Monitor objects here and there 
in those patches to see what sort of data gets in and what comes out, 
etc. Takes some time, but imo this is the only way if you really want 
to learn to "program" using the environment.  The same holds true for 
genuine programming as well, again imo.

-- 
Hendrik Jan Veenstra   h @ k n o w a r e . n l
Omega Art: http://www.omega-art.com/

Re: [L-OT] Transformers

2004-06-25 by Nathan

--- In logic-ot@yahoogroups.com, dan.antopolski@ 
<dan.antopolski@b...> wrote:
> I am using Virtual Guitarist on Logic Pro.
> 
> One of the parameters of this virtual instrument is called "part" -
 
> there are up to eight variations on the riff, you can move between 
them 
> in real time by clicking on the buttons on the instrument 
interface.

> I think it would be easier to control this parameter in real time 
> through my digital piano - using the lowest eight notes which I 
don't 
> really play.
> 
>

Hi Dan, Isn't there an option in the setup page of the VG GUI that 
does exactly what you are talking about?  You can change the part 
using a bunch of different selectable controllers but one of them IS 
the low octave on the keyboard.  Then again, learning to make a 
transformer to do what you need it to do is a handy skill so hats 
off!

best, Nathan

Re: [L-OT] Transformers

2004-07-03 by TazmnianDv@aol.com

Is there such a thing as a cable splitter in the environment? I am trying to 
follow a tutorial from the Computer Music or Future Music site about building 
a step sequencer in the environment. But I can't find a cable splitter object.


[Non-text portions of this message have been removed]

Re: [L-OT] Transformers

2004-07-03 by Hendrik Jan Veenstra

On a fine day, 02-07-2004, TazmnianDv@... wrote:

>Is there such a thing as a cable splitter in the environment? I am trying to
>follow a tutorial from the Computer Music or Future Music site about building
>a step sequencer in the environment. But I can't find a cable splitter object.

There's a cable _switcher_ and a _channel_ splitter, but not a cable 
splitter (nor a channel switcher :-).  What is the object you're 
looking for supposed to do?

-- 
Hendrik Jan Veenstra   h @ k n o w a r e . n l
Omega Art: http://www.omega-art.com/

Re: [L-OT] Transformers

2004-07-03 by TazmnianDv@aol.com

> What is the object you're
> looking for supposed to do?
> 
It takes the metronome click, transforms to a CC, then to a note. And this 
circuit of about 5 objects is duplicated 16 times to make some sort of step 
sequencer.


[Non-text portions of this message have been removed]

Re: [L-OT] Transformers

2004-07-03 by TazmnianDv@aol.com

Here is the complete article :

http://www.soundonsound.com/sos/Jul03/articles/logicnotes0703.asp?session=8bfa
c6deb8abcdea342bda2909f415d7



Construct your own matrix sequencer
Logic Notes
Published in SOS July 2003

Relive the hardware of the early synth pioneers this month, as we show you 
how to construct your very own matrix sequencer in the Environment.

Steve Knee

Back in the heady days of analogue synthesis, people tried to find ways of 
playing synths automatically, and various ideas emerged. One early design was 
the matrix sequencer, which had perhaps eight or 16 steps marked along the 
bottom, and various outputs up the side. By pressing a key in the matrix a control 
voltage appeared at the appropriate output when that particular step was 
activated. A clock signal was used to cycle round the steps, which triggered sounds 
depending on what buttons had been set.

Whilst being a very simple design, it still has its devotees and has been 
revisited in various modern software applications, such as Propellerhead's Reason
. However, Logic has no dedicated matrix sequencer and, while the Hyper Edit 
window can be adapted to act in this way, I prefer to use the Environment. So 
here's how to create a basic eight-step, two-line matrix for yourself.

Doing The Groundwork

First you need a signal to be automatically generated in the Environment 
during playback, and for this you need to use a MIDI Metronome Click object — with 
just the Bar field ticked in its Parameters it will mark the start of every 
bar. To get the matrix to run at a comfortable rate at 120bpm, it is necessary 
to go through the eight-step sequence twice. In order to create a second 
trigger halfway through the bar, cable the metronome straight into a Delay Line 
object — in its Parameters, set Repeat to one and Delay to '8 0', making sure 
Thru is ticked.

To route the MIDI Note On message to different parts of a matrix, a Channel 
Switcher object needs to be used — this object is vital to the matrix sequencer 
design, because it can operate under remote control. First let's concentrate 
on setting up the automated switching action. A MIDI Continuous Controller 
number seven message (CC7) with a value of 127 can be used to advance the switch, 
whilst the same message with a value of zero will reset it back to the start. 
To convert the MIDI Metronome Click's note messages to the correct Continuous 
Controller messages, you need to use Transformer objects.

Create two new Transformers, and cable the output of the Delay Line to them 
both through a Monitor object. Double-click the first Transformer to open its 
dialogue box and change all note events with velocity values above zero into 
CC7 messages with values of 127. A setting for doing this can be seen in Screen 
1 — note that the Filter Non-matching Events option is selected at the top of 
the window. The other Transformer should be set up the same, except with the 
value of the resultant CC7 message at zero.

Having the right signals is one thing, but we also need to duplicate them — 
we currently have two per bar, yet for an eight-step sequence repeated twice we 
need 16 separate signals. Cable the output of the 'switch advance' 
Transformer into seven Delay Line objects, unticking Thru in each one's Parameters and 
setting the Delays from '1 0' through to '7 0'. Next, cable the 'reset switch' 
Transformer into another Delay Line with Thru unticked in its Parameters and 
Delay set to '8 0'. Finally, cable all eight Delay Lines through a Monitor 
object to merge them, and connect this to a new Cable Switcher. When we have some 
outputs for this Cable Switcher, it should happily cycle round eight steps. 
This setup can be seen in Screen 2.

Creating The Notes

That provides the switching control, so now we need to send a signal though 
the Cable Switcher. Take a second output from the Monitor object to route the 
eight Delay Lines to a new Transformer object, this time changing all the CC7 
messages (both 'advance' and 'reset') back into Note On messages with velocity 
values of 127 — a setting to do this can be seen in Screen 3. Cable this 
Transformer to the Cable Switcher — these Note On messages will be used to activate 
a row of buttons which will form the steps of the matrix.
 
The button with the chain links icon at the top left of most of Logic's 
windows has three modes, indicated by the colour of the button: off (gray), Link 
(pink), and Contents Link (gold). In Link mode, the window's view will change in 
synchronisation with the top window. In Contents Link mode, its view will 
change in synchronisation with the selected object in the top window. Link mode i
s handy for windows that display similar objects, such as two MIDI editors. 
Contents Link mode is handy for synchronising MIDI editors to the Arrange 
window. The Sample Editor window is an exception — it only offers Link mode, which 
causes it to show the contents of the audio region selected in any other 
window. Len Sasso 

Some of Logic's plug-ins have so many parameters that the designers have 
chosen not to show all of them in the plug-in window's main Editor view. However, 
if you'd like to see them, then click the circular '001 011' button at the top 
of the window and they'll appear under the main Editor view. Mike Senior

Audio playback from both the Audio window and the Sample Editor uses the 
Track Audio object selected in the Cha numerical field at the left-hand side of 
the window. It's a good idea to set this to an Audio Track object not used in 
the Arrange window, so that muting and effects processing won't be applied when 
auditioning audio files. Note that the setting is not preserved with the song 
or between sessions with Logic — it is always reset to one. Len Sasso
 
To deactivate the buttons after the end of each step, however, we need 
another Note On message, but with a velocity value of zero. Take another feed from 
the Transformer that converts the CC7 messages into Note On messages, and use 
yet another Transformer to change the velocity values to zero. Cable the output 
of this into another Delay Line object, setting the delay to be the length of 
time you want each matrix step's button to remain on (bearing in mind that 
this should be shorter than the step duration) and then connect that into the 
Cable Switcher as well. This setup is illustrated in Screen 4.

It's worth noting here that a strange quirk of the Transformer object means 
that the zero-velocity Transformer will actually output velocities of one. This 
is fine for switching our buttons, which will default to sending out notes of 
a fixed duration. To get a variable duration for the notes requires some 
complicated routing, which is beyond the scope of this article. However, the note 
durations can be easily changed in the Event List window once the data has 
been created.

So, let's recap. We now have a Cable Switcher which sends a Note On message 
with a velocity value of 127 followed by a Note On message at a velocity of 
zero via eight different outputs which are switched 16 times a bar. The hard work 
is now complete, because the signals have been created, much like the 
control-voltages of old. What we need to do now is decide whether or not to send each 
one to our instrument.

Building The Selection Matrix

Create a horizontal row of eight buttons by selecting Button from the Fader 
submenu of the New menu, and set the In field in the Parameters to match the 
notes being sent by the Cable Switcher. Cable eight outputs of the Cable 
Switcher into each of these buttons, one per button. With the Range fields in the 
Parameters set to one and 127, the buttons should switch on and off 
appropriately, providing a visual representation of which step the matrix sequencer is on. 
Bear in mind that Logic gets the MIDI data right first and updates the screen 
second, so the visual switching may lag slightly.
These buttons are what actually creates the data we'll send to the sequencer, 
so choose what kind of data you want in the Parameters box for the button — 
for the example here we'll use Note On messages. For each line of the matrix 
you want to create, just take the output of each button into its own new Cable 
Switcher. Control the Cable Switcher with another simple selection button — 
this one will decide if the Note On is sent for that step, just like the switches 
on an analogue matrix sequencer. Take one output from all the Cable Switchers 
in the row and cable them to a single Transformer to shift the Note On 
messages to any note number you like. The buttons will also generate notes with a 
velocity value of one, so use the Transformer's Filter Non-matching Events 
option to get rid of these.

Once the second row of buttons is constructed in the same way, all that 
remains to be done is to send from each row's Transformer output to a single 
Sequencer Input object, from where it can be routed to instruments and recorded. 
This last section of the setup is shown in Screen 5, but if you're still 
scratching your head about how it all works, you can investigate the final setup for 
yourself by downloading the demo Song file. This Logic Song file contains a 
Matrix Sequencer Environment Layer in which you can see Steve's complete matrix 
sequencer device. The Song is in Logic v4.8 format.

Beyond The Matrix


The example created here is just a simple two-line affair. However, this was 
just to get you started. Using the data created by the main switcher, any 
number of rows could be created. If you want to make the screen a little tidier, 
move all of the unwanted objects out of the way to leave just your selection 
buttons. The screen can be made to look even tidier by turning off Cables in the 
Environment window's View menu. The parts you'll create with the matrix 
sequencer are unlikely to resemble anything you might play, just due to the method 
of programming, and may just take you off in a new musical direction. Now, 
where did I leave that Jean-Michel Jarre album... 

Published in SOS July 2003


[Non-text portions of this message have been removed]

Re: [L-OT] Transformers

2004-07-03 by Hendrik Jan Veenstra

On a fine day, 03-07-2004, TazmnianDv@... wrote:

>  > What is the object you're
>>  looking for supposed to do?
>>
>It takes the metronome click, transforms to a CC, then to a note. And this
>circuit of about 5 objects is duplicated 16 times to make some sort of step
>sequencer.

Sounds like you probably need a cable switcher, and some mechanism to 
automatically change the position of the switch in a rhythmic way. 
Right now I don't have time to read the entire article you posted -- 
gotta look after my pregnant wife who's having a particularly bad 
day.  Maybe later, but no guarantees...  A quick 'find' in the 
article didn't show any occurrences of the phrase 'cable splitter' 
though.  Are you sure you didn't misread something?

-- 
Hendrik Jan Veenstra   h @ k n o w a r e . n l
Omega Art: http://www.omega-art.com/

Re: [L-OT] Transformers

2004-07-03 by Hendrik Jan Veenstra

Getting back to you faster than I'd anticipated...

>Doing The Groundwork
>[...]
>To route the MIDI Note On message to different parts of a matrix, a Channel
>Switcher object needs to be used

This should be a Cable Switcher -- there's no such thing as a Channel Switcher.

>When we have some outputs for this Cable Switcher, it should happily 
>cycle round eight steps.
>This setup can be seen in Screen 2.

This indeed does only work if you actually draw 8 cables from the 
Cable Switcher (when testing, cable the Switch e.g. 8 times to the 
same new Monitor object). It's a mystery to me though why he uses 
delay line objects to generate the messages.  As far as I can see, 
you could just as well set the metronome to produce bars and beats 
and subdivisions and use those for 'event generation'.  Maybe I'm 
missing something though...

-- 
Hendrik Jan Veenstra   h @ k n o w a r e . n l
Omega Art: http://www.omega-art.com/

Re: [L-OT] Transformers

2004-07-04 by TazmnianDv@aol.com

Thanks Hendrik. Don't worry about it. Your wife is more important. I was 
doing this the other night about 1 am and half falling asleep so maybe I misread 
it. The diagrams are too small to read easily too.


[Non-text portions of this message have been removed]

Apple Loops as impulse responses for Space Designer?

2004-11-24 by Per Boysen

Just another wild...  Now when Logic 7 has both Apple Loops and a 
convolution reverb, can't we have the impulse responses in the Apple 
Loop format? This would open up for very cool application of beat 
synced rhythmic Space Designer pre-sets.

Today we can of course use rhythmic SD pre-sets but every time we 
change tempo we have to time stretch a copy of the impulse response 
file.

Greetings from Sweden

Per Boysen
---
http://www.looproom.com (international)
http://www.boysen.se (Swedish site)
http://www.cdbaby.com/perboysen

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.