Send CC Command on Quarter Notes for Tempo?

I use a hardware guitar processor (Line 6 HX Stomp), which is connected to a Mac (audio and MIDI) running Gig Performer. My Gig Performer Setlist/Songs are setting the tempo for all plug ins.

The HX Stomp can accept a MIDI “tap tempo” if you send it a CC command on every quarter note (to simulate footswitch taps). So, sending the CC command about 4-5 times in a row on a quarter note will set the device’s tempo for it’s time-based effects.

I thought maybe I could use a Script to do this from GP, but can find no functions for “tempo”. Does anyone have any ideas of how CCs could be sent to correspond to a quarter note GP tempo???

Was this to act as the workaround to GP not sending out midi clock?

2 Likes

This appears to work in my tests with Ableton. Just update the midi out device to the HX Stomp (assuming it generates a midi out port) and the CC number (the example uses CC 55).

It resends the CC messages every time a song or rackspace changes, or when the playhead starts.

Var counter : Integer = 0

On BeatChanged(bar : integer, beat : integer)
   if counter < 5 then 
        SendNowToMidiOutDevice("IAC Driver Bus 1", MakeControlChangeMessage(55,127))
   end
   counter = counter + 1
End

// Called when you switch to another song
On Song(oldSongIndex : integer, newSongIndex : integer)
    counter = 0
End

// Called when you switch to another rackspace
On Rackspace(oldRackspaceIndex : integer, newRackspaceIndex : integer)
   counter = 0
End

// Called on attempt to change playhead status
On SystemEvent(newValue : double) Matching PlayheadStateChanged
    if newValue == 1.0 then
       counter = 0 
    end
End
3 Likes

@rank13, yes as a workaround for no MIDI clock, although I’ve used a tap tempo method with SetListMaker in the past and I prefer it to sending MIDI clock all the time because it sets the tempo quickly, and then the MIDI stream is kept a bit “cleaner.”

This script looks good, I’m excited to try it out and will let you know how it works with my setup.

UPDATE: This works great, rank13!! I am very grateful for your help … it would have taken me days of brainwork to figure this out. Plus, I learned a lot about scripts from the work I needed to do.

1 Like