Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Pure Data embeddable audio synthesis library
C Objective-C C++ Java C# Makefile Other
Failed to load latest commit information.
cpp reorganized all samples & tests by language, updated C & C++ sample M…
csharp libpd_init now returns 0 on success & -1 on failure to match C conven…
dist Added support for including native libraries in libpd.jar
java/org/puredata/core Updating Java tests.
javatests/org/puredata/core Updating Java tests.
jni Fixed incorrect pointer dereference.
libpd.xcodeproj Allow Xcode to generate a valid archive.
libpd_wrapper Fixing race condition when enqueuing compound messages.
libs added original mingGW LGPL pthreads dll
objc Update PdBase.m
pure-data @ 991b183 updated podspec, updated pure-data upstream 0.46 branch which removed…
python reorganized all samples & tests by language, updated C & C++ sample M…
samples Moving PdCore tests to javatests folder.
.classpath cosmetic change
.gitignore reorganized all samples & tests by language, updated C & C++ sample M…
.gitmodules updated pure-data submodule to use sourceforge git
.project Added integration test for MIDI in particular
Android.mk switched submodule to pure data sourceforge git repo; udpated to pd 0…
CHANGES.txt tagging latest changes as 0.8.3
LICENSE.txt Added license info, improved tests
Makefile Fixing javalib build target.
README.md updated podspec, updated pure-data upstream 0.46 branch which removed…
libpd.podspec bumped podspec deployment target to 6.0
libpd_win.sln removed example for now
mingw_build.bat Copy compiled dll to C# wrapper solution

README.md

libpd

Pure Data as an embeddable audio synthesis library

Copyright (c) Peter Brinkmann & the libpd team 2010-2015

Documentation

See our website and book at http://libpd.cc

For documentation of libpd, see the wiki: https://github.com/libpd/libpd/wiki

If you are using Processing, iOS, or Android, see our companion repositories:

Repository Layout

pure-data

The folder containing the sources of Pd Vanilla and standard externals. This is a git submodule of Miller Puckette's official Pd git repository:

git://git.code.sf.net/p/pure-data/pure-data 

If you're cloning this repo, make sure to checkout the submodule:

git submodule init
git submodule update

libpd_wrapper

This folder contains the source files that make up the core of libpd.

Android.mk, Makefile, libpd.xcodeproj, libpd_win.sln

Build support for various platforms. Feel free to improve the build system in any way you see fit.

Currently the main Makefile builds a dynamic lib on Windows (in MinGW), Linux, & Mac OSX and has the following targets:

  • libpd: (default) builds if no target is specified, builds the libpd.so/dylib/dll
  • cpplib: builds libpd with the cpp wrapper
  • csharplib: builds libpdcsharp.dll (tested on Windows only)
  • javalib: builds libpdnative and the jni wrapper
  • clean: removes the object files
  • clobber: removes the linked library files
  • install: installs libpd C library (+ C++ if built) and headers, set location with prefix= (default: /usr/local)
  • uninstall: removes libpd C library and headers, set location with prefix= (default: /usr/local)

Makefile options allow for conditional compilation of libpd util and pd extra externals sources into libpd as well as other options:

  • UTIL=true, compiles libpd_wrapper/util ringbuffer and print concatenator
  • EXTRA=true, compiles pure-data/extra externals which are then inited in libpd_init()
  • DEBUG=true, compiles libpd with -Wall & no optimizations

For example, to build libpd with both util and extra:

make UTIL=true EXTRA=true

java, csharp, objc, cpp, python

Glue for using libpd with Java, C#, Objective C, C++ and Python. Feel free to improve or add support for other languages such as Lua.

samples

Contains small sample programs and tests in the various supported langauges.

Java Builds

Ready-made binaries for Java are available at libpd-java-build: https://github.com/wivlaro/libpd-java-build/blob/master/libpd.jar (may not be up to date)

CocoaPods

If you are using XCode to build iOS apps, you can use CocoaPods to add libpd to your project.

Something went wrong with that request. Please try again.