home/ atoms/ osc-vs-midi-resolution

OSC's 32-bit float arguments provide far higher control resolution than MIDI's 7-bit (0–127) integer range

MIDI control change messages encode values as integers from 0 to 127 — 128 discrete steps. OSC messages can carry 32-bit floating-point numbers (approximately 7 decimal digits of precision), enabling continuous and extremely fine-grained control. For many parameters this difference is practically audible: slowly moving a MIDI filter cutoff produces stepped changes (‘zipper noise’), whereas an OSC float produces a smooth glide. The article uses colour hue via dial as a concrete illustration: MIDI’s 128 steps produce visible colour banding; OSC floats produce a smooth hue sweep. For live performance and generative control, higher resolution also reduces the need for interpolation smoothing in the receiving software.

Examples

Controlling a reverb size with MIDI CC: 128 discrete positions. The same control via OSC float: millions of positions. Pan a sound slowly with each — the OSC version is perceptibly smoother without any software interpolation.

Assessment

A musician wants to smoothly modulate filter resonance during a live performance. Explain one specific problem they would encounter using MIDI CC and how OSC would mitigate it. What software-side technique can partially compensate for MIDI’s limitation?

“A 32-bit float for example is a 7 digit number with a decimal place, allowing us to create much smoother transitions when we turn a dial. In comparison, MIDI sends integers (whole numbers) on a range between 0 and 127.”
corpus · introduction-to-open-sound-control-osc-mct-blog · chunk 1