flutter_vst3 0.1.2 copy "flutter_vst3: ^0.1.2" to clipboard
flutter_vst3: ^0.1.2 copied to clipboard

Flutter/Dart framework for building VST® 3 plugins with Flutter UI and pure Dart audio processing. Provides the interface between Dart audio processing code and the Steinberg VST® 3 SDK C++ infrastructure.

flutter_vst3 #

Flutter/Dart framework for building VST® 3 plugins with Flutter UI and pure Dart audio processing.

VST Compatible

VST® is a registered trademark of Steinberg Media Technologies GmbH, registered in Europe and other countries.

Overview #

flutter_vst3 is a complete framework that enables you to build professional VST® 3 audio plugins using Flutter for the UI and Dart for real-time audio processing. The framework auto-generates all C++ VST® 3 boilerplate code - you write only Dart and Flutter.

For complete architecture documentation and examples, see the main project README.

Features #

  • Flutter UI - Build beautiful, reactive plugin interfaces
  • Pure Dart DSP - Write audio processing in familiar Dart syntax
  • Auto-Generated C++ - Never write VST® 3 boilerplate
  • Native Performance - Compiles to machine code, no runtime
  • 3-Way Parameter Binding - DAW ↔ Flutter UI ↔ Parameters stay in sync
  • Cross-Platform - macOS, Windows, Linux support

Quick Start #

📖 Complete Step-by-Step Plugin Creation Guide

The guide covers everything you need to build your first VST® 3 plugin:

  • Project setup and dependencies
  • Parameter definition with auto-generated C++
  • Building and testing your plugin
  • Installation to system VST® 3 directory

API Reference #

VST3Processor #

Base class for all Dart VST® 3 processors:

abstract class VST3Processor {
  void initialize(double sampleRate, int maxBlockSize);
  void processStereo(List<double> inputL, List<double> inputR,
                    List<double> outputL, List<double> outputR);
  void setParameter(int paramId, double normalizedValue);
  double getParameter(int paramId);
  int getParameterCount();
  void reset();
  void dispose();
}

VST3Bridge #

Main bridge for Flutter UI ↔ VST® host communication:

class VST3Bridge {
  // Register your processor
  static void registerProcessor(VST3Processor processor);
  
  // Initialize processor (called from C++ layer)
  static void initializeProcessor(double sampleRate, int maxBlockSize);
  
  // Process audio (called from C++ layer)
  static void processStereoCallback(/* FFI parameters */);
}

Examples #

See the complete example plugins in the main repository:

Requirements #

  • Dart SDK 3.0+
  • Flutter SDK 3.0+
  • CMake 3.20+
  • Steinberg VST® 3 SDK
  • C++17 compiler

This framework is not affiliated with Steinberg Media Technologies GmbH. VST® is a trademark of Steinberg Media Technologies GmbH.

Users must comply with the Steinberg VST® 3 SDK License Agreement when distributing VST® 3 plugins. See: https://steinbergmedia.github.io/vst3_dev_portal/pages/VST+3+Licensing/Index.html

License #

This project is licensed under the BSD 3-Clause License - see the LICENSE file for details.

2
likes
140
points
179
downloads

Publisher

unverified uploader

Weekly Downloads

Flutter/Dart framework for building VST® 3 plugins with Flutter UI and pure Dart audio processing. Provides the interface between Dart audio processing code and the Steinberg VST® 3 SDK C++ infrastructure.

Repository (GitHub)
Contributing

Topics

#vst3 #audio #plugins #flutter #music

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

ffi

More

Packages that depend on flutter_vst3