Node based GUI for The Composers Desktop Project (CDP8)

#sound #audio #sound-design #audio-engineering #node #nodegui #node-sound-processing #gui #cdp #cdp8 #sound-thread

Jonathan Higgins 141d1bc454 got breakfile ui setup 7 miesięcy temu
addons b4b54b436e Initial commit 7 miesięcy temu
examples ad942a3600 various bug fixes and small features 7 miesięcy temu
readmeimages ad942a3600 various bug fixes and small features 7 miesięcy temu
scenes 141d1bc454 got breakfile ui setup 7 miesięcy temu
theme 141d1bc454 got breakfile ui setup 7 miesięcy temu
.editorconfig b4b54b436e Initial commit 7 miesięcy temu
.gitattributes ad942a3600 various bug fixes and small features 7 miesięcy temu
.gitignore ad942a3600 various bug fixes and small features 7 miesięcy temu
Global.gd f4c3ba7205 improved input and output audio player functionality, made menu and new nodes go to mouse position 7 miesięcy temu
Global.gd.uid b4b54b436e Initial commit 7 miesięcy temu
README.md fb74613bab Update README.md 7 miesięcy temu
config_handler.gd 893c82d0dd added saving and loading and started implementing example patches 7 miesięcy temu
config_handler.gd.uid b4b54b436e Initial commit 7 miesięcy temu
export_presets.cfg f4c3ba7205 improved input and output audio player functionality, made menu and new nodes go to mouse position 7 miesięcy temu
icon.svg b4b54b436e Initial commit 7 miesięcy temu
icon.svg.import b4b54b436e Initial commit 7 miesięcy temu
project.godot ad942a3600 various bug fixes and small features 7 miesięcy temu

README.md

soundthread logo

Node based interface for The Composers Desktop Project

soundthread ui

What is SoundThread?

SoundThread is a cross-platform user interface for The Composers Desktop Project (CDP) suite of sound manipulation tools. It allows for modular style routing of various CDP processes to quickly build up complex Threads that allow for extensive sound manipulation. The goal of SoundThread is to make CDP as user friendly as possible and it is particularly well suited to those new to experimental sound processing.

What is CDP?

CDP is a suite of open source command line tools for experimental music and sound design. As per their website:

"CDP (Composers' Desktop Project) is a suite of around 500 processes, designed for the in-depth exploration of sound transformation. CDP is not a real-time system, but mostly transforms soundfiles ('samples') or spectral (frequency-analysis) files, and writes other sound or spectral files as output. [...]

CDP processes cover almost every aspect of sound manipulation. There is also a small group of functions for sound synthesis, and several sound-processing functions can be adapted for synthesis. The emphasis is on sound design in the tradition of musique concrète, either for fully electro-acoustic music compositions or as sound clips or tracks in songs or other media. Many people use CDP alongside other software in a hybrid studio environment." CDP About

Download

The latest builds for Mac and Windows as well as previous versions can be found in Releases Additionally you will need to download CDP for SoundThread to interface with, this can be downloaded here.

What works?

SoundThread is currently in Alpha and as such there are some bugs, missing features and limitations. However, it is mostly very stable and has enough implemented already to be a powerful sound design tool.

Currently implemented features:

  • Node based patching system with support for patching parallel processes and mixing outputs
  • A selection of popular CDP time domain and frequency domain processes:
    • Distort - Average, Clip, Click (Reform), Divide, Fractal, Interpolate, Multiply, Power Factor (Quirk), Replace, Square (Reform), and Triangle (Reform)
    • Extend - Drunk, Loop, Scramble, Shrink, and Zigzag
    • Filter - Filter Bank Harmonic Series, Filter Bank Odd, Filter Bank Linear Spacing, and Filter Bank Pitched Intervals
    • Granulate (Brassage) - Granulate, Pitch Shift, Scramble, and Time Stretch
    • Misc - Accelerate/Decelerate, Gain, Reverse, Stack, and Varispeed
    • PVOC - Analaysis/Resynthesis, Accumulate, Blur, Chorus, Gain, Invert, Stretch, Scatter, Trace (hilite), and Waver
  • Mac and Windows builds
  • Accepts stereo or mono input files (splits and merges files as needed to run the full processing Thread)
  • Threads can be saved and loaded for reuse
  • Small suite of built in getting started tutorials
  • Help tooltips throughout
  • Recycle output button to reuse output file for further processing
  • Optional: automatic clean up of intermediate files

What doesn't work?

A number of things are not yet implemented or supported. Not all features of CDP will likely be implemented in SoundThread, as not all processes work well with the node based system. For access to all features of CDP I reccomend SoundLoom, Soundshaper or using the command line directly.

Main missing features:

  • Breakpoint files and other text files are not yet implemented, all values are fixed constants
  • Support for multiple input files
  • Support for audio files with more than 2 channels
  • Support for audio formats other than WAV
  • Nodes for many CDP processes have not yet been made
  • Linux build is not yet tested (should work fine in theory just needs testing)

If you find any bugs or have feature ideas, please raise a ticket in issues.