Cue a Mitti playlist over OSC
LED/VideoIntermediateMittiOSC
What it does
Imimot's Mitti help says OSC stays off until OSC Controls is enabled in Preferences. Mitti then listens on UDP port 51000. That same port runs an OSC Query server, so a browser opened at http://localhost:51000 lists the address space of the playlist that is open. Commands that take no value are also accepted as plain UDP strings. Every address starts with /mitti/.
Master commands use /mitti/{command}. /mitti/play starts the playlist and takes no argument. /mitti/togglePlay does the same job with an int of 1, which the help points at for controllers that always send a value. The Mitti 2.8 notes add /mitti/toggleVideoOutputs, /mitti/videoOutputsOn, /mitti/videoOutputsOff, /mitti/ping, /mitti/playCueWithCueID, and /mitti/{cueid}/setGotoToCueID.
Cue commands use /mitti/{cuenumber}/{command}. /mitti/1/opacity changes the first cue. /all/ hits every cue, /selected/ hits the selection, and current, previous, and next follow the playhead, so /mitti/current/opacity and /mitti/next/opacity are both valid. From Mitti 2.8 a cue also has an ID of at most six uppercase characters. The default ID is the playlist index. The notes' example is /mitti/INTRO/play when the ID is INTRO. Video playback speed is /mitti/{cuenumber}/playbackSpeed. The 2.8 release notes treat that value as a percent: 100 is normal speed, 50 is half, and 200 is double, and the in and out points move to match the new speed.
Feedback goes to a separate target. When several commands control the same thing, Mitti sends the one that carries a value, so /mitti/play is never the feedback message and /mitti/togglePlay is. A numbered cue message is followed by the current form. Read-only feedback, which the help says cannot be sent back as control, includes /mitti/time, /mitti/cueTimeLeft, /mitti/cueTimeElapsed, /mitti/previousCueName, /mitti/nextCueName, /mitti/currentCueName, and /mitti/currentCueTRT. The time fields use hh:mm:ss:ff. /mitti/resendOSCFeedback repeats the current feedback set. The Resend button does the same thing.
The help says the full command list is whatever OSC Query returns for that playlist.
How to set it up
- In Mitti Preferences, enable OSC Controls. Confirm the show machine can reach UDP 51000. Open
http://localhost:51000when you want the live address list. - Send
/mitti/playwith no argument to start the playlist, or/mitti/togglePlaywith int 1 when the sender always attaches a value. - Address a cue by playlist number, or by a cue ID of up to six uppercase characters.
/mitti/1/opacitychanges the first cue./mitti/INTRO/playplays the cue whose ID is INTRO. - Use
/all/,/selected/,current,previous, ornextwhen a fixed number is the wrong target. Set a video cue's speed with/mitti/{cuenumber}/playbackSpeedas a percent. - Turn on OSC feedback and point it at the listener when you need state back. Read the time and cue-name addresses from that stream. Call
/mitti/resendOSCFeedbackto refresh them.
Source: Mitti OSC/UDP controls, What's new in Mitti 2.8, and the Mitti 2.8 release notes.
FAQ
Does /mitti/play come back as feedback?
The help says feedback uses the form that carries a value. /mitti/play is not sent out. /mitti/togglePlay is, with the matching int.
Where is the rest of the address list?
On the OSC Query server at http://localhost:51000 while Mitti is running with OSC enabled. The help treats that list as the full set for the open playlist. The pages above document the addressing rules and the 2.8 additions.
Original source: https://imimot.com/help/mitti/external-controls/osc-udp-controls