These are the Frequently Asked Questions on the Pure Data Discord Server.

  1. What version of Pure Data should I download?
  2. How can I change the color scheme?
  3. What tutorials or books are recommended for beginners?
  4. How do I download external libraries?
  5. Which libraries should I download?
  6. How do I send audio or MIDI from Pd to another application?
  7. How can I render the audio from a pd patch in offline mode?
  8. Gem does not work on my macOS

Check other questions on the official Pd FAQ: https://puredata.info/docs/faq

What version of Pure Data should I download?

There are different distributions (distros) of Pure Data, but the most update and compatible of all is the vanilla version. Personally, I would recommend Pd next.

  • Pure Data Vanilla - The Original, but you can always customize it by installing third party libraries, which is easy with the included package management system (deken).
  • Pd Next - Color themed Pd. This is my personal recommendation since it is Pd vanilla but with color customization.
  • Pd CEAMMC - Fully compatible with Pd Vanilla, but with enhanced UI tweaks and pre-installed with the CEAMMC library which contains plenty of audio and UI objects.
  • Pd Extended - Dead/Outdated since 2010, but recognized for its ease of use and pre-installed libraries.
  • Purr Data - Extended’s successor. It comes pre-installed libraries, improved appearance and experience, hence it is great for beginners. Note: It has some incompatibilities/differences with vanilla and can be glitchy at times.
  • Plug Data -  Pd as a plug-in or standalone app. Enhanced GUI, autocompletion and comes with two pre-installed libraries (cyclone and else).

How can I change the color scheme?

  • The easiest route would be to download/install Pd-next and then download its color theme plug-in, just follow the instructions.
  • On Purr Data you can change the color scheme by going to Preferences > GUI > GUI Preset.
  • On Pd vanilla, you can only change the background color by going to pdtk_canvas.tcl (Applications/Pd/Contents/Resources/tcl) and change the value in line 121 to any hexadecimal color:
-background #fcfc7e

What tutorials or books do you recommend for beginners?

  • Programming Electronic Music in Pd - (Online book) It begins with explanations of basic programming and acoustic principles, then gradually builds up to the more advanced electronic music processing techniques
  • FLOSS Manuals Pure Data - (Online book) Learn media programming with Pd from the beginning, it covers audio, video, music, sensors, and more.
  • Cheetomoskeeto’s Pd Lectures - (Videos) although a bit outdated, these still hold up as great starting tutorials for Pd with a good pace.
  • Sound Simulator’s Pd tutorials - (Videos) Great edited beginner tutorial videos to get started with Pd on sound synthesis, sequencing and generative music.
  • Simon Hutchinson’s Pd Tutorials - (Videos) Easy-to-follow tutorials, targeted to musicians with no programming experience necessary.
  • Really Useful Plugins’ Pd Tutorials - (Videos) Tutorials on sound synthesis focused on emulating synthesizers and drum machines.
  • QCGInteractiveMusic’s Pd Tutorials - (Videos) Lengthy tutorial series about different synthesis and audio processing techniques.
  • Pure Data’s Help Browser: Pd > Help > Browser - (Patches) included in every Pd distribution, these cover the basics and more advanced patches on different topics.

For more intermediate or advanced users:

More tutorials here: https://puredata.info/docs/tutorials/

How do I download and install external libraries?

Download them using deken (Pd’s integrated package management system):

  1. Open Pure Data.
  2. Click on the “Help” menu, then on “Find externals…”.
  3. Type the name of the library or an object. Example: “cyclone”.
  4. Click “Search” or type Enter.
  5. Click on the first result. This should download the library to your externals’ directory.

Or download them via GitHub / GitLab and place the folder on your external’s directory.

To install it, make sure you have the library’s folder on your Path:

  1. Open Pd.
  2. Click on “Preferences” > “Path…”.
  3. If your folder library isn’t set click on “New…” and add your folder. Example: “~/Documents/Pd/externals/cyclone”.
  4. Click “Ok” or type Enter.

Which libraries should I download?

Depends on the nature of your project. Only abstraction libraries are compatible for embeddable projects (DAW plug-ins, web, mobile app, etc.), since they are made solely with vanilla objects. External libraries on the other hand are more CPU efficient, but most of them work only in Pd.

Here are the usually most downloaded libraries:

  • cyclone - (externals) a set of Pd objects cloned from Max/MSP.
  • else - (externals) big library for a complete computer music experience.
  • ceammc - (externals) general purpose library with plenty of GUI objects, synthesis and effects.
  • zexy - (externals) the Swiss army knife for Pure Data.
  • iemlib - (externals) collection of general purpose objects and filters.
  • timbreID - (externals) audio analysis for Pure Data.
  • spectralToolkit - (externals) Spectral Signal Processing Toolkit.
  • gem - (externals) library for creating visuals using openGL.
  • ofxOfelia - (externals) library for creating visuals with openFrameworks and Lua.
  • audiolab - (abstractions) library for electroacoustic composition and live electronics.
  • heavylib - (abstractions) heavy (hvcc) compatible abstractions.
  • mmb - (abstractions)  library with anti aliased oscillators, filters, etc.
  • mkmr - (abstractions) synthesized instruments library.

You can also search objects or libraries and download via the deken website: http://deken.puredata.info/

How do I send audio or MIDI from Pd to another application?

Here are some paid and free options for different OS:

Audio:

MIDI:

How can I render the audio from a pd patch in offline mode?

Send the message fast-forward $1 to a send pd object with the amount of milliseconds you want to render. More info here: 3.fast-forward.pd

Gem does not work on my macOS

Try an older version of pd vanilla or download a temporary fix here: https://github.com/MikeMorenoDSP/mikemorenodsp.github.io/releases/tag/gem