SOUNDSHAPER is a free control interface for the CDP sound transformation software, with an emphasis on speed and ease of use. CDP is a suite of over 430 command-line processes for creating, altering and manipulating sounds to make music. Soundshaper (PC only) fully supports the latest CDP Release 7.
Soundshaper provides quick and easy access to CDP processes and parameters and assembles scripts which run CDP in the background. Soundshaper saves CDP output to temporary files, which you can save at any stage. Parameter values can be adjusted at any point, even after further processes have been run. Soundshaper's auto-conversion makes it possible to move seamlessly from one process to another while the program handles the different CDP file types.
When run, processes are displayed in a table called the Patch Grid. Soundshaper patches are an easy way to store and recall whole sequences of CDP processes in a fully editable form. All values are retained and the patch can be re-run with any source. Soundshaper patches support up to 16 separate process chains, which can come from different sources. Soundshaper also supports bulk processing, presets and multiple parameter sets.
Soundshaper's Main Page is built around a multi-process Patch Grid. (The screenshot shows Version 4.) The grid
consists of up to 16 rows of 12 cells, each of which is the outcome of a CDP
process. Each row in the grid represents a separate chain of processes, usually with its own
source sound, or one channel of a multi-channel sequence. The normal progression is from left to right, e.g.
A_0 (source) A_1 (Vowels) A_2 (PchExagg) A_3 (Make) A_4 (MixMany) .
A cell's file can be played in the built-in player (some
CDP file types are not playable), viewed in an editor, saved to a permanent file
(Soundshaper uses temporary files for processing), copied to another cell, or you
can get information about it using one of the many CDP Information functions.
The structure as a whole is called a patch. Patches can be saved, recalled and run with different source sounds. The patch stores a complete and fully editable record of the sound-processing. You can easily build templates for use with standard process chains, or vary an existing patch; import mini-patches and link them to an existing structure.
The scripts that Soundshaper writes to run CDP processes have been extensively revised to work with mono, stereo, or multi-channel sources.
With Soundshaper's patch system you can build low-level CDP functions into higher units that will work with any source.
The basic operation of CDP is to choose a source sound, alter it through a process
and audition the result. Sources can be selected via conventional file menus, by
drag+drop from an open folder, from a 'Recent Files' list or from the File Pool a
drop-down list of project soundfiles. A default Pool file is always loaded on startup,
if it exists. Pool files are simply text lists, so there is no limit to the number of
these you can have.
Processes are most easily selected via the menus. These are based on CDP's
division of functions into Time-Domain and Frequency-Domain.
Time-domain processes are split into
separate Edit/Mix, Soundfile and Synth menus, while Frequency-Domain processes
are divided between the Spectral menu and the Pitch menu, which is for
operations on pitch data files extracted from spectral files.
Information functions appear on the Info menu. These do not produce an output
sound, but either produce text which is displayed automatically, or a textfile
report, which can also be displayed.
An alternative selection method is via the Process Grids, where functions are laid
out in a table:
There is also a drop-down Processes List and a drop-down Patches List for saving and recalling favourite processes and patches. You can store and recall any number of these selections.
CDP employs a wide range of input file types: in addition to soundfiles, there are frequency
analysis (spectral), formant, pitch data, transposition and envelope files, and more.
Soundshaper allows you simply to select the next process and it does any file conversion in the background, using current default values.
Similarly, when two or more inputs are needed, you can usually just click on the required cell, and Soundshaper will convert the file-type if necessary.
Selecting a process normally leads to a parameter page, where parameter values
are chosen. Soundshaper knows the requirements of the process and sets up the
page accordingly: when the CDP mode (where applicable) is selected,
only the relevant parameters are displayed, with appropriate value ranges and
normally a default starting value. Values can also be randomized within a chosen range.
Hitting OK runs the process and returns to the Main Page.
If the result is unsuitable, double-clicking on the cell re-opens the Parameter Page,
where the previous settings can be adjusted and re-run. Alternatively,
either UNDO or DELETE clears the cell.
Many CDP parameter values can vary over time, usually over the length of the
input file. Selecting T-V replaces a single value with the name of a text file, usually a
'breakpoint' file of time value pairs, and a default data file is displayed in the Data Edit panel,
with any time-values automatically scaled to fit the file.
The time-varying data can be edited manually in the edit box, or sent to Soundshaper's Graph-Edit page.
The Graph-Edit page shows the data as a breakpoint (straight-line) graph as well
as in a table. New points are created by clicking on the graph area; points can be
dragged around; and there are various possibilities for creating new graphs from
scratch, such as an envelope shape that can be imposed on a sound.
Graph-Edit also has presets for the quick creation of data, such as this 1/3-8ve MIDI-based Graphic EQ:
SNAPSHOTS, PRESETS and MULTIPLE PARAMETER SETS
On the Parameter Page, sets of parameters can be saved temporarily by clicking on one of the Snapshot buttons.
The first eight of these can also used to store multiple parameter sets. This feature enables a stereo or
multi-channel file to have a different set of parameter values for each channel.
A parameter set can be saved as a simple text file or by adding it to a collection of Presets.
Preset files can contain up to 100 presets, with no limit to the number of possible files. The default preset file for a process is loaded
automatically, but an alternative can easily be dragged + dropped onto the page.
The Patch Grid is ideal for splitting stereo or multi-channel sounds into separate channels and processing them independently before mixing or interleaving the result.
Cells can be copied, especially onto another row to create a separate process chain. A whole row or part of a row can also be copied to another row. This method is used for Bulk Processing, where each row has a different source sound.
A growing number of CDP processes have multiple outputs, which Soundshaper places on separate rows, ready for individual processing.
In this example, SLICE splits the spectrum into separate bands, which are transposed differently and then interleaved to make a four-channel file:
Soundshaper has a dedicated Mix Page for creating and editing Mixfiles. In this screenshot, mix parameters are set for sounds pre-selected on the Main Page and the mix is run without any need to understand the CDP mixfile format:
Alternatively, the mix list can be displayed and added to or edited on the page:
CDP's COLUMNS program is implemented in a dedicated Data Editor page.
COLUMNS processes or generates text data files, transforming these in up to 100
different ways. A data file can be sent to the Editor from the Graph-Edit page, altered and sent back.
Or a file can be opened in the Data Editor and processed there, with the altered data displayed in an edit box,
which can also be manipulated manually.
Soundshaper supports up to 30 markers (cue points). Markers have many uses: playing or editing selected portions of a soundfile or creating lists of time-points for several CDP functions. You can transform an edited selection and paste the result non-destructively back into the source file.
Several editors, including AUDACITY, WAVESURFER, and CDP's VIEWSF can export markers which Soundshaper can pick up via the Get Markers button or by Hotkey. You can also record marker times while a soundfile is playing or has been stopped at any point.
You can launch up to 10 favourite external programs from within Soundshaper. You can easily process your sound externally, e.g. using VST or DX plugins hosted by your editor, and return the result to Soundshaper for further processing. For further details, see the support page USING SOUNDSHAPER WITH AN AUDIO EDITOR.
Soundshaper has MIDI support for CDP Sequences. CDP's Sequencer2 program plays any number of sources at any pitch, time and level. Soundshaper can convert a standard MIDI file (SMF) into CDP's data format and render it in audio using any suitable source sounds.
A brief Hint is given for every CDP process in the Main-Page menus. On each Parameter Page there is a brief Help description for each process mode and parameter. Enabling Quick Help displays a fuller pop-up description with detailed parameter ranges and process descriptions, specifically for Soundshaper. There is also access to Soundshaper's HTML manual and the detailed CDP Reference documentation.
Detailed information is readily available on soundfiles and all CDP file types. Conversions can be also made between common audio and musical data types such as MIDI-Hz, Semitones-Ratio, dB-Gain.
Soundshaper maintains a History of processes in text form and prompts you to save this at the end of a session.
The History file shows each process, in and out files, and the parameter values.
Soundshaper includes full keyboard control for visually impaired users. A "Keyboard" menu, readable by JAWS and other screen readers, gives access to items that will operate all visual controls (buttons etc.), with associated keyboard shortcuts. A text-to-speech function is also included.