Tag Archive: sync


DMX Sequencer Module…

Yes, it’s been a little quiet on the blog front lately, so I though I’d give you a little teaser of what’s in development…

DMX Sequencer V1.0The new DMX sequencer, which is very lovely. Can sequence up to 512 channels with 2 levels of brightness. Uses the timecode protocol for the clock signal so requires either Gener8 or the Timecode module to run, which is great because this means you’ll also be able to sync it to midi clock.

Great for working with L.E.D.

 

Available in the online library already : )

 

In the brewing is an updated version which allows for full RGB output, and a more refined UI. I will give full instructions and perhaps a video when it’s available. : )DMX Sequencer RGB

Advertisements

Gener8 LFO Tutorial

As promised, here’s a little tutorial on the new LFO feature in the Launchpad module 😀

This Tutorial goes through some of the ways to implement LFOs into your compositions by effecting controllers and settings in the (at) Filter module.

 

Follow1

One of the powerful but hidden delights of Gener8 is a sequencing method which can quickly produce small Clip sequences in a live situation: Follow Actions

So, here’s a short tutorial to help you master it.

Some salient points to remember:

  • Each Clip can have its own ‘Follow Action‘.
  • A Clip’s ‘Follow Action‘ will occur a set number of beats after that Clip has been triggered.
  • There are a number of different types of ‘Follow Actions‘ which can be applied: Increment, Random, Other, etc.

Step 1 – Prepare your Clips

To do any kind of sequence of Clips, we’re going to need some Clips to sequence. So let’s get started:

  1. Spark up Modul8, make sure you have a ‘New Project’ so things don’t get confusing.
  2. Open up the Gener8 Launchpad and Editor modules (these are the core modules and you’ll need to run these together).
  3. Once the Launchpad is ready, create yourself a few Clips on the 1st layer. To do this simply click on the preview panels on the empty Clip holders. NOTE: It’ll be useful for the sake of this tutorial to create your Clips in the same clip-slots as the image below.

Follow2

Step 2 – Assign Media to your Clips

You can skip this step, but the final result will obviously be more effective with media!

  1. Chuck some of your favourite media in your Media Panel. (select a few files from a Finder window and drag/drop them into the Media Panel)Follow3
  2. Activate a Gener8 Clip.Follow4
  3. Select a media for that Clip from the Media Panel.Follow5
  4. Activate the next Gener8 Clip (make sure the Clip trigger has stopped flashing – a useful tip when you are assigning a lot of media’s is to turn off the quantise to speed the process up)Follow6
  5. Select the next media for the second Clip. 🙂
  6. And so on, repeat until all your Clips have media assigned to them.

Tip: You can also change the media assigned to a Clip in the Clip Inspector (top left – Trig pane). There is a value for ‘Media’ number there.

Step 3 – Create a Follow Actions

As I mentioned before, there are quite a few different types of Follow Actions, but first we will have a play with the ‘Increment’ action.

  1. Select the topmost Clip by clicking on the media preview of the Clip in the Launchpad (it doesn’t need to be active, you can do this on the sly during your performance.)  Selected Clips have an orange square around them.
  2. Okay, the Clip Inspector will now be open on the top left of the Gener8 Launchpad, and will be displaying the properties of the selected clip. Select the ‘TRIG’ pane to view the Follow Actions settings.Follow7
  3. Next, set the Follow Actions menu to ‘Increment’. You will see a further setting appear, we’ll leave this at the default setting of ‘1’ for now. Time for some explanations…Follow8

How Does a ‘Follow Action’ Work?

Okay, now we have a Follow Action in place (in the above instance it’s an ‘Increment’ action), the next time this Clip is triggered, it will send out a secondary trigger which will occur a set number of beats after the initial Clip is triggered. You have options for which Clip is triggered next, and how many beats will occur before the ‘follow trigger’ happens.

You can only:

  • Trigger Clips in the same layer.
  • Delay triggers by whole beats.

Everything else is pretty much game, but remember – changes to a Clip’s Follow Actions settings will not take effect until that Clip is re-triggered.

Step 4 – Let’s make a Follow Loop.

We have an Increment action on our 1st Clip, let’s see if we can make a simple sequence which works in a loop.

  1. Select Clip 2 and make a further ‘Increment’ action for this Clip, only this time let’s set the ‘INCR.’ value to ‘2’.Follow9
  2. Now select Clip 4 and again make another ‘Increment’ action. This time we will set our ‘INCR.’ value to ‘-3’.
  3. Re-trigger Clip 1 and sit back while you sequence plays…Follow10

So, how is this working?

Our 1st Clip has an increment value of 1, which means it will trigger the Clip ‘1’ space below it, which is ‘Clip 2’.

Clip 2 has an increment value of ‘2’, so it will trigger the Clip ‘2’ spaces below it: ‘Clip 4’.

Clip 4 has an increment value of ‘-3’, so it will trigger the Clip 3 spaces above it: ‘Clip 1’.

Clip 1 has an increment value of ‘1’, so…. are you getting the idea?

Positive incremental value trigger Clips below the current Clip. Negative incremental values trigger Clips above the current Clip. Zero values simply re-trigger the same Clip.

Play around with the settings.

The most enjoyable way to learn something is through play, so have a go at changing the values until you’re happy with how they behave.

  • Change the ‘beats’ value to adjust the timing of the Follow Action.
  • Change the style of Action to get familiar with the different results.
  • Make sure you make some other pages to see how far this can go.

What are all these settings?

Okay, explanation time again. Here’s a little run through all the options.

  • Increment – Triggers to a specific Clip by using a numeric value (positive = move down, negative = move up, zero = re-trigger).
  • Random (All) – Triggers any Clip on the layer, on any page.
  • Random (Page) – Triggers any Clip on the same page.
  • Other (All) – Triggers any Clip on any page except itself.
  • Other (Page) – Triggers any Clip on the same page except itself.

Okay everyone, I’ve spent enough time on this now and it’s reached that lovely point of readiness. 0.6 is finally here!

Gener8-Logo-3d

Tons of updates and improvements. More bug fixes than I can remember.

It’s been nearly a year since the last release (where did all that time go?), and many of those hours have gone into refining almost every function of this module suite.

NEW FEATURES IN 0.6

  • Recordable and editable Timeline for clip changes.
  • Full native Novation Launchpad support.
  • Native Korg Nano control support.
  • Syphon input support.
  • Support for new Modul8 2.7 keywords.
  • Enhanced Scrub bar for stutter free scratching.
  • Clip transition auto-fade feature. (Available in the Editor preferences)
  • Improved BPM Tap functionality.
  • Option to disable Auto-Loop function during Logical Render. (Available in the Editor preferences)
  • Deselect envelope points by clicking off the selection in the Editor timeline.
  • Edit the keyword of envelopes by text input (useful for envelopes that are difficult to pick in the main Modul8 UI)

Timeline Module:

  • Record your Gener8 Launchpad performances.
  • Dedicated module to view and edit your recording.
  • Select recorded clip events, drag to adjust timing, or delete them.
  • Adjust loop range from the timeline.
  • Zoom in for fine editing of your performances
  • Beat snapping. When dragging clip events they will stick to the nearest beat for easy editing.
  • Quantise function to tidy up your performance.
  • Beat/seconds counter display.

Novation Launchpad Support:

  • Create, Select or Trigger clips in Gener8 from the Novation Launchpad
  • Novation Launchpad displays all active clips automatically – no MIDI mapping required.
  • Select or create layers
  • Scroll pages
  • Tap BPM
  • Start/Stop Clock
  • Arm Timeline recording
  • Dedicated page for selecting media.
  • Works alongside Ableton Live (User 2 Mode)

Korg NanoKonrol Support:

  • Works in nanoKontrol Scene 3, leaving you plenty of space to map you own controls.
  • Toggles between A/B layers (top push button 9)
  • Adjust layer transparency/alpha values (faders 1-5)
  • Adjust layer audio volume (knobs 1-5)\
  • Select active row (knob 9)
  • Trigger clip on active row (bottom buttons 1-5)
  • Trigger entire active rows (bottom button 9)
  • Dedicated crossfader slider (fader 9)
  • Show/Hide layers (top push buttons 1-5)

If you’re on the mailing list you will receive a download link, and if you’re not join up and I’ll send you the goods.

I’ll be posting more info about this update over the next few weeks so keep your eyes peeled. So much to teach you all. I am in the process of building more tutorials and updating the manual at last too.

Hope you like it!

8 )

One of the things I get asked fairly regularly about is how to sync Gener8 to other audio applications (Ableton, Traktor, Logic, Reason, etc.) via MIDI clock. So I thought I’d put this simple tutorial together to explain the basics.

I don’t intend to get into the nitty gritty of producing MIDI clock signals from each and every DAW out there (there’s plenty of info on the web for that, or in your favourite software’s manual, which if you haven’t already read it cover to cover I suggest you do as you’ll be surprised by some key features that are hidden away in there). And I don’t want to delve too far into getting MIDI signals into MODUL8 itself either, but I will say a little bit:

MODUL8 receives MIDI through the IAC (Inter Application Communication) Driver, so make sure you are sending your MIDI clock signals to IAC.

Also, be sure to check the IAC driver is enabled before starting up MODUL8. You can access your system MIDI settings with the ‘Audio MIDI Setup’ OSX app.

So then, we’ll begin by assuming you can get a MIDI clock signal into MODUL8. Okay then, let’s get this going…

STEP 1

Open up MODUL8, and get your GENER8 modules running. You’ll need a minimum of the Launchpad and Editor modules. (In this tutorial, we’ll be using the 0.53 version of GENER8)

Do not open any BPM module, and if you have one running, close it! – You won’t need it while running GENER8, and it will likely clash and may cause it to bug out. GENER8 has its own clock signal, which can also be accessed by other modules (info here for developers).

STEP 2

Start your MIDI clock running in your Audio app, and output it to the IAC driver.

STEP 3

Now is the time to check if we are receiving a MIDI clock in GENER8.

The Launchpad module has its Clock section to the top right. If all is good and well, it should be looking something like this:

Clock

You’ll notice the ‘MIDI CLOCK’ button. This toggles between external MIDI clock and GENER8’s internal Timecode.

Set the ‘MIDI CLOCK’ to the on position. Your clock section will now look like one of the following:

NoClockIn this image, the Launchpad is listening for incoming MIDI clock signals, but cannot find any, and gives the ‘PAUSED’ message. If you see this message, double check you are sending your MIDI clock correctly, and if in doubt: Restart MODUL8.

NoSyncQuantIn this image, the Launchpad has found a MIDI clock signal and tells us that its running at ‘BPM : 120.00’. If you see this, all is good. But we are still paused.

One more step…

STEP 4

A MIDI clock consists of 2 messages, the CLOCK message (which runs at 24 counts per beat), and the START/STOP message. So, although GENER8 is receiving a MIDI clock signal, it’s still waiting to be told when to Start.

Before you restart your DAW’s clock, now is a good time to check your Time Signature is correct.

The Time Signature of a piece of music is defined by the number of beats played in each bar. In most modern dance and western music this will likely be 4 beats per bar (Gener8’s default value), but if you happen to be performing to a Waltz you’ll want to adjust your ‘BAR BEATS’ value to ‘3’ (for 3/4 time).

Adjusting the Bar Beats value will also adjust your possible Quantize values too.

So, when you’re quite happy, restart the Clock in your audio app. Once this is done, GENER8’s clock should now look like this:

Synch-NoQuant

You may notice small fluctuations in the incoming BPM, but do not despair – GENER8 will even this out to give you a steady beat.

So, your performance should now be in perfect Sync with your audio app. Also note that any Clips using the Editors ‘Auto-Loop’ function will magically adjust to any changes made to the clock timing from your audio app. Good times. Lovely!

And while I’m at it, the ‘LINK MASTER’ option is to control Modul8’s Master Speed with the BPM. That’s this guy:-

M8 Master Speed

So then people, get creative!

So here we have the new ‘(at) LFO to DMX (DMX)’ module for Modul8.

It’s basically a router for applying the Global LFO output (from my LFO Global module) to DMX channels. Much like the other LFO routers I have written for Modul8 keywords/controllers.

LFOtoDMX

For those of you who don’t know the LFO module and a still using the BPM router, it has 2 Low Frequency Oscillators (one of which can feed back into the other), and 1 BPM controlled waveform. All oscillators can produce a number of different waveforms (sine / tri / ramp / cut / square / random), and output the result through the sharedDictionary to other modules such as this new ‘LFO to DMX’ one. There’s even a version of the Filter module which accepts Global LFO inputs, so you can keep your whole composition synced to the same oscillations!

Now, I’m not a big (or small) user of DMX gear, and I don’t actually have any to hand (so I’m not even sure why I spent the afternoon putting this thing together). Therefore, I haven’t actually tested it on any proper lighting rig – but that said, I’m pretty confident it’s gonna do the job, as all the maths tests out okay. Just seemed like it should exist, so I made it. It would be pretty cool to get some feedback though, so if you fancy having a play around, please do let me know how it goes!

Network Timecode

I recently got to thinking about running multiple systems of Gener8 modules in sync, and the potential power that could be achieved for large scale projection etc.

While this is perfectly feasible within the current program (using MIDI clock over a local area network), someone handed me the idea of putting out the Timecode across the network and syncing to that.

At first I had my doubts. Any Timecode produced through the modules in Modul8 is subject to the resolution of the modules scripts, which is at a rate of 1 cycle per frame.

I had previously considered the generation a MIDI clock through the modules scripts, and then abandoned the idea due to this low resolution (as it would limit the range to something like 200bpm).

However, a clock for MIDI data, and a clock for video are two different beasts. Who needs to clock video faster than the output frame rate anyway?

So, I dug out the old Garagecube ‘Network’ module and started hacking away at the code, and after a couple of bleary-eyed late nights, I have a pair of Gener8 Launchpad modules locked into perfect sync.

Now, this is all very much on the rough side, and it’s a fairly long road before I’ll have something ready for everyone to play with, but it seems that the concept is sound, and I think this is quite big news.

Multiple projector set-ups with network synced video on a small budget are only a few steps away from here.

And a few more bleary-eyed late nights I think…

I will keep you all posted.

Clip creation, Sequencing with clip follow actions, adding filters, matching loops to BPM with the Auto-Loop function.

Tutorial 1

Gener8 – Tutorial 1 (Clip Creation / Sequencing / Filters / Beat Matching)

%d bloggers like this: