USER INTERFACES
Several graphical interface programs support all or some of the CDP system:
SoundLoom
The SoundLoom interface for MacOS™ and Windows™ has been written by Trevor Wishart, who has authored most of the CDP programs. CDP's installation includes the full CDP software.
SoundLoom shares many characteristics with Soundshaper (see below), in that you choose files to process, set parameter values and run the process.
Input files that might be used are first gathered onto the Workspace, then the actual file(s) needed is(are) copied to the Chosen Files panel:
(The example is from a function that needs two files.)Clicking the Process button reveals processes that will run with the chosen file(s). Then a Parameter dialogue box allows values to be input and the process to be run:
SoundLoom adheres closely to native CDP conventions; for example, a stereo file chosen for a mono-only process will show the process as unavailable.
A special feature of SoundLoom is the Music Testbed, to which new SoundLoom-only facilities are added from time to time. Examples include programs for converting various types of scientific data into sound, and Brass Physical Modelling (from Edinburgh University's NESS project).
Further information on SoundLoom is available at Trevor Wishart's site.
Soundshaper
Soundshaper is a Windows™ user interface for CDP. The installation includes the full CDP software.
Soundshaper reflects the simple structure of CDP programs: soundfile-in >> process >> parameter-values >> soundfile-out.
Then set some parameter values and optionally preview the result (up to 99 previews supported):
Similarly in Soundshaper, a soundfile is selected on the front page (e.g. by drag and drop), then a process normally via one of the menus:
Finally render the output file. The completed process occupies a cell on Soundshaper's Patch-grid, in which each row shows a chain of processes from left to right.
Soundshaper screenshot showing four-process chain:
Up to 16 rows of chained processes are available. The whole chain of processes (or rows of chains) can be saved as a patch, to be recalled and run later, possibly with different source sounds.
Soundshaper saves outputs internally to temporary files, though the user can save the output of any cell at any time. Soundshaper also features automatic conversion between the various CDP file types, wherever possible, and supports stereo and multichannel processing throughout.
Further information is available at the Soundshaper website.
Renoise CDP Interface
The CDP Interface integrates most CDP processes (up to Release 7) into the Renoise tracker DAW, which runs on MacOS™ Windows™, and Linux™. It is the only Linux interface for CDP at present.
The screenshot shows a parameter setting page for the spectral process COMBINE SUM:
Development of the interface was made possible by the LUA scripting possibilities within Renoise. The tool is described and downloaded from the Renoise website here.
ProcessPack
ProcessPack for Windows™ is a GUI-driven package of sound design modules for that are complementary to the CDP system. While some of its modules appear to be re-presentations of standard CDP processes, others build the underlying CDP programs into high-level composition modules.Dispersal combines a number of CDP's sound processing programs with algorithmic scripting to make it possible to compose by working directly with a musical design template, such as the dispersal or its opposite, the gathering together of sonic events:
MidiFileReader loads a standard MIDI file and realises it with a selected soundfile. Sonify turns almost any data into sound.
Shimmer creates 100 filter slices across a given frequency range and then offers a variety of patterns for playing these:
The development of ProcessPack has been curtailed by the untimely death of its co-author, CDP founder Richard Orton, in 2013. As the program is not currently distributed with the CDP package, write to CDP (cdpse9 [at] gmail [dot] com) to request a copy.
More information about ProcessPack modules.Grainmill and Brkedit
Grainmill is a standalone Windows™ version of CDP's granular Brasssage program. Most parameters in Brassage can have a single value, or be chosen randomly over a range of values, or vary over time; these options are reflected in Grainmill's parameter page. In this screenshot, Timestretch uses a time-varying breakpoint file and Density uses a range of values:
Parameter settings can be saved to file for use with other sound sources.Grainmill incorporates Brkedit, an editor for time-varying 'breakpoint' files, which CDP uses for automation:
Both Grainmill and Brkedit are authored by Richard Dobson and are included in the CDP package for PC.
NON-VISUAL SOFTWARE
CDP Multi-Channel Toolkit
The Multi-Channel Toolkit is built into the CDP system and represents Richard Dobson's important research into multi-channel facilities needed for various types of 'surround' sound, including support for Ambisonics.
The Toolkit is described in more detail at Richard's website, from where it can be downloaded separately as command line tools.
Tabula Vigilans
Tabula Vigilans ('Vigilant Table' or 'TV') is a an advanced algorithmic scripting language with a clear syntax and a handy range of built-in musical functions. Originally written in the 1990s by the late Richard Orton as a real-time MIDI instrument, TV has been extended by John Ffitch to allow calls to CDP programs (or other external system calls). This allows parameter values to be determined by the script. TV can also create and output text files, such as time-varying breakpoint files, mixfiles, or other file types used by CDP programs.
As an algorithmic MIDI processor, TV can usefully interact with a sample player such as Kontakt or write MIDI for a scoring program such as MuseScore.
The full potential of TV has yet to be realised, but offers exciting opportunities for future applications. See the Tabula Vigilans Information PDF.
TV (1.5) is supplied with the CDP software and a package of supporting programs, examples and manual can be downloaded from the CDP online documentation here.
Some invisible text to enable correct width if there is not enough on the page to being with then this will pad it out with text of the same colour as the background and saying nothing in particular as verbosely as possible