This years' NIME conference, which took place at Goldsmiths University, featured a one day hackathon centered around assistive interfaces narrowing down disabling barriers to musical and creative expression. The challenge was the following: "Design a musical device that can be easily configured/modified to make music making accessible to all, including musicians with a disability". A hack by Fiore Martin (based on the CCmI diagram editor) won the prize related to this challenge!
This years’ NIME conference, which took place at Goldsmiths University, featured a one day hackathon centered around assistive interfaces narrowing down disabling barriers to musical and creative expression. The challenge was the following: “Design a musical device that can be easily configured/modified to make music making accessible to all, including musicians with a disability”.
A hack by Fiore Martin (based on the CCmI diagram editor) won the prize related to this challenge!
Visual languages such as Max/Msp and Pure Data (PD) are well established in the community of sound designers, interactive artists, creative coders etc. However they are exclusively based on visual diagrams - small shapes representing unit generators, messages, numbers etc. and connection lines describing the signal flow through such objects - and are therefore inherently inaccessible to visually impaired users.
The CCmI Editor sports a range of default diagram types (UML, Tube map etc.), but can be easily customized to accommodate new user-created types through its template interface and even more complex types by coding extensions of the nodes and edges of a diagram.
Hence the idea for this hackathon: extend the CCmI editor to make it mirror the PD language and hack it in order to make it output valid PD patches when a diagram is saved on a file with a .pd extension. This would allow visual impaired users to build a patch - PD programs are dubbed with this name - using the CCmI audio-haptic interface and then save the patch as a .pd file, ready to be open and executed within PD. Being the specifications of how PD patches are saved on files open, it was possible to reproduce the same format in a persistence module of the CCmI editor.
In the time span of a one-day hackathon, only Objects, Numbers and Connections have been implemented and only one connection is possible between inlets and outlets of any two elements. However this opens up the possibility of a full implementation as well as new research questions, such as: how could the tree structure be changed to accommodate a more effective representation of PD patches, leveraging from PD-specific features ?
The code that resulted from the hackathon is available on the SoundSoftware platform, licensed under the GNU general public license.