Pure Data as an embeddable audio synthesis library
Copyright (c) Peter Brinkmann & the libpd team 2010-2015
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:
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), available through a Github mirror:
If you're cloning this repo, make sure to checkout the submodule:
git submodule init git submodule update
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
Makefile options allow for conditional compilation of libpd util and pd extra externals sources into libpd:
libpd_wrapper/utilringbuffer and print concatenator
pure-data/extraexternals which are then inited in libpd_init()
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.
Contains a small sample program in C built on top of libpd, a sample project in Java that uses JavaSound, and the cppTest & iOSTest Xcode projects.
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)