dplug 14.4.0

A library for crafting native audio plugins as simply as possible.


To use this package, run the following command in your project's root directory:

Manual usage
Put the following dependency into your project's dependences section:


This package provides sub packages which can be used individually:

dplug:dplug-build - Build tool for plug-ins. DUB frontend which makes multiple versions of a plugin, and also package them in OSX bundles

dplug:abtest - Allows to make blind A/B comparisons.

dplug:process - Very barebones VST host to test speed of processing on a stereo file.

dplug:wav-compare - Compares two sounds.

<img alt="logo" src="https://cdn.rawgit.com/AuburnSounds/dplug/master/tools/dplug-logos/logo-coloured-on-transparent.png" width="130">

Build and Test <a href="https://code.dlang.org/packages/dplug" title="Go to dplug"><img src="https://img.shields.io/dub/v/dplug.svg" alt="Dub version"></a>

Dplug lets you create professional audio plug-ins with minimal headaches and maintenance cost.

🏠 Dplug.org | 📚 DPlug Wiki | 💬 Community Discord | 👩‍🏫 Getting Started

Features

FormatmacOS arm64macOS amd64Windows 32-bitWindows 64-bitLinux x86-64
VST2
VST3
AUv2
AAX
LV2
FLP

⚙️ Automated Mac and Windows installers, signing, notarization. ⚙️ Build plug-ins with D, a powerful, easy and fast native language. Expect serious improvements over C++ when it comes to learnability, build times, and morale. ⚙️ Package-based dependency management with DUB. Build any Dplug tool with the $ dub command. ⚙️ With PBR rendering, you can have video-game like skeuomorphism with a small RAM and disk usage. ⚙️ DAW support list here. ⚙️ Free of charge, however you'll find it's actively debugged and maintained with very low bug density. ⚙️ Ask your question on the Discord!

Made with Dplug

Come talk with us on the Dplug Discord to learn more and meet your peers!

Release notes

Keep up with major changes with the Dplug Release Notes.

**Key concept:** Dplug uses SemVer. If you stay on the same Dplug major version tag (eg: `"~>13.0"`), your plug-in wont't break, and more importantly your **user sessions** won't break either.

Governance

Dplug has a deep commitment to stability. All breaking changes are documented in the Changelog and issues major SemVer tags for breaking changes. If you don't want any breaking changes, you can pin Dplug to a major version in your dub.json. Breaking changes only happen for major tags.

Dplug's goal is to support existing products and build commercial companies around them. It is a part-time operation, from people who release commercial plug-ins for a living.

Being stable and relatively bug-free is deemed more important to us than implement every possible feature. It's often than enhancements get postponed in favour of product development, so please be patient!

Strengths of Dplug

  • No interaction needed with Xcode, CMake, C++, Obj-C or MSVC.
  • Lovable D language, suitable from prototyping to production.
  • Same features for VST2 / VST3 / AUv2 / AAX / LV2 plug-in formats.
  • Same features for desktop OS: Windows / macOS / Linux.
  • Faust language integration.
  • Easy SIMD compatible with both x86, x86_64, and arm64 with same codebase.
  • Fast 2D software rasterizer in dplug:canvas, no OpenGL headaches.
  • Wren scripting for faster UI authoring.
  • Optional Physically Based Rendering (PBR).
  • Image support: PNG, JPEG, QOI, and specially designed QOIX codec.
  • Easy to install and update.
  • State-of-the-Art tutorials.

VST3 SDK

If you don't have the VST3 SDK, you can't make VST3 plugins with Dplug. Find the VST3 SDK there: http://www.steinberg.net/en/company/developers.html

If you don't have a licensing agreement with Steinberg, you can't distribute VST2 or VST3 plug-ins.

Licenses

Dplug has many different licenses depending on the sub-package you need. Please check individual source files for license information. Please do your homework and respect the individual licences when releasing a plug-in.

In particular:

Authors:
  • Guillaume Piolat (original author)
  • Richard Andrew Cattermole (X11 windowing)
  • Ethan Reker (compile-time JSON parsing, X11 fixes, Wiki, clipit)
  • Andrej Mitrovic
Sub packages:
dplug:au, dplug:audio, dplug:canvas, dplug:client, dplug:core, dplug:dsp, dplug:fft, dplug:flat-widgets, dplug:flp, dplug:graphics, dplug:gui, dplug:host, dplug:iir, dplug:lv2, dplug:macos, dplug:math, dplug:pbr-widgets, dplug:vst2, dplug:vst3, dplug:wren-support, dplug:window, dplug:x11, dplug:dplug-build, dplug:bench, dplug:abtest, dplug:process, dplug:wav-compare
Dependencies:
dplug:canvas, dplug:macos, dplug:au, dplug:flat-widgets, dplug:flp, dplug:window, dplug:dsp, dplug:pbr-widgets, dplug:audio, dplug:core, dplug:lv2, dplug:fft, dplug:vst3, dplug:host, dplug:vst2, dplug:wren-support, dplug:client, dplug:x11, dplug:gui, dplug:graphics, dplug:iir
Versions:
14.7.1 2024-Nov-21
14.7.0 2024-Nov-15
14.6.0 2024-Nov-06
14.5.0 2024-Oct-15
14.4.2 2024-Sep-30
Show all 671 versions
Download Stats:
  • 4 downloads today

  • 22 downloads this week

  • 46 downloads this month

  • 21732 downloads total

Score:
3.3
Short URL:
dplug.dub.pm