World Music's DIVERSITY and Data Visualisation's EXPRESSIVE POWER collide. A galaxy of INTERACTIVE, SCORE-DRIVEN instrument model and theory tool animations is born. Entirely Graphical Toolset Supporting World Music Teaching & Learning Via Video Chat ◦ Paradigm Change ◦ Music Visualization Greenfield ◦ Crowd Funding In Ramp-Up ◦ Please Share

Thursday, September 7, 2017


A Musical Instrument Classification System As Model Web Repository

Only a tiny proportion of musical instruments have an interactive internet presence. Apart from modeling them consistently and economically in the browser, there is the challenge of their efficient and simple retrieval.

Driving instrument development are the dynamic, tonal and timbral needs of instrumentalists. Those of a folk instrumentalist can be very different from those of a classical player. Whether fast and reactive, high or low in pitch, percussive, loud, brash, mellow and smooth or with wide tonal range, each instrumentalist's demands lead to different construction forms.

Big, brave, open-source, non-profit, community-provisioned, cross-cultural and batshit crazy. → Like, share, back-link, pin, tweet and mail. Hashtags? For crowdfunding: #VisualFutureOfMusic. For the future live platform: #WorldMusicInstrumentsAndTheory. Or just register directly as a potential crowdfunder..

Potential Crowdfunder?

Just as the simple shepherd's whistle -progressively equipped with additional holes and levers- developed towards the various forms of sophisticated modern flute, to be of lasting use, our storage mechanisms need to reflect the progressive and continuing refinement at the heart of instrument development. This implies hierarchy, reuse and intuitive extension.

Could the Hornbostel-Sachs musical instrument classification system, taken together with each instrument's purely musical configuration, provide a framework for online instrument model storage?

Of clear promise in accommodating instrumental modeling diversity across online teaching and learning environments, just how might this work?

Musical Instrument Classification

Several classification systems for musical instruments exist, chief amongst them perhaps that of Hornbostel-Sachs.

This widely-used system splits musical instruments into families based on their their tone-producing (and hence construction) characteristics, or 'form'.

Though challenged by more recent (so to say 'abstract') instrument interfaces, Hornbostel-Sachs is a good fit for conventional instruments widespread use in social or community music, dance and online, person-to-person teaching.

Chordophones (stringed instruments), for example, are split into various sub-families such as zithers, harps, lutes and their hybrids.

The 'leaves' on this instrument tree are specific instruments. Some have a unique index, while -perhaps as a result of parallel development across geographically separate cultures- others share an index.

Decoupling Form and Function

Working from a generic base, any instrument's musical function can in essence be both modelled and dynamically changed simply by modifying:

  • scale or channel lengths
  • temperament or intonation
  • number of notes per octave
  • number of channels
  • tunings
Nevertheless, not just instrument form, but also the associated function can share the same Hornbostel-Sachs index.

The index for guitar (321.322), for example, is shared with multiple other instruments, yet even a guitar can comprise a wide variety of musical configurations.

Moreover, radar charts -superimposed- open the possibility of direct visual comparison of instrument configurations:

To return to our main theme, however, the Hornbostel-Sachs hierarchy can be used both as classification system and indexing system for our instrument repository (database).

Because Hornbostel-Sachs' system omits any mention of an instrument's musical characteristics, instrument form (construction) and function (musical characteristics) remain entirely decoupled. This. Is. Good.

It also brings some striking benefits.

Web Instrument Repository

Envisaged here is a simple, global instrument model indexing and storage system ('repository'), comprising both form (structure) and function (musical characteristics). Hierarchical and hence naturally accommodating progressive refinement, it promises a quickly understood concept, storage efficiency and intuitive interfacing with cutting edge storage technologies.

This hierarchy represents not just a highly structured tree of instrument construction (form) definitions, but it's nodes are the perfect place to store details of the associated musical configurations ('function').

Because instrument model configuration is a layered and strictly sequential process, the hierarchy of "function" nodes are a wholly predictable product. Across all variants, these too form (sub) tree structures based on key-value pair nodes.

We could of course just implement each configuration set as a single, monolithic node, but this would impede visual selection (from the classification tree) of multiple instruments sharing the same characteristics.

Say I play fiddle/violin, and want to see how other 4-stringed lute family instruments would behave under the same score, in the former scenario, selecting the node representing 4 strings would immediately identify instruments such as banjo, eukele, mandolin, bass and bouzouki, possibly making them available for drag-and-drop population of my environment's menus.

In the latter scenario I would be obliged to do a database search.

Using a text-based file format such as JSON, such definitions are straightforward to create, store, access, reconstruct and manipulate.

Here (in a screenshot taken from the code editor 'Sublime Text') an example of such a JSON file applied to the classification of stringed instruments (chordophones), but with the details 'collapsed'.

JSON is widely supported by development tools, allowing the same principles to be applied to other classification hierarchies.

User-set variables such as tunings are best catalogued and mapped-to separately as user preferences.

Instrument Repository Web Access

Carefully applied, key-value pairs greatly simplify web addressing (so-called URL routing), making life easier -even if not consciously- for everyone.

They permit so-called static or semantic URLs. These are, you might say, entirely 'literal' addresses: no translation necessary.

Most front-end frameworks rely on non-semantic routing and hence require special measures to visualise both data and routes.

World music visualization aggregator platform or framework. #VisualFutureOfMusic #WorldMusicInstrumentsAndTheory In our case, and as seen in the screenshots above, the instrument and routing hierarchy are one and the same, meaning a single visualization library provides the means for the data tree to be interrogated, browsed, added to and if necessary rearranged.

In place of some predetermined view returned by routed query, we have instrument-specific JSON configuration data returned by static URL, and used to build the instrument directly from it's parent (instrument family's) generic model.

For a multi-instrumentalist, this may in sum (and as hinted at in the illustration to the left) mean:
  • directly populating the user interface (menus etc) with own instrument preferences
  • free choice of instrument models or theory tools
  • simultaneous display and animation of several models side-by-side
  • consistent behaviours across all models
  • the ability to detach models from notation for 'what-if' experiment

These point the way towards a simple, intuitive environment fully configurable to personal preferences.

The cherry on the cake? Much has already been implemented as part of a proof of concept. I now need help on multiple levels to get this to production.

I have good people in mind, but the project needs big-time financing. Please help by registering as a potential crowd funder, and by making a buzz on social media. :-)


online music learning,
online music lessons
distance music learning,
distance music lessons
remote music lessons,
remote music learning
p2p music lessons,
p2p music learning
music visualisation
music visualization
musical instrument models
interactive music instrument models
music theory tools
musical theory
p2p music interworking
p2p musical interworking
comparative musicology
world music
international music
folk music
traditional music
P2P musical interworking,
Peer-to-peer musical interworking
WebGL, Web3D,
WebVR, WebAR
Virtual Reality,
Augmented or Mixed Reality
Artificial Intelligence,
Machine Learning
Scalar Vector Graphics,
3D Cascading Style Sheets,

Comments, questions and (especially) critique welcome.