Composers Desktop Project

Any CDP users here? I’m not one, but I’ve heard many good things about it over the years. It would be great to learn about some of the gems.

Since the project has been open source for many years now, it would be interesting to learn about any re-implementations or forks of various algorithms from CDP.

I myself have been tempted off and on for many years to try to do some cleaner re-implementations of some of the algos, but I really wouldn’t know which ones to start with.


One of the popular Trevor wishart algorithms is the waveset transform. There is some supercollider implementation but nothing as exhaustive as in cdp.

Obviously a fan of wave sets here, that’s why I suggest it :slight_smile:


Great links. Will have to read them later. It seems like there is way more to wavesets than I initially thought.

My only experience with wavesets has been with the waveset opcode in Csound.

More info on the waveset Csound opcode here:

A more portable version of it has been made into a Soundpipe module:

1 Like

What sorts of things can CDP do that supercollider can’t do with the waveset implementation?

Wishart’s Audible Design book has been a great reference for me in exploring his various ideas w/r/t wavesets. One cool and pretty easy to implement idea is waveset subsitutions. In his book he describes the process as walking through each waveset, and replacing it with some other arbitrary waveform of exactly the same length and magnitude of the original. Here’s Linus Torvalds explaining how to pronounce linux where each waveset has been replaced by a sinewave:

And here’s the same clip, but with the wavesets reversed – so the final waveset is recompressed to be the same length and magnitude as the first, and so on reading the lengths & magnitudes forward and the wavesets backward. (I don’t know if this is something CDP does, but it seemed like a natural next step!)

Other transformation he’s mentioned in Audible Design:

Waveset normalization
Waveset time-stretching
Waveset reversal
Waveset harmonic distortion
Waveset transposition
Waveset morphing
Waveset inversion

I’m not a CDP user either but I’ve looked at Alberto de Campo’s SuperCollider waveset ugen and I think if I remember correctly it basically implements the segmentation and leaves the transformations up to the user? (His chapter in The SuperCollider Book explores a lot of other interesting microsound transformation ideas with some example code too.)

Thanks for making this thread! I’m really curious about CDP too.

Edit: ah yeah the page @slumenta linked above mentions all this stuff too! The book goes into lots of detail – it’s also free on Wishart’s site:


Also, hopefully I’m not getting too off topic but I’ve been following with great interest Hiroki Nishino’s development of a ChucK-inspired language called LC, which is aimed at being a DSL for microsound. This paper discusses how his language approaches waveset manipulations a bit, with some diagrams taken directly from the Wishart book:

1 Like

I made a video that’s intended to be an intro / demo / quick overview of the possibilities of CDP. The software is powerful, and it’s free, and it can do spectral analysis and morphing, and Archer Endrich just uploaded an Extremely Detailed “Learning Manual” to help us all access the power of Composers Desktop Project.


This has interested me for a while, too, but I haven’t yet had a chance to really dive into it.

Renoise has a pretty slick integration with CDP here: CDP Interface | Renoise.

1 Like

I am installing CDP in Windows.

I’m left with a file containing folders…
data_etc - containing exe files that look like they are already in _cdp/_cdprogs
physical_modelling - contains a bunch of dll’s and ness-brass.exe
physmod_examples - a bunch of .m files

I’m not sure where those go. Perhaps I missed something in the installation notes.

If you’re not using SoundLoom, these files may not matter. I don’t know if I myself have these files, or have them in the right place, but I’ve never noticed, and they’ve never caused any problems.

You can check the detailed “Check Installation” document that’s included in the same folder as the Installation Notes. If I were you I’d just assume everything is OK and proceed to use the software. If you get error messages, please post here.

Also - SoundShaper 6 was just released! I haven’t installed it yet.

Thanks exiannyc. It does appear to be working so I will ignore that zip for the time being. There is enough stuff in cdp to keep one busy for a long time.

1 Like

Soundshaper 6 is easy to install or upgrade to from 5. As always, follow the installation instructions. It looks better, it has more features, and i think it sounds better, too!

Kudos to the CDP team for ongoing development. I just gave them 100GBP. Check it out, and if you value it, help support it, however much you can.

BTW, Here’s a walkthrough video about CDP’s spectral morphing functions.

1 Like