iPlug2

C++ Audio Plug-in Framework for desktop and web [PRE-RELEASE]

Github stars Tracking Chart

iPlug 2

C++ audio plug-in framework for desktop, mobile (iOS) and web

Build Status

iPlug 2 is a simple-to-use C++ framework for developing cross platform audio plug-ins/apps and targeting multiple plug-in APIs with the same minimalistic code. It abstracts an audio plug-in (IPlug) and it's drawing engine/GUI toolkit (IGraphics), although IPlug can be used in bring-your-own GUI library mode without IGraphics. IGraphics uses a retained mode paradigm and contains a collection of common controls well suited for audio plug-in GUIs, either using bitmap or vector graphics.

The original version of iPlug was developed by John Schwartz aka schwa and released in 2008 as part of Cockos' WDL library. iPlug 2 (2018) is a substantial reworking that brings multiple vector graphics backends to IGraphics (including GPU accelerated options and HiDPI/scaling), a better approach to concurrency, support for distributed plug-in formats and compiling to WebAssembly via emscripten, amongst many other things.

iPlug 2 targets the VST2, VST3, AUv2, AUv3, AAX (Native) and the Web Audio Module (WAM) plug-in APIs. It can also produce standalone win32/macOS apps with audio and MIDI I/O, as well as Reaper extensions.

iPlug 2 includes support for the FAUST programming language, and the libfaust JIT compiler. It was the winner of the 2018 FAUST award.

You can discuss iPlug 2 on the WDL forum or on the iPlug user's slack channel.

We welcome any help with bug fixes, features or documentation.

NOTE: We don't yet consider iPlug2 to be "production ready" since the we (the main devs) didn't ship our products with it yet, but it's nearly there. Read more here

You may like to check out the Web Audio Module version of VirtualCZ which has been made using iPlug 2.

You can help support the project financially in several ways, preferably via github sponsors but also via patreon or paypal donations. The more financial support, the quicker the project can progress to being "production ready".

patreon paypalslack

Overview

Name With OwneriPlug2/iPlug2
Primary LanguageC
Program languageC++ (Language Count: 22)
Platform
License:Other
Release Count4
Last Release Namev0.3.0 (Posted on 2022-06-27 20:23:34)
First Release NameEndless_Series_v3_2 (Posted on )
Created At2018-04-11 15:32:52
Pushed At2024-05-12 15:16:18
Last Commit At2024-05-04 20:53:28
Stargazers Count1.8k
Watchers Count58
Fork Count274
Commits Count12.4k
Has Issues Enabled
Issues Count534
Issue Open Count134
Pull Requests Count318
Pull Requests Open Count36
Pull Requests Close Count199
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private
To the top