An OSC, MIDI and DMX timeline

Draw automation curves for any OSC, MIDI or DMX parameter, add interactive triggers and conditions, and discover devices automatically with OSCQuery. Free and open-source, on Windows, macOS and Linux.

Download ossia score 3.9.0 Try it in your browser Read the documentation

Free and open-source (GPLv3) · Windows, macOS, Linux, Raspberry Pi and web browser

ossia score started as a sequencer for OSC: every parameter of every device on the network becomes an address you can automate, record, map and score over time. It is used to control patches, game engines, media servers, lights and robots.

What you can do

  • Automation curves on any address: OSC, MIDI CC, DMX channels, or the parameters of ossia score’s own processes (writing automations).
  • OSCQuery: browse the parameters of compatible software (for instance patches and applications using libossia) and drag them into the score, instead of typing addresses.
  • Interactive timelines: triggers wait for an incoming message, conditions choose between branches, loops and scenes repeat until something happens (breaking the timeline).
  • Mapping: scale, smooth and transform values between devices, with curves, JavaScript or math expressions (mapper).
  • Inputs everywhere: gamepads, Wiimotes, Leap Motion, MIDI controllers, serial ports and Arduino, Bluetooth LE sensors, depth cameras and tracking protocols (PosiStageNet, TUIO, RTTrP, OpenTrackIO) (sensors to OSC).
  • Many protocols: OSC over UDP, TCP, WebSockets and serial, OSCQuery, MIDI, DMX (Art-Net, sACN, DMX USB), MQTT, CoAP, HTTP, LSL, CAN.
  • Musical time: tempo, time signatures and quantization when the score must follow a beat (musical features).
  • Zero configuration: OSC devices are found on the network with Bonjour/Zeroconf, and your own parameters can be published the same way or over OSCQuery.
  • Every OSC transport: UDP, TCP client and server, SLIP and COBS framings, host names instead of IP addresses.
  • Clean sensor data: calibrator, deadzones, noise gate, hysteresis, debounce and easing curves (value filter, calibrator).
  • Address patterns: combine, apply and sweep OSC address patterns to drive many devices at once (pattern matching).
  • MIDI tools: virtual MIDI ports, network MIDI ports provided by the operating system, MIDI file playback, filters, microtonal Scala scales, and the computer keyboard as a MIDI input (MIDI).
  • Record and replay any device to CSV, including incoming DMX (recording).
An interactive timeline where a trigger waits for an external event in ossia score

OSC sequencing needs, and how ossia score answers them

What you needHow ossia score does it
Automating the parameters of another program over timeCurves on any OSC, MIDI or DMX address, and OSCQuery to browse parameters instead of typing them.
The same tool on Windows, macOS and LinuxThe same features on all three and on Raspberry Pi, except for features tied to an operating system or to hardware, such as Spout, Syphon or CUDA.
A timeline that waits for events, branches and loopsTriggers, conditions and loops are part of the timeline, not an add-on.
Turning controllers and sensors into OSCGamepads, MIDI controllers, Arduino, depth cameras and tracking systems, mapped with curves, JavaScript or expressions.
Sound and video next to the control dataAudio, video, 3D and shaders in the same timeline as your OSC, MIDI and DMX automation.
A simple control surface on a phone or a tabletThe browser remote, without installing an app.

Pairs well with

ossia score speaks OSCQuery natively through libossia, which also exists for Max/MSP, Pure Data, Unity, Python, SuperCollider, openFrameworks and Qt: add a few objects to your patch or project and its parameters show up in score, ready to be automated.

Download ossia score 3.9.0 Try it in your browser Read the documentation

Free and open-source (GPLv3) · Windows, macOS, Linux, Raspberry Pi and web browser

Lire cette page en français