What is libmapper?

libmapper is an open-source, cross-platform software library for declaring data signals on a shared network and enabling arbitrary connections to be made between them. libmapper creates a distributed mapping system/network, with no central points of failure, the potential for tight collaboration and easy parallelization of media synthesis. The main focus of libmapper development is to provide tools for creating and using systems for interactive control of media synthesis.

Motivation

Open Sound Control (OSC) has been adopted by the academic and experimental-music communities for interactive media programming due to its flexibility in representing control data, strong semantics/human-readability, precise time-tagging, etc. Unfortunately, different projects utilizing OSC are rarely protocol-compatible. Many proposals have been made for creating standardized address-spaces/schemas to enable intercommunication, but we believe this is the wrong approach since it destroys the most powerful and useful aspect of OSC – the flexibility it allows for each user/designer/programmer to represent control signals and structures according to their specific needs or desires.

libmapper takes a different approach: instead of enforcing preset schemas we provide simple, distributed discovery and description; instead of address standardization we provide automatic translation; instead of normalization we provide automatic scaling... but that’s not all!

In addition to the flexibility of data-representation provided by Open Sound Control, libmapper provides:

libmapper creates a distributed mapping system/network, with no central points of failure, the potential for tight collaboration and easy parallelization of media synthesis.