DAOCPU is consisted of (1) a generative electronic composition written in CHUCK (https://chuck.cs.princeton.edu/); (2) a Dao De Jing analysis and visualization program written in Processing (https://processing.org/), which, is a standalone program but also has a "latent" relationship with the generative composition and may be played together; (3) drawings, which are inspired by the interactions that led to the development of Ensembl (a sort of off-chain record of version history). At present all three components are under development.
Future components of DAOCPU will include: musical instrument design, libretto, and costume. There are two categories of components: "generative" components, and "other" components.
Technical documentations of the individual component are inside of each of the component's folder.
Below are more general, audience-facing descriptions of the currently-available components.
This is a generative composition written in CHUCK. It is consisted of four sub-components: a conductor patch that controls time, and three sound-generating "musician" patches.
By downloading the code, and also CHUCK's miniAudicle, a user may listen to / run the standalone version of the composition on the computer. In the standalone version, the musician patches (they are called 'Silvering,' 'Mum Changing Tempo,' and 'Blurred Roland') are making the sound, while the conductor is keeping track of when a patch is about to finish improvizing. When that happens, the conductor introduces the next patch in line, ensuring that there is enough of an overlap between patches so as not to break texture, but not so much that notes clash, or miniAudicle crash. The conductor ocassionally introduces samples of the heart mantra into the texture.
The generative composition may also be paired with the Dao De Jing analysis program. In this combination, the Dao De Jing analysis program functions like a "meta-conductor". It generates "interruption melodies" that causes brief disruptions in musical time. The program achieves this by processing the text of the Dao De Jing, and mapping different punctuations to durations. It also takes over the introduction-of-mantra function (from the conductor program).
This component may also be used as a "backing track" for an improvizer to perform alongside. A backing track version of the composition is currently under development.
This is a text analysis and visualization program, written in Processing. The program was designed to perform analysis on a text so that the results may be used to generate other non-text properties (time for music, visual for fabrics, 3d models, etc.).
The program picks a random chapter from James Legge's translation of the Dao De Jing (https://en.wikipedia.org/wiki/Tao_Te_Ching & https://ctext.org/dao-de-jing), and filters the chosen chapter's text using Daniel Howe's riTa library (https://rednoise.org/rita/#reference). At present, the filter leaves only the nouns and the punctuations in the result that it returns. The filtered text becomes the basis for a time strucuture, which is currently implemented as timed disruptions in the generative composition, but may have other uses.
The program then performs phoneme analysis on the filtered text. Each phoneme is matched with a 3d-shape. These 3d-shapes were created using the "super shape" formula written by Paul Bourke (http://paulbourke.net/geometry/supershape/). This then becomes the basis for visual patterns.
The program performs additional sentiment analysis on the filtered text, using Google's Natural Language API (https://cloud.google.com/natural-language/). At present, this is provided as a feature, but is not visualized or sonified.
These drawings are like visual logs of the evolution of Ensembl. They describe (from one perspective) structures, relationship, and interactions. They are not generative in the same way that components 1 & 2 are, as the marks are fixed, but they may be used as prompters for other actions, for example, as graphic scores for music improvization.
Some graphic scores come with text-based explanations (usually in the form of "key to notation"); in other graphic scores intepretation is left open. The drawings in DAOCPU do not offer key-to-notations, but their intepretation is still informed by its relationship with Ensembl, as well as with the other components within DAOCPU.
(Under development)
Custom fabrics (for costumes etc.) via services such as WOVNS (https://www.wovns.com/)...
(Under development)