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 grid
consists of up to 16 rows of 99 cells (maximum), 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 soundfile player (some
CDP file types are not playable), 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.
Soundshaper supports multi-level patches: run a patch in a single cell as a sub-patch, save the top-level patch, and recall this within a single cell, and so on.
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 a drop-down File List of project soundfiles. These lists are simple text files, so there is no limit to the number 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 Tables:
There is also a drop-down Process List and a drop-down Patch 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.
In Soundshaper, you simply select the next process and it does any file conversion in the background, wherever possible, using current default values. And when choosing further inputs from the patchgrid, Soundshaper converts 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 you can adjust the previous settings and re-run the process. Alternatively, either UNDO or DELETE clears the cell.
TIME-VARYING VALUES (automation)
Many CDP parameter values can vary over time, usually over the length of the
input file. The changing values are usually set in a 'breakpoint' text file of time-value pairs.
Selecting T-V displays a default data file (see above screenshot), with time-values optionally scaled to fit the file. The time-varying data can be edited manually 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. Points are created by clicking in the graph area, or they can be
dragged, or edited in a table. Graph shapes can be imported from file, such as an envelope to impose 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 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 added 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 and 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.
MARKERS and LOOPS
Soundshaper supports up to 30 markers (cue points). Markers have many uses: playing or processing selected portions of a soundfile or creating lists of time-points for several CDP functions. You can transform an edited selection using markers or loop-points and paste the result.
Soundshaper can launch up to 10 favourite external programs. For example, you might use a VST or DX plugin and return the result to Soundshaper for further processing. (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.
USER SCRIPTS and CSOUND
New from vn. 5.03 is support for user's own batch scripts and Csound scripts. Batch scripts can run a sequence of CDP or other Windows functions, or other external scripts, as a single object.
Csound is a huge software synthesizer and sound-processing system, with many published script examples covering virtually every aspect of audio generation and manipulation. Csound scripts for both synthesis and sound processing can now be run within Soundshaper, complementing the already large suite of CDP functions. One process (Paulstretch) has also been fully incorporated into Soundshaper, and more are likely to follow.
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 has comprehensive menus, readable by JAWS and other screen readers, with extensive keyboard control and a large range of keyboard shorcuts. A text-to-speech function is also included.