List of Externals

(Note: This is a work in progress, so the list isn't complete, you can help expanding it, or checking if there is some wrong info!)

Here is a list of externals that can be downloaded in Pd-Vanilla (by going to Help->Find Externals).

You can also look for all the externals available online going to: https://deken.puredata.info

Since this list is big, we encourage you to help update this page when you see some library being updated, or if any new external library was released, this will help to keep the list as up to date as possible (and also useful).


 * There is also some interesting lists of downloads in puredata.info!
 * 1) For Libraries: http://puredata.info/downloads/by-category/library
 * 2) And for GUI plugins: https://puredata.info/downloads/by-category/guiplugin


 * And if you want to know about the externals that were in the old dead Pd-Extended, these links may be useful:
 * 1) Pd-extended 0.43 libraries http://puredata.info/docs/LibrariesInPdExtended/
 * 2) List of objects of Pd-Extended http://puredata.info/docs/ListOfPdExternals or http://puredata.info/Members/lucarda/externals
 * 3) Archived list of Floss Manuals: (Note: the next and previous buttons are broken, you have to navigate with the left panel): http://archive.flossmanuals.net/pure-data/list-of-objects/introduction.html

This wiki also has a dedicated category to create pages about each external in separate, you can view it in Category:Externals

If you have yourself a library and want to upload it, you might be interested in read about Deken.

abl_link~

 * - Ableton Link 3.0 integration for Pd.


 * Sources: https://github.com/libpd/abl_link
 * puredata.info page: https://puredata.info/Members/jyg/software/abl_link%7E/

absattr

 * - This external object allows the usage of Max/MSP/Jitter-style attributes for the purpose of argument or parameter passing to Pure Data abstractions.


 * Sources: https://github.com/grrrr/absattr
 * puredata.info page: https://puredata.info/Members/thomas/absattr

aconnect

 * - ALSA sequencer connection manager as Pd object. It depends on for [aconnectgui] and [aconnects].


 * Sources: https://git.iem.at/pd/aconnect
 * puredata.info page: https://puredata.info/Members/iembot/software/aconnect/

acre

 * - Algorithmic Composition Realtime Environment, ACRE is collection of Puredata patches and example applications targeting algorithmic composition in an realtime computer music environment with pd.


 * Sources: https://git.iem.at/pd/acre
 * puredata.info page: https://puredata.info/Members/ritsch/software/acre/

adaptive

 * - IEM Adaptive Filters: The aim of this project is to extend Miller Puckettes open source real-time computer music software Pure Data (Pd) by a library containing several algorithms for least mean square (LMS) adaptive filtering. This library is published under GPL.


 * Sources: https://git.iem.at/pd/iem_adaptfilt/-/tree/master/
 * puredata.info page: https://puredata.info/downloads/iem_adaptfilt

algo~

 * - [algo~] crunches the output of algorithmic "bytebeat" code to produce signal.


 * Sources: Unknown
 * puredata.info page: https://puredata.info/Members/wmbrent/software/algo%7E/

aoo

 * - "Audio over OSC" aka AoO is aimed to be a message based audio system inspired by Open Sound Control OSC as a syntax format. It is dedicated to send audio in real time from arbitrary sources to arbitrary sinks on demand. WARNING: AOO is still alpha software, there are breaking changes between pre-releases!
 * See Also:


 * Sources: https://git.iem.at/cm/aoo
 * puredata.info page: https://puredata.info/Members/spacechild1/software/aoo/

apple

 * - Supports specific hardware features of Apple computers. Released 12/09/2010 — tested with pd 0.42


 * Sources: Unknown
 * puredata.info page: https://puredata.info/downloads/apple

arraysize

 * - This provides a simple object for Pure Data that reports the size of an array by name. For historical reasons, it is packaged as a standalone object. It may be considered obsolete, since newer Pd-Vanilla versions have [array size] built in.


 * Sources: Unknown
 * puredata.info page: https://puredata.info/downloads/arraysize

art_net

 * - Simple Artnet protocol implementation with Pure Data


 * Sources: https://github.com/poperbu/pd-artnet
 * puredata.info page: https://puredata.info/Members/chnry/software/art_net/

audiolab

 * - A library of high level Pure Data abstractions with a focus on electroacoustic composition, live electronics and sound design.


 * Sources: https://github.com/solipd/AudioLab
 * puredata.info page: https://puredata.info/Members/solipd/software/audiolab

AutoPreset

 * - AutoPreset is a simple state saving system (like rradical/sssad, among other ones). It aims to be simple and yet powerful. It depends on:
 * 
 * 
 * 


 * Sources: https://github.com/MetaluNet/AutoPreset
 * puredata.info page: https://puredata.info/Members/ant1r/software/AutoPreset

bandlimited

 * - Generates a bandlimited waveform (square, pulse, saw, reverse saw, triangle and saw-triangle). It's purpose is to produce a signal without aliasing. bandlimited~ works by using a series of wavetables with different quantities of harmonics. This is done to keep CPU usage at a minimum. The wavetable with the highest harmonic content has a maximum of 1104 harmonics. Any frequency below 20hz at 44.1kHz will start to geometrically use more CPU power.


 * Sources: https://github.com/pcasaes/bandlimited
 * puredata.info page: https://puredata.info/Members/saturno/software/bandlimited

bassemu~

 * - bassemu~ is an object that simulates a transistor-based electronic synthesizer. This serves as a emulation of an analogue bass synth. It includes the obligatory filter, saw/rect/tri/sine waveform select, an extra hi-pass filter. You can also feed another signal to its left inlet, and filter that, either alone or mixed to the vco.


 * Sources: (you can download them on deken)
 * puredata.info page: https://puredata.info/downloads/bassemu

bf-pd

 * - bf-pd : a PureData external for building Digital Orchestras. Bf-pd is a library built in PureData (Pd) which enables communication and cooperation between digital instruments. Bf-pd can be integrated into any instrument built in Pd. It provides a collaboration window from which musicians can view each others’ activity and share control of instrument parameters and other musical data.
 * It depends on


 * Sources: https://gitlab.cristal.univ-lille.fr/boeuf/bf-pd/-/tree/master
 * puredata.info page: https://puredata.info/Members/fberthaut/software/bf-pd

binfile

 * - Read and write binary files with Pd. Bytes are represented as float numbers in Pd.
 * Note that Pd 0.52 comes with [file handle] which provides a built in solution for that.


 * Sources: https://github.com/pd-externals/binfile
 * puredata.info page: https://puredata.info/Members/rdz/software/binfile

boids

 * - Boids is a bird flight and animal flock simulator. It is based on the same algorithm which was used in Jurassic Park for the herding dinosaurs. For more information about the Boids algorithm, see Craig Reynolds' Web site at http://www.red3d.com/cwr/boids/


 * Sources: Unknown
 * puredata.info page: https://puredata.info/downloads/boids

bsaylor

 * - bsaylor is a library of Pure Data objects by Benjamin Saylor.
 * aenv~ is a asymptotic ADSR envelope generator. The output value approaches the target values as asymptotes.
 * partconv~ is an external that implements partitioned fast convolution, suitable for convolving input signals with long impulse responses for reverbs, etc.
 * pvoc~ is a phase vocoder based on Pd's 09.pvoc.pd example. Advantages over the abstraction include (reportedly) faster execution, instantaneous response to input, and adjustable phase locking.patch.
 * susloop~: sample player with various loop methods (ping-pong, ... ).
 * svf~: a signal-controlled port of Steve Harris' state variable filter LADSPA plugin (http://plugin.org.uk).
 * zhzhx~: Turns the input signal into a staticky, distorted mess. Comes with tone control.


 * Sources: https://github.com/pd-externals/bsaylor
 * puredata.info page: https://puredata.info/downloads/bsaylor

ceammc

 * - CEAMMC Puredata is a general purpose Pd distribution and library that is used for performance, sound-design and education purposes in Centre of electroacoustic music of Moscow Conservatory (CEAMMC)


 * Sources: https://github.com/uliss/pure-data
 * puredata.info page: https://puredata.info/downloads/ceammc

chair

 * - Objects made for the Tickle instrument by The Center for Haptic Audio Interaction Research (CHAIR).


 * Sources: https://gitlab.chair.audio/chair-audio/tickle-examples/-/tree/master/Pd
 * puredata.info page: https://puredata.info/Members/CHAIR/software/chair

chaos

 * - a set of objects for PD which calculate various "Chaotic Attractors"; including: lorenz, rossler, henon, ikeda, attract1, base, base3, dejong, gingerbreadman, hopalong, latoocarfian, latoomutalpha, latoomutbeta, latoomutgamma, logistic, lotka_volterra, martin, mlogistic, pickover, popcorn, quadruptwo, standardmap, strange1, tent, three_d, threeply, tinkerbell and unity.


 * Sources: https://sourceforge.net/projects/pure-data/files/libraries/chaos/
 * puredata.info page: https://puredata.info/downloads/chaos

cicmtools

 * - The CICM-Tools are a set of 3 objects allowing you to virtually position a sound source in a multiphonic space. Note: CICM-Tools is abandoned and unsupported. The archived version for MAX is found at https://github.com/CICM/CicmTools.


 * Sources: https://github.com/porres/pd-cicm-tools
 * puredata.info page: https://puredata.info/Members/porres/software/cicmtools

clk

 * - Syncable clocking objects for Pure data. https://grrrr.org/research/software/clk/


 * Sources: https://github.com/grrrr/clk
 * puredata.info page: https://puredata.info/Members/thomas/clk

command

 * - command - execute commands or scripts from Pd. It is a better replacement for ggee/shell, as it adds more features such as being able to kill the process when you want, you can send something to the stdin of the process, and it has dedicated outlets for exit code, stdout and stderr.


 * Sources: (you can download them on deken)
 * puredata.info page: https://puredata.info/Members/rdz/software/command/

completion-plugin

 * - This plugin adds auto-completion features when hitting TAB while typing in an object.


 * Sources: https://github.com/HenriAugusto/completion-plugin
 * puredata.info page: https://puredata.info/downloads/completion-plugin

comport

 * - Comport is a cross-platform object for Pure Data that allows you to read and write bytes and lists of data to /dev/tty* devices including serial port, USB-serial devices, Bluetooth-serial, etc.


 * Sources: https://git.iem.at/pd/comport
 * puredata.info page: https://puredata.info/downloads/comport

constantq~

 * - constantq~ spectrally analyzes an audio stream for defined frequency bands. It can be seen as an optimized implementation of a narrow-band filterbank. The frequency scale can be defined arbitrarily. The data output is performed either as message lists or into data arrays (tables resp. buffers). Read more about it here: https://grrrr.org/research/software/constantq/


 * Sources: https://github.com/grrrr/constantq
 * puredata.info page: https://puredata.info/Members/thomas/software/constantq~/

context

 * - Context is a modular sequencer for PD. It re-imagines musical compositions as networks. Instead of filling a timeline with information or drawing dots on a page, Context invites you to make music by creating and playing with a Context network. A Context network consists of multiple Context objects connected together so that they interact. The user programs musical content and instructions into each Context object, which can be customized and expanded indefinitely. You can read more and see its documentation here: https://contextsequencer.wordpress.com/ It depends on:
 * 
 * 
 * (1.0-beta9 or later)
 * 
 * 
 * 
 * 
 * (v 0.2.1 or later)
 * 


 * Sources: https://github.com/LGoodacre/context-sequencer
 * puredata.info page: https://puredata.info/Members/lgoodacre/software/context/

convolve~

 * - [convolve~] is a partitioned impulse response (IR) convolution external for Pure Data.


 * Sources: https://github.com/wbrent/convolve_tilde
 * puredata.info page: https://puredata.info/Members/wmbrent/software/convolve~/

Cream

 * - The Cream library is a set of graphical objects for Pure Data that aims to improve user interaction. (Warning: The project is archived on github, unmaintained, you can read more about Cream and Hoa here, from 2015 https://forum.pdpatchrepo.info/topic/9387/hoa-cream-library-new-releases).


 * Sources: https://github.com/CICM/CreamLibrary
 * puredata.info page: https://puredata.info/Members/avilleret/software/Cream/

creb

 * - CREB is a collection general purpose Pd-externals, including bandlimited oscillators, chaotic oscillators, waveshapers, spectral processors and much more.


 * Sources: http://zwizwa.be/darcs/creb/
 * puredata.info page: https://puredata.info/downloads/creb/

cxc

 * - cxc is a library of Pd objects for random numbers and system tools. Check the puredata.info page to see a description of its objects. Tested with pd 0.42, pd 0.43, pd 0.44.


 * Sources: https://sourceforge.net/projects/pure-data/files/libraries/cxc/
 * puredata.info page: https://puredata.info/downloads/cxc/

cyclone

 * - Cyclone expands Pure Data with objects cloned from cycling74's Max/MSP and provides some good level of compatibility between the two environments.


 * Sources: https://github.com/porres/pd-cyclone
 * puredata.info page: https://puredata.info/downloads/cyclone/

deken-plugin

 * - A minimal package management system for Pure Data externals, included by default in pd since pd 0.47. When manually installing the deken-plugin, Pd will use it if (and only if) it has a greater version number than the one included in Pd.


 * Sources: https://github.com/pure-data/deken
 * puredata.info page: https://puredata.info/docs/Deken

dnd-plugin

 * - Drag and drop gui plugin for puredata mac osx.


 * Sources: https://github.com/megrimm/pd-dnd-plugin
 * puredata.info page: Unknown

doublechord-plugin

 * - doublechord: duplicate patch chords. Usage: select a connection (aka 'patch chord'), and press Ctrl-D, the connection will be duplicated to the right (if possible), connecting the same two objects but the next outlets/inlets. Does not load on Pd >= 0.49, since Intelligent Patching already gives this functionality built-in in Pd.


 * Sources: https://git.iem.at/pd/punish/-/tree/master/doublechord-plugin
 * puredata.info page: https://puredata.info/Members/zmoelnigbot/software/punish/v0.2.2/doublechord-plugin/

DRFX

 * - [DRFX] is an abstraction that automatically creates a signal routing system and associated controls based on inputs and effect modules that you specify. This allows you to make any type of series or parallel connection chain between your inputs and effects, and change routing on the fly. You can read more here: https://github.com/wbrent/DRFX/blob/master/INSTRUCTIONS.pdf


 * Sources: https://github.com/wbrent/DRFX
 * puredata.info page: https://puredata.info/Members/wmbrent/software/DRFX/

dw_lib

 * - dw_lib contains 1 external library "dw_lib.dll" with 7 objects and their help files (see CONTENT.txt). The main aim is to support the DW cycle (Difference/Repetition).


 * Sources: https://git.iem.at/pd/dw_lib
 * puredata.info page: https://puredata.info/Members/musil/software/dw_lib

earplug~

 * - earplug~ is a binaural filter based on KEMAR impulse measurement which allows you to spatialize a sound in realtime. It basically takes the KEMAR dummy head data set, and interpolates 368 locations where HRTF measurement exists in a spherical surface. You get azimuth 0 - 360 degrees and elevation -40 - 90 degrees.


 * Sources: https://github.com/pd-externals/earplug
 * puredata.info page: https://puredata.info/downloads/earplug

easyflow

 * - easyflow is an library of PureData abstractions with two objectives:


 * 1) Simplify your work by solving common problems of data flow;
 * 2) Suggest and exemplify good Pure Data programming practices and stimulate thought and discussion on writing better organized and maintainable PD code.
 * The library was designed to be basic so it is 100% vanilla. To read more, go here https://github.com/HenriAugusto/easyflow


 * Sources: https://github.com/HenriAugusto/easyflow
 * puredata.info page: https://puredata.info/Members/Henri/software/easyflow/

echocurve~

 * - echocurve~ feedback delay with exponentially changing time and amplitude curve.


 * Sources: Available on Deken.
 * puredata.info page: https://puredata.info/Members/jwmatthys/software/echocurve~/

ekext

 * - This library is a collection of objects for analyzing audio to get musical information, like spectrum and peak information, to generate sound based on analysis, like Linear-Predictive Coding, and for working with polyphony.


 * Sources: Available on Deken.
 * puredata.info page: https://puredata.info/downloads/ekext/ or https://puredata.info/Members/edkelly/software/ekext/

else

 * - ELSE - EL Locus Solus' Externals. ELSE is a big library of externals that provides a cohesive system for computer music. It also serves as a basis for an Live Electronics Tutorial by the same author, Alexandre Torres Porres. Since version 1.0-0 beta 28, the downloads of ELSE also contain the Live Electronics Tutorial as part of the package. Read more at https://github.com/porres/pd-else or http://compmus.ime.usp.br/sbcm/2017/papers/sbcm-2017-6.pdf


 * Sources: https://github.com/porres/pd-else
 * puredata.info page: https://puredata.info/Members/porres/software/else

ext13

 * - ext13 is a collection of externals for pd by dieb13. Most of the code comes from other pd-object or externals and is just modified.


 * Sources: Available on Deken
 * puredata.info page: https://puredata.info/downloads/ext13

extra

 * - extra consists of Pd objects which are too specialized or otherwise non-canonical for inclusion into Pd proper. (These objects are part of the regular Pd distribution as of Pd version 0.30)


 * Note: this list below comes from the version shipped from pd-extended, that is available in deken, and it lacks pd~, sigmund and stdout on the readme, while it mentions paf~ that isn't present. Note, again, that this library has the objects as they were in pd extended, so the versions shipped on the regular Pd-vanilla are more up to date and should be used instead, you can check for the most updated version here https://github.com/pure-data/pure-data/tree/master/extra.
 * Contents:
 * Externs:
 * fiddle~ -- pitch tracker
 * bonk~ percussion detector
 * choice --- find the "best fit" of incoming vector with stored profiles
 * loop~ sample looper
 * expr - arithmetic expression evaluation (Shahrokh Yadegari)
 * pique fft-based peak finder
 * lrshift~ - left or right shift an audio vector
 * Abstractions:
 * hilbert~ - Hilbert transform for SSB modulation
 * complex-mod~ - ring modulation for complex (real+imaginary) audio signals
 * rev1~, etc. - reverberators


 * Sources: Unknown (but you can check the most updated version here https://github.com/pure-data/pure-data/tree/master/extra )
 * puredata.info page: https://puredata.info/Members/chr15m/software/v0-0extended/extra

ezaoo

 * - AccadAoo - A Pure Data patch to connect and play online from your home. Main Page: https://fdch.github.io/AccadAoo/
 * It depends on:
 * 


 * Sources: https://github.com/fdch/AccadAoo
 * puredata.info page: https://puredata.info/Members/fdch/software/ezaoo/

faustgen~

 * - The faustgen~ object is an external with the FAUST just-in-time (JIT) compiler embedded that allows to load, compile and play FAUST files within the audio programming environment Pure Data. FAUST (Functional Audio Stream) is a functional programming language specifically designed for real-time signal processing and synthesis developed by the GRAME. The FAUST JIT compiler - built with LLVM - brings together the convenience of a standalone interpreted language with the efficiency of a compiled language. The faustgen~ object is a very first version with elementary features, any help and any contribution are welcome. (From github page).


 * Sources: https://github.com/CICM/pd-faustgen
 * puredata.info page: https://puredata.info/Members/pierreglt/software/faustgen~/

fd_lib

 * - A suite of externals and abstractions. It has: 284 abstractions, 38 externals, shell scripts, and more. For an overview of the library, go open '_overview.pd'. For instructions on how to compile see INSTALL.txt. Use at your own risk and have fun! (by fdch)


 * Sources: https://github.com/fdch/fd_lib
 * puredata.info page: https://puredata.info/Members/fdch/software/fd_lib/

fftease

 * - FFTease is a collection of Max/MSP objects implementing various forms of spectral sound processing. These include an additive-synthesis phase vocoder, noise reduction, cross synthesis, and more unusual forms of spectral processing. The collection was designed by Eric Lyon and Christopher Penrose in 1999, and has been maintained by Eric Lyon since 2003. See all the objects and descriptions on the github page. You can also read about the history of this object and here: https://www.academia.edu/31291505/FFTease_and_LyonPotpourri_History_and_Recent_Developments


 * Sources: https://github.com/ericlyon/pd-fftease
 * puredata.info page: https://puredata.info/downloads/fftease

filemtime

 * - A Pure-Data external to change mtime (last modification time) of files.


 * Sources: https://github.com/Lucarda/pd-filemtime
 * puredata.info page: https://puredata.info/Members/lucarda/software/filemtime/

flatgui

 * - flatgui is a library of GUI objects that were part of the old 'flatspace' collection that was discontinued.


 * Sources: https://github.com/rfabbri/pd-macambira/tree/master/externals/flatgui
 * puredata.info page: https://puredata.info/Members/chr15m/software/v0-0extended/flatgui/

Fraise

 * - Fraise (FRAmework for Interfacing Software & Electronics) is an open-source framework developed by metalu.net for connecting multiple low-cost microcontroller boards to a computer. It aims to simplify building of robotic installations, control interfaces (for light, video, music…) or any project combining software, sensors and actuators.
 * - Fraise is :
 * a protocol for communication between multiple microcontrollers and a host computer
 * some conventions about the physical layers and associated connectors
 * a C library implementing Fraise protocol plus various hardware-related modules at firmware level
 * a multi-platform integrated environment hosted by Pure Data for interacting with Fraise boards
 * Read more at: http://metalu.net/en/outils/fraise-overview/ and http://metalunet.github.io/Fraise-doc/


 * Sources: https://github.com/MetaluNet/Fraise
 * puredata.info page: https://puredata.info/Members/ant1r/software/Fraise/

freeverb~

 * - Studio-quality Schroeder/Moorer reverb as a Pd object, see the github readmes for more information and historic context. See also


 * Sources: https://github.com/electrickery/pd-freeverb
 * puredata.info page: https://puredata.info/downloads/freeverb

Gem

 * - GEM is the Graphics Environment for Multimedia. It was originally written by Mark Danks to generate real-time computer graphics (openGL-based), especially for audio-visual compositions.


 * Sources: https://github.com/umlaeute/Gem
 * puredata.info page: https://puredata.info/downloads/gem/

gem2pdp

 * - gemp2pdp : GEM to PDP bridge. See also and.


 * Sources: https://sourceforge.net/p/pure-data/svn/10246/tree/tags/pd-extended/v0-39-3-extended/externals/gem2pdp/
 * puredata.info page: https://puredata.info/Members/zmoelnig/software/gem2pdp/

ggee

 * - ggee is a library by Guenter Geiger with five sections: control, experimental, filters, gui, and signal.
 * objects for controlling things:


 * constant
 * rl
 * serial_ms
 * sl
 * getdir
 * rtout
 * serial_mt
 * stripdir
 * inv
 * serial_bird
 * shell
 * unserialize
 * qread
 * serialize
 * sinh
 * unwonk


 * experimental synths:


 * fofsynth~
 * tabwrite4~
 * pvocfreq


 * objects for controlling filters:


 * bandpass
 * highpass
 * hlshelf
 * lowshelf
 * notch
 * equalizer
 * highshelf
 * lowpass
 * moog~


 * GUI objects:


 * button
 * fatom
 * image
 * sliderh
 * ticker
 * envgen
 * gcanvas
 * slider
 * state
 * toddle


 * manipulating signals:


 * atan2~
 * mixer~
 * sfwrite~
 * streamin~
 * streamout~


 * Sources: https://github.com/pd-externals/ggee
 * puredata.info page: https://download.puredata.info/ggee

gigaverb~

 * - Pd-port of the Max/MSP-port Juhana Sadeharju's Gigaverb. gigaverb~ is a feedback delay network reverb. see also


 * Sources: https://github.com/d-i-s/gigaverb
 * puredata.info page: https://puredata.info/Members/dis/software/gigaverb~/

grambilib

 * - An ambisonics library for Pd and Max/MSP (v1.2). [grambipan~], [grambiman~], and [grambidec~] are a series of ambisonic objects for Pd. The externals (collectively) allow a user to manipulate 1st (3d), 2nd (2d), 3rd (2d), and 7th (2d) order ambisonics for mono, stereo, quad, 5.0, hexagonal, octagonal, hexadecagonal and b-format cube (3d) array configurations. Read more at github page


 * Sources: https://github.com/rickygraham/grambilib
 * puredata.info page: https://puredata.info/Members/ricky/grambilib/

guis

 * - Extra guis and a preset manager for puredata. Guis are currently only compatible for pdnext. Preset Manager works for all versions of pd.


 * Sources: https://github.com/Eric-Lennartson/pd-guis
 * puredata.info page: https://puredata.info/Members/ericlennartson/software/guis/

hcs

 * - The 'hcs' library is a random grabbag of objects that are experiments that sometimes lead to full-fledged libraries. There are objects for getting UNIX file and permissions information (group, gid2group_name, group_name2gid, uid2username, username2uid, hostname, stat, uname, setenv), Pd GUI manipulation (canvas_name, window_name, sys_gui, tcl_version, ce_path, tkconsole, pointer_position, cursor), handling filenames (file_type, folder_list, helppath, split_path), and more.


 * Sources: https://github.com/pd-externals/hcs
 * puredata.info page: https://puredata.info/downloads/hcs/

hexloader

 * - Loads objects with weirdo characters. To understand, check the readme on the git page or the puredata.info page.


 * Sources: https://git.iem.at/pd/hexloader
 * puredata.info page: https://download.puredata.info/hexloader

hid

 * - hid is an object for reading data from USB HID devices like keyboards, mice, joysticks, gamepads, keypads, and all sorts of other esoteric controllers like USB knobs, touchscreens, Apple IR Remotes, etc. It works on Linux and Mac, for windows, see and


 * Sources: https://gitlab.com/aaaaalbert/pd-hid
 * puredata.info page: https://puredata.info/Members/albert/software/hid
 * older puredata.info page: https://puredata.info/downloads/hid

hidin

 * - Old hidin external from Pd-Extended, for windows only. see Hid for Windows.
 * See also and


 * Sources: Unknown
 * puredata.info page: https://puredata.info/Members/chr15m/software/v0-0extended/hidin/

hidio

 * - (description from old page in puredata.info-->) This is the next generation of HID API for Pd and Max/MSP. The aim is to have this object perform the same on Pd on GNU/Linux, Mac OS X, and Windows, and Max/MSP on Mac OS X and Windows.
 * See also and


 * Sources: https://github.com/Benitoite/hidio
 * puredata.info page: https://puredata.info/downloads/hidio/

hotfix732-deadkeys-plugin

 * - A plugin that fixes the issue #732 on Pd 0.50-0.


 * puredata.info page: https://puredata.info/Members/zmoelnig/software/hotfix732-deadkeys-plugin/0.50.0.1/

iem16

 * - 16bit storage for Pd. It contains many objects similar to pd ones (del16read~, del16write~, table16, tab16read, tab16write, and others) that stores and reads values in integer 16bit format (only 2 bytes) as opposed to pd internal objects that stores numbers in floats, that may occupy 4 bytes on 32-bit systems and 8 bytes on 64-bit systems (for an explanation on why, and when to use this library, read more in this e-mail thread on pd-list: https://lists.puredata.info/pipermail/pd-list/2022-01/130694.html and this one https://lists.puredata.info/pipermail/pd-list/2022-01/130707.html ).


 * Sources: https://git.iem.at/pd/iem16
 * puredata.info page: https://puredata.info/Members/iembot/software/iem16/

iem_adaptfilt

 * - A library containing several algorithms for least mean square (LMS) adaptive filtering.


 * Sources: https://git.iem.at/pd/iem_adaptfilt
 * puredata.info page: https://puredata.info/downloads/iem_adaptfilt

iem_ambi

 * - iem_ambi contains 3 objects:
 * ambi_encode
 * ambi_rot
 * ambi_decode3
 * They calculate ambisonic encoder matrices, rotation matrices and decoder matrices from 1st to 4th order in 3D, or from 1st to 12th order in 2D. Ambisonic is a 3D sound spatialisation system with separated encoding and decoding. (calculation base are the spherical harmonics).
 * They are designed to be used with the library to do 3d audio spatialization.


 * Sources: https://git.iem.at/pd/iem_ambi
 * puredata.info page: https://puredata.info/downloads/iem_ambi/

iem_bin_ambi

 * - This library was incorporated into, so you can consider it obsolete, but since it was present on pd-extended, it is available if someone needs it when opening an old patch from extended era. According to its readme on the source page, iem_bin_ambi contains 2 objects: "bin_ambi_reduced_decode_fft2" and "bin_ambi_reduced_decode_fir2" which calculate the product of an ambisonic decoder-matrix and the binaural HRIR's. (in frequency and in time domain).


 * Sources: https://git.iem.at/pd/iem_ambi/-/tree/SVN/iem_bin_ambi
 * puredata.info page: https://puredata.info/Members/zmoelnig/software/iem_bin_ambi/

iem_delay

 * - iem_delay is written by Thomas Musil from IEM Graz Austria and it is compatible to miller puckette's pd-0.37-3 to pd-0.39-2.
 * iem_delay contains 3 objects: "block_delay~", "n_delay1p_line~" and "n_delay2p_line~".
 * block_delay~ delays signals to one blocksize.
 * n_delay1p_line~ is a delay with one signal inlet and n signal outlets which change its delay taps during a time period, without interpolation.
 * n_delay2p_line~ is a delay with one signal inlet and n signal outlets which change its delay taps during a time period, with a 2-point interpolation between the samples.


 * Sources: Unknown
 * puredata.info page: https://puredata.info/Members/zmoelnig/software/iem_delay/

iem_roomsim

 * - acoustic room simulation library for Pd


 * Sources: https://git.iem.at/pd/iem_roomsim
 * puredata.info page: https://puredata.info/Members/musil/software/iem_roomsim/

iem_spec2

 * - objects to speed up simple operations in the spectral domain


 * Sources: https://git.iem.at/pd/iem_spec2
 * puredata.info page: https://puredata.info/Members/musil/software/iem_spec2/

iem_tab

 * - objects for complex table manipulation


 * Sources: https://git.iem.at/pd/iem_tab
 * puredata.info page: https://puredata.info/Members/musil/software/iem_tab/

iem_vanilla

 * - iem_vanilla contains 66 abstractions and their help files (see CONTENT.txt). The main topics are to support pd with useful objects of the without a need of compiled dynamic libraries.


 * Sources: https://git.iem.at/pd/iem_vanilla
 * puredata.info page: https://puredata.info/Members/musil/software/iem_vanilla/

iemgui

 * - additional GUI objects for Pd. Read more at CONTENT.txt file.


 * Sources: https://git.iem.at/pd/iemgui
 * puredata.info page: https://puredata.info/Members/musil/software/iemgui/

iemguts

 * - This library contains a collection of very low-level objects to Pd, that are usually used to build higher-level abstractions for dynamic patching and live coding by adding reflection capabilities to the patcher language.
 * This library is famous for allowing Pd-abstractions to move around in the patch.


 * Sources: https://git.iem.at/pd/iemguts
 * puredata.info page: https://puredata.info/downloads/iemguts/

iemlib

 * - iemlib contains 1 external library with more than 71 objects and their help files and a collection of more than 280 abstractions and their help files (see CONTENT.txt for a description of all objects). The main topics are to support pd with more useful objects and a lot of recursive filters.


 * Sources: https://git.iem.at/pd/iemlib
 * puredata.info page: https://puredata.info/Members/rdz/software/iemlib/

iemmatrix

 * - 'iemmatrix' provides a suite of matrix processing and linear algebra functionality.


 * Sources: https://git.iem.at/pd/iemmatrix
 * puredata.info page: https://puredata.info/downloads/iemmatrix

iemnet

 * - Pd library for low-level networking. It is a fork of martin peach's "net" library, that allows low-level interaction with networks on OSI-layer 5 (transport layer). To read more about the differences and the design choices, see https://git.iem.at/pd/iemnet/-/blob/master/README.md


 * Sources: https://git.iem.at/pd/iemnet
 * puredata.info page: https://puredata.info/downloads/iemnet

iempluginOSC

 * - This project is an extension to (https://git.iem.at/pd/vstplugin) for the IEM Plug-in suite (https://plugins.iem.at) which allows to use the OSC interface (https://plugins.iem.at/docs/osc/) without an actual socket connection. This is mostly useful for plug-in commands which are not available via the VST parameter interface (e.g. loading a configuration file for SimpleDecoder), especially if the plug-in runs in a non-GUI environment.


 * Sources: https://git.iem.at/ressi/iempluginosc
 * puredata.info page: https://puredata.info/Members/spacechild1/software/iempluginOSC/

iemxmlrpc

 * - iemxmlrpc is a external for pd, so that pd acts an xmlrpc server:
 * send data to pd via any xmlrpc-client
 * request for data with binding receivers in pd to be requested
 * loading and releasing pd patches over xmlrpc-server
 * The intention is to have pd running somewhere in the background, loading patches in pd and controlling them over other interfaces such as plugins or webserver, but can be used for other purposes also.


 * Sources: https://git.purrdata.net/jwilkes/purr-data/-/tree/master/externals/iem/iemxmlrpc
 * puredata.info page: https://puredata.info/Members/ritsch/iemxmlrpc/

Jamoma

 * - Modular Patching and Programming for Realtime Media. As your Pd patchers grow in size, it becomes increasingly important that they do not run wild. Jamoma for Pd helps structuring and controlling your system so that YOU stay in control. Jamoma’s essence is modularity: the ability to manage complex systems built up of flexible and interchangable modules. To fully leverage Jamoma’s power you make your own modules, but you can go a long way by using the existing library too.
 * Read more about Jamoma in the follow links:
 * http://www.jamoma.org/
 * http://www.jamoma.org/pd/
 * http://jamoma.github.io/


 * Sources: https://github.com/jamoma/JamomaPureData
 * puredata.info page: https://puredata.info/Members/avilleret/software/Jamoma/

jasch_lib

 * - old jasch_lib from pd-extended. (Its helpfiles lacks explanation about what this lib is supposed to do, so if you know, please update this description, please)


 * Sources: https://sourceforge.net/p/pure-data/svn/17183/tree/trunk/externals/jasch_lib/ or https://git.purrdata.net/chaitanya1-coder/purr-data/-/tree/little-scripting-language/externals/jasch_lib
 * puredata.info page: https://puredata.info/Members/zmoelnig/software/jasch_lib/

jit_expr

 * - jit_expr is a clone of the pure data expr/expr~/fexpr~ objects. It just-in-time compiles its expressions so they should be much more optimized than the original. If all works as designed, they should use less CPU than the equivalent vanilla, non-expr, patching and have a significant CPU advantage over the original expr objects. Read more about it in this e-mail: https://www.mail-archive.com/pd-announce@lists.iem.at/msg00234.html


 * Sources: https://github.com/x37v/jit-expr
 * puredata.info page: https://puredata.info/Members/x37v/software/jit_expr/

jl

 * - A collection of externals and abstractions for pure-data vanilla. This library is oriented towards musical creation, providing various audio synths and effects, as well as a bunch of utilities to manipulate rhythms and scales.


 * Sources: https://github.com/josephlarralde/jl.pd.lib
 * puredata.info page: https://puredata.info/Members/josephlarralde/software/jl/

jmmmp

 * - This package has several utilities with different functions. It is composed of abstractions only. You can check each object description on https://puredata.info/downloads/jmmmp/releases/0.61
 * The jmmmp library is dependent on the following libraries:
 * 
 * 
 * 
 * 
 * 
 * 
 * 2.2.6.


 * Sources page: Unknown
 * puredata.info page: https://puredata.info/downloads/jmmmp

jpcex

 * - A personal collection of externals which fall in many categories. It is partly a playground for learning, and implementation of DaFx papers. It also contains ports of audio software from other free projects.


 * bleprect~ bandlimited rectangle oscillator with hard sync
 * blepsaw~ bandlimited sawtooth oscillator with hard sync
 * bleptri~ bandlimited triangle oscillator with hard sync
 * bbd~ digital model of the analog bucket brigade delay (BBD) limit~ limiter
 * robot~ robotic sound effect
 * lfos~ array of LFOs with fixed relative phase offsets
 * sincos combined computation of sine and cosine (faster)
 * tri~ primitive triangle oscillator
 * miditranspose transposition of MIDI note events
 * midiselect MIDI event selection by channel and type
 * delayA~ allpass delay line
 * nlcubic~ cubic non-linearity
 * dcremove~ DC offset remover
 * opl3~ emulation of the Yamaha OPL3 with MIDI driver
 * Sources: https://github.com/jpcima/pd-externals
 * puredata.info page: https://puredata.info/downloads/jpcex

jpcvisu

 * - These objects display an interactive visualization window when they are banged.
 * Pd just sends the samples to the external visualizer, so it remains lightweight on the DSP graph for realtime use.
 * The visualizer computes spectral analysis and draws the picture in its own process.
 * It features a few controls similar to an oscilloscope, and it can show with precision the levels displayed just by hovering the screen by mouse.


 * wfvisu~ Waterfall
 * sgvisu~ Spectrogram
 * ogvisu~ Oscillogram
 * Sources: https://github.com/jpcima/pd-visualization
 * puredata.info page: https://puredata.info/downloads/jpcvisu

kiosk-plugin

 * - KIOSK mode for Pure Data. KIOSK mode allows you to enable one or more of the following features:


 * hiding the main Pd-window
 * disabling the menu bar in the patch window
 * making a patch window to be shown at fullscreen
 * setting a window name for the patch window (independent of the patch name)
 * prevent closing of patch windows (using Alt-F4, clicking on the "Close Window" icon, et al.)
 * quit Pd when a patch window is closed
 * disable the (right click) context menu
 * disable key-bindings (like Ctrl-N)
 * prevent scroll bars from appearing, even if the patch content does not fit on a single window
 * You can enable/disable the parts you want to by editing a kiosk.cfg file.
 * This config file is searched for in the working directory of Pd, and (if not found) in the plugin directory of the kiosk-plugin (usually ~/.local/lib/pd/extra/kiosk-plugin/)
 * To read more about how to config kiosk plugin, read https://git.iem.at/pd/kiosk-plugin#configuration


 * Sources: https://git.iem.at/pd/kiosk-plugin
 * puredata.info page: https://puredata.info/downloads/kiosk-plugin

la-kitchen

 * - This collection of abstraction is dedicated for data treatment using pure data. It provide basic object for constant rate data flow treatment. They are designed to be used with La kitchen sensors interfaces (Kroonde or Toaster). But can feet other needs.
 * You need and  to be able to load this abstractions.
 * This collection of object were made by Charles Verron for La kitchen (march 2004)
 * question about it : cyrille.henry@la-kitchen.fr


 * Sources page: Unknown
 * puredata.info page: https://puredata.info/Members/chr15m/software/v0-0extended/la-kitchen/

lerdahl

 * - This is an external for Pd written in C. It is largely based on ideas presented in Fred Lerdahl's book, “Tonal Pitch Space”, on the construction of melodies.
 * Version 1 takes any MIDI input and outputs values for pitch class, basic space, closure, tension, ratios of asymmetrical attraction, ratios of asymmetrical attraction & pitch class distance, and pitch class distance.


 * Sources: https://github.com/rickygraham/lerdahl
 * puredata.info page: https://puredata.info/Members/ricky/lerdahl-v0.1-%28Linux-x86_64-64%29%28Windows-x86_64-64%29%28Darwin-i386-32%29%28Darwin-x86_64%29%28Sources%29-externals.zip/view?searchterm=lerdahl

libdir

 * - Warning: old library from pd-extended era. The 'libdir' loader is a Pure Data loader which supports the libdir library format. The libdir library format aims to be a common library format for Pd which works with objects written in any language, including Pd. This library format was designed to be easy to create, install, and use. It should work when installed into the global path (i.e. pd/extra) or when copied locally into a project folder. It should work with objects written in any supported language (i.e. binaries, .pd, and the various loaders like pdlua and tclpd).


 * Sources: https://sourceforge.net/projects/pure-data/files/libraries/libdir/
 * puredata.info page: https://puredata.info/downloads/libdir

list-abs

 * - A collection of list-processing abstractions for Pd.
 * For a list of included objects open list-abs-intro.pd or list-abs-intro.txt


 * Sources: https://github.com/pd-externals/list-abs
 * puredata.info page: https://puredata.info/downloads/list-abs

log

 * - This library adds objects to Pure Data that allow one to create printout at various verbosity levels. The objects can be used as drop-in replacement for the standard [print] object, but the printed messages can be filtered and have a colorful appearance.


 * Sources: Unknown
 * puredata.info page: https://puredata.info/downloads/log/

lolPd

 * - lol enables the quick creation of vertical-pipeline patches for accomplishing the types of tasks that are easy in functional languages and languages like Python with e.g. list-comprehensions. Read more about it in this e-mail: https://lists.puredata.info/pipermail/pd-list//2015-07/110885.html


 * Sources: https://github.com/chr15m/lolPd
 * puredata.info page: https://puredata.info/Members/chr15m/software/lolPd/

lyonpotpourri

 * - LyonPotpourri is a collection of externals developed for the creation and performance of computer music. For a list of all objects, check the github page. You can read about the history of this library and here: https://www.academia.edu/31291505/FFTease_and_LyonPotpourri_History_and_Recent_Developments


 * Sources: https://github.com/ericlyon/pd-lyonpotpourri
 * puredata.info page: https://puredata.info/downloads/lyonpotpourri/

mapping

 * - Warning: This library is old, and was designed to work on Pd-Extended, it doesn't work out of the box on pd-vanilla. The Mapping Library for Pd is a library of mapping primitives for mapping data to controls. Also included are techniques for conditioning sensor data to make it usable in the context of instrument design. It is something like a set of unit generators for mapping, plotting out the most basic building blocks for creating instrument mappings.


 * Sources page: Unknown
 * puredata.info page: https://puredata.info/downloads/mapping

markex

 * - Warning: version in Pd-extended 0.42.5. Markex is an external library of miscellaneous objects that was begun in 1994 and originally included in GEM. It is largely here for the sake of old projects that might still rely on it. The included functionality has been improved in other libraries.


 * Sources: Unknown
 * puredata.info page: https://puredata.info/downloads/markex

martha~

 * - martha~ is a companion to the sigmund~ analysis object. It's designed to accept output from sigmund~'s sinusoidal tracking function, "tracks". In addition to providing an internal oscillator bank and doing all the data/voice bookkeeping, it has some useful features for independent glissing and amplitude pulsing of individual partials. martha~ is also capable of managing the attack and release times of partials and forcing inharmonic spectra to harmonic arrangements. Combined, these features can create a variety of interesting effects.


 * Sources: https://github.com/coderofsalvation/pd-puredata-vanilla-patches/blob/master/williambrent/martha%7E.pd
 * puredata.info page: https://puredata.info/Members/wmbrent/software/martha~/

maxlib

 * - maxlib is a library of non-tilde externals for Pd. The objects can be very useful to analyze any musical performance. Some of the objects are 'borrowed' from Max (they are not ported but rewritten for Pd cheap imitations). maxlib was extended by objects of more general use and some which can be use for composition purposes. You can read more at the original readme.txt here: https://github.com/electrickery/pd-maxlib/blob/master/README.txt


 * Sources: https://github.com/electrickery/pd-maxlib
 * puredata.info page: https://puredata.info/downloads/maxlib

mc

 * - mc – Pure data multi-channel extension


 * Sources: https://github.com/grrrr/mc
 * puredata.info page: https://puredata.info/Members/thomas/software/mc/

mediasettings

 * - mediasettings - get/set audio and MIDI settings within Pd


 * Sources: https://git.iem.at/pd/mediasettings
 * puredata.info page: https://puredata.info/downloads/mediasettings/

midifile

 * - Midifile reads type 0 and 1 SMF (.mid) files and may work on type 2; it should ignore any non-standard meta codes. Midifile writes type 0 and 1 files. System Exclusive is supported on read and write. MIDI data is input and output as lists.


 * Sources: https://git.puredata.info/cgit/svn2git/libraries/mrpeach.git/tree/midifile
 * puredata.info page: https://puredata.info/Members/martinrp/midifile/

missive~

 * - missive~ is a vector synth object that uses a wavetable index to crossfade between neighboring wavetables in a set. Sets can contain any number of wavetables, and are composed of individual .wav files that each contain one wavetable cycle. The lengths of wavetables in a set need not match. Smooth wraparound is handled automatically (the extra guard points required for Pd's 4-point interpolation scheme are added internally).


 * Sources: Unknown
 * puredata.info page: https://puredata.info/Members/wmbrent/software/missive~

mjlib

 * - Mjlib is a small Pure Data library created by Mark Williamson.
 * The objects in the library are:
 * about - random generator based on anchor value and percentual deviation
 * metroplus - metro based in list of intervals
 * monorhythm - rhythm generator outputs beat, accent and sync bangs
 * morse - converts ASCII to dot and dash bangs
 * n2m - note name to midi convertor
 * pin~ - paramerterized random signal router
 * prob - random generator governed by time interval and probability
 * synapseA~ - compares a signal to a set threshold


 * Sources: https://github.com/electrickery/pd-mjlib
 * puredata.info page: https://puredata.info/Members/fjkraan/software/mjlib/0.1.3/moreInfo/