-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Spaces and Nodes for media data controls and organisation
The Span project is a kind of CMS (Content Management Software) for media instruments.
It works with the notion of a "project" which could be highly customized, run local patches and/or use distant existing namespace (in localhost or with a network).
It has a powerfull mapping engine and is natively (OSC) Open Sound Control.
It could be used with a lot of protocols such as OSC, MIDI, DMX, ARTNET, SERIAL, VISCA, PJLINK, MINUIT, COPERLAN and more…
A SPAN project file is a JSON that has multiple indexes and dictionaries. This format has been chosen for its speed and simplicity. However, a special syntax is needed, and we could use this online viewer to read it or another JSON viewer. A lot of little utilities should be easily found over the web.
All the requests are done in a single place.
Span abstraction is the only thing you need to put in the patch to have the span environnement ready.
- Open-Sound-Control communication
- Multicast - Unicast - Broadcast
- Project-manager
- files and folder handling
- tags and custom taxonomy
- Multi-mapping
- One-to-Many mapping
- Multi-modes mapping
- Events manager
- Polyphonic cues player
- Namespace Manager
- Description files loading
- Namespace-learning
-
Loadbang :
-
Create the span database, it is a RAM dictionary
-
Add a system key and fill in with :
- "isruntime" : 0,
- "os" : "macintosh",
- "osversion" : "73",
- "maxversion" : "605",
-
Add a span subkey to system with :
- "credits" : "produced by didascalie.net & developped by Tom Mays & Renaud Rubiano",
- "license" : "GNU-LGPL",
- "status" : "alpha", * "version" : { * "major" : 0 * "minor" : 0, * "revision" : 1
- "preferences" : { * "name" : "span.preferences.json", * "path" : "~/Library/Application Support/span
- "path" : "work:/Users/Renaud/Documents/SVNs/span/lib/
-
load settings dict (span_settings) from library folder which is in the library folder like span patch (you cannot move them). AppVersion, AppName, credits and "last-project-path" if there is one. "none" otherwise.
-
-
Project load :
- If previous path : Check if a project file is in the specified path (span_project.json).
- if none : Create a temp folder in span main folder and create a project in it from the empty template.
-
Namespace load :
- Make a request for json files with "namespace" tag, and add them to the namespace-dict (span_namespace).
- Overwrite namespace-dict with config values which are in project file.
default-span-database : What is SPAN database on load.