ossia / libossia

A modern C++, cross-environment distributed object model for creative coding and interaction scoring
https://ossia.io
GNU Lesser General Public License v3.0
208 stars 33 forks source link
c-plus-plus-14 creative-coding floss midi open-sound-control osc oscquery ossia

libossia

libossia is a modern C++, cross-environment distributed object model for creative coding.

It allows to declare the architecture of your creative coding application's functions as a tree of OSC nodes and parameters. These nodes/parameters can have attributes, which allow to declare many of their properties, such as their values, types, units, ranges, etc....

This OSC tree-based architecture (coined "device" in the OSSIA terminology) can then be exposed over the network under several protocols, some of which allow this architecture, and the properties and values of its nodes, to be fully explored and queried. For now, protocols available in the implementations are: plain OSC, OSCquery, and Minuit - more are part of libossia and will be made available in the future.

libossia offers bindings and implementations for several environments: PureData, Max/MSP, Python, C, C++, openframeworks, Unity3D, QML, Faust, SuperCollider.

You can find some documentation for the library and its various implementations is at https://ossia.io

Please feel free to ask questions on the forum, or to come and chat with us ! Gitter

More about the general project at: https://ossia.io

Download & Build Status

Binding Build Status Latest Build from Master Branch
Max Build Status https://nightly.link/ossia/libossia/workflows/ossia-max/master/ossia-max.zip
Pd Build Status
Unity3D Build Status
Build Status  
   Build Status  
  Build Status  
Coveralls Coverage Status  

Documentation

License

Available under both LGPLv3 and CeCILL-C

FOSSA Status