• Stars
    star
    302
  • Rank 134,930 (Top 3 %)
  • Language
    C++
  • License
    Other
  • Created over 8 years ago
  • Updated about 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

openFrameworks addon for audio synthesis and generative music

ofxPDSP

ofxPDSP is an openFrameworks addon for audio synthesis and generative music. It is based on those design principles:

  • Native c++, made to be tightly integrated into c++ projects.
  • Class design mimics modular synthesizers, where inputs and outputs are patched with the >> operator.
  • Sample accurate timing for the included sequencer.
  • Thread-safe, lock-free methods for metering and control.
  • Lazy evaluated DSPs. DSP units are recursively processed in chunks big as the audio buffer size, DSPs switch between routines running at audio rate (process every sample) and control rate (once every buffer) on the fly when the result is the same. DSPs are also coded using SIMD instructions when possible.
  • Cross-platform code: works on Linux (x86/ARM), OSX, Windows, iOS, Android (only on ARM processors with NEON instructions).

It includes a good selection of modules ready to be used, like antialiasied oscillators and VA filters, an FFT convolver, analog-sounding envelopes, a delay, a noise generator, a sampler and a graincloud module, biquad equalizers (normal and 2x oversampled), modules for dynamic processing, units for oversampling/downsampling and a framework for writing and sequencing generative music. On top of that some other classes that uses openFrameworks for adding midi and OSC in/out, serial output, sequencer monitoring, waveform plotting and scopes, other audio addon wrapping and ofParameter-compatible control.

Documentation

Here is the reference page for a selection of the most high level classes and function (probably you won't ever need more than that).
To learn how to use ofxPDSP also be sure to check out all the included examples, starting from the basics.

Dependencies

ofxPDSP requires the latest stable or master release of openFrameworks, ofxMidi, ofxAudioFile and ofxOsc.

Examples

Check out the videos of some included examples:

ofxPDSP example-scoring4-wolfram-dub

ofxPDSP example-graincloud

ofxPDSP example-midi_polysynth

ofxPDSP example-scoring3-masterplan

ofxPDSP example-serial-arduino

ofxPDSP example-data-to-wave

License

Nicola Pisanti, MIT License 2016-2018.
For FFT the AudioFFT wrapper is used, Copyright (c) 2013 HiFi-LoFi.

More Repositories

1

ofxAudioFile

cross platform audio file loading for openFrameworks
C
38
star
2

of_vscode

bash script for generating openFrameworks projects for Visual Studio Code on Linux
Shell
31
star
3

ofxSIMDFloats

openframeworks addon for SIMD operations on aligned float vectors
C++
18
star
4

ofxDotFrag

cross compatible GL/GLES shaders to be tweaked in realtime
C++
14
star
5

ofxFixture

addons to manage multiple DMX fixtures
C++
11
star
6

grimorio

dotfiles, system setup scripts, how tos
CSS
10
star
7

np-patches

synth, effects and sequence classes for ofxPDSP
C++
9
star
8

ofxLaunchControllers

easy openFrameworks API for Novation Launch Control / XL
C++
8
star
9

ofxClayblocks

sensors and actuators devices running on OSC networks, with client classes for openFrameworks
C++
7
star
10

orcamenti

ORCA projects and relative ofxPDSP patches
C++
7
star
11

orca-snippets

patterns for hundredrabbits' ORCฮ›
6
star
12

ofxGuiPresetSelector

save and load ofxPanel presets with keypresses (or by functions)
C++
5
star
13

shiftguard

a fictional device
C++
5
star
14

np-extra

extra utility classes for openFrameworks
C++
4
star
15

np-analyzer

easy to use audio input envelopes for openFrameworks
C++
3
star
16

ofxRPiezos

ARCHIVED : now included in ofxClayblocks
C++
3
star
17

npisanti-nocms

statically generate my website with bash
HTML
3
star
18

microMidi

sketches for sensors to midi with arduino micro / leonardo
Arduino
2
star
19

np-tools

personal tools
C++
2
star
20

np-microscript

very opinionated graphic scripting with lua, nanovg and oF
C
2
star
21

clayblocks

sensors and actuators over OSC protocol for openFrameworks
Processing
2
star
22

np-utilities

personal utilities repo
Makefile
1
star
23

np-sketches

personal openFrameworks sketches repo
C++
1
star
24

np-stubs

stubs and tests
C++
1
star
25

np-pixelscript

cute low res graphics scripting with lua, sandboxed as oF addon
C++
1
star
26

np-instruments

ofxPDSP personal instruments / drum machines
C++
1
star
27

ofxPDSPPatches

DEPRECATED, use https://github.com/npisanti/np-patches instead
C++
1
star
28

np-miscela

livecode, mix and concatenate stuff
C++
1
star