Help - Search - Members - Calendar
Full Version: Control Itunes With Midi?
440 Forums > English > Mac Music > Music Software > iMusic: iPod, iTunes, MP3 etc.
td3k
Does anyone know of anything that will let one use their MIDI controller to control transport on iTunes? I have messed around with MIDIPipe using Applescript trigger, but not had much luck. I just think it would be cool to use my UC-33 to control transport on iTunes when I'm not using a sequencer.

Any ideas?
Thanks,
jamisonjonus
Today I made MidiPipe control iTunes for me. This may be difficult to efficiently explain.

For my example, I'm going to assume a single midi input, using simple note-on commands to trigger the transport of iTunes

First..in MidiPipe set up a new Pipe.
Add a Midi In tool, select your desired Midi Input.

Now add a Message Filter tool. In the Message Filter tool (do this after you've added it to your new pipe...) uncheck Note On/Off [ the filter allows any signal to pass that is not checked. The Idea here is to only allow note information to pass through - this is important, I'll explain why later ]

Now add the AppleScript Trigger tool to your pipe.

Here's what you need to know now...first..there is a sample script that comes in the tool. It will tell the finder to "say" MidiPipe and Rocks when you press the C5 and D5 keys of your midi keyboard. It does this through your computer speaker or sound card

But basically here is what's happening...MidiPipe is running the script between "on runme(message)" and "end runme" as a normal script, and it seems to run this script any and every time any midi input comes through the system. This is why I had you put the filter on, otherwise the script runs almost constantly depending on your midi setup, auto sensing, stuff like that.

So you MUST start the script with runme(message) and end the script with end runme for example....

runme(message)
whatever your script wants to be, midi related or not
end runme

Now, I know very little about MidiPipe or AppleScript. Here is what I did. I used the default script that triggers the finder to "say" something and changed it to make iTunes do something.

The "if statement" evaluates the "note on" info. 144 is the Note On command, 60 tells it which note (in this case, C5) and the last number is the velocity, all that matters is that it's above 0) so the if statement says...if C5 is hit..then do the following...

so here are two if statements, you have to follow apple script syntax...I did the editiing in the Script Editor just so I could see if there were errors, even though I couldn't test it. And in this post, the tabs aren't preserved, so copy this into Script Editor first before you try putting it into MidiPipe

on runme(message)
if (item 1 of message = 144) and (item 2 of message = 60) and (item 3 of message > 0) then
tell application "iTunes"
play
end tell
end if
if (item 1 of message = 144) and (item 2 of message = 62) and (item 3 of message > 0) then
tell application "iTunes"
next track
end tell
end if
end runme

So how did I know what commands to send to iTunes? I used ScriptEditor to open the Dictionary for iTunes. Basically you can use play stop pause rewind fast forward back track next track for basic transport functions.

As for Midi Notes...60 = C5, 61 = C#5, 62 = D5, 63 = D#5....you get the picture. So from this you could construct a script that does just about anything that AppleScript can do from by firing midi notes. Obviously you can get even more complicated than that...but that's all I've done so far.

Peace
James
td3k
Cheers mate! Absolutely brilliant!
My friends will be amazed and mystified.

Thanks,
formatj
QUOTE (td3k @ Mar 1 2005, 12:34)
My friends will be amazed and mystified.

on a related note....

If you have a bluetooth phone and want to really impress your friends try Salling Clicker ($19.95)

You can use the phone to control iTunes and even search for tracks by name, artist, composer, and album. When used with a Palm OS handheld or Symbian phone, upcoming tracks or album artwork is shown in your handheld's display!

it can also control Keynote, PowerPoint, EyeTV, SlimServer, Mail, NetNewsWire, DVD Player, VLC, Preview, and more
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2024 Invision Power Services, Inc.