Pd: Ugly. Hugely useful. Free.

The open-source, free graphical patching environment can do everything from simple MIDI tasks to building synths and effects to advanced multimedia. And because it’s free software, it’s also been adapted to run places other tools can’t – it’s been used in commercial iOS apps with millions of downloads (via libpd), and will run happily on a Raspberry Pi or even a hacked e-reader or ancient iPod.

Contrary to popular belief, it’s also getting a healthy stream of updates. And while those usually don’t merit specific mention, 0.46 is very cool. (It’s the “vanilla” version, so perfectly suited to work with libpd for iOS, Android, and game development, among other things.)

New in this release:

  • Native OSC (Open Sound Control) support. oscformat, oscparse objects now does OSC over UDP. (TCP, USB, etc. still require the slip encoder/decoder by mrpeach.)
  • Built-in support for Jack (inter-app audio, etc.) on OS X.
  • No more manually setting up devices: “Audio and MIDI devices saved by name so that when they get switched around Pd has a better chance of restoring settings correctly.”
  • New string support: [text language=”tosymbol”][/text], [text language=”fromsymbol”][/text]
  • Netsend/netreceive bi-directional TCP support. (Overdue – thanks!)

And of course the usual bug fixes and improvements.

Having OSC support built-in was for most of us doing run-of-the-mill stuff the last remaining obstacle to using Pd across mobile and desktop, so that’s really nice. And now is a good time to say, don’t bother with puredata.info for the vanilla version. Instead, grab via Git:

git clone git://git.code.sf.net/p/pure-data/pure-data
cd pure-data
git checkout

Or just download here:

The obvious comparison to Pd is Max/MSP – the two tools share the same lineage, the same original creator (Miller Puckette), lots of concepts and object names, and even some code. But they’re best thought of as very distinct tools, in increasingly different directions. Max is a much bigger program, apart from costing some money; that’s what allows it to do things like let you patch with DSP code (which can now be exported), or work with Ableton Live. Pd is free and lightweight, a more canonical vision of what the Max/Pd family would be, and as a result can run in environments where Max can’t. I find I enjoy working with each, and switching between the two feels really strangely different, even if familiarity with one can help with the other.

Worth revisiting this film of a Pd event in Nantes for a bit of visual stimulation regarding what Pd can do:

Pure [creative] Data / Stereolux Nantes (29-30 mars 2012) from stereolux on Vimeo.

  • Joaquín Mendoza Sebastián

    Hey!!! these are some free Pure Data patches, feel free to download/play/dismember and of course share =P


    • http://pkirn.com/ Peter Kirn

      Ah, nice idea!

    • Guido

      Thank you! very good patches

    • Robin Parmar

      Great work. Thanks so much.

  • Robin Parmar

    Someone please give pd a nicer interface, so we can stop saying it is ugly!

    • Derpatron9000

      I await your valuable contributions.

    • Robin Parmar

      Given that I contribute most things I do in life FOR FREE, but cannot actually work on EVERY SINGLE project I come across, your comment is both ignorant and rude. The biggest limitation pd has is its development environment, as many people have noted. A Kickstarter campaign (or similar) from someone with experience in this area could soon raise funds for improvements that are very much needed to bring pd into this century.

    • Derpatron9000

      Interesting that you accuse someone of being ignorant and rude when you have no idea of other peoples contributions to the world, free or otherwise.

      You “can stop saying it is ugly” by stop saying that it’s ugly. If you want to make it better you can do something about it, either write the code or work with the community to raise this kickstarter you propose.

      “The biggest limitation pd has is its development environment, as many people have noted” – yet people are doing wonderful things with it. Many people like sports, many poeple don’t. “Many people” isn’t a basis for any statement.

      What you choose to work on in your life is none of my buiness. When you submit a forum comment asking others to do something because you want it, that’s rude.

      “Someone should be doing this” type posts will always be met with the response, “why aren’t you?”.

  • Janus Fouché

    I take exception to it being Ugly-but-useful. The interface and code can be very expressive and beautiful.

    • http://pkirn.com/ Peter Kirn

      Oh, dataflow itself can be beautiful.

      I’m not just being an aesthetic snob, though.

      1. The typography is poor.
      2. There could be improved support for higher-density displays, which are increasingly standard and easier to read.
      3. Functionality is limited (for instance, in how patch cords and objects are organized), restricted by the current UI.
      4. The Tcl/Tk UI right now is not keeping pace with current operating systems, and suffers performance issues which can inhibit audio performance.

      I don’t think there’s any question that Pd could look and work better with a more modern UI.

      Dataflow is beautiful; Pd I believe will someday be more beautiful than it is now.

    • Robin Parmar

      Well said. A panel interface with context sensitive property panels would help immensely. Also, a proper context menu on the right mouse. And a toolbar. Oh, and a better implementation of interface building. Reaktor and Max are both good models.

  • jeremywen

    I am not sure how this relates to PD-extended. Will the extended version be updated also?