stk_min 0.7.0
stk_min: ^0.7.0 copied to clipboard
A high-performance Flutter wrapper for the Synthesis ToolKit (STK). Features physically modeled musical instruments: Flute, Saxophone, Shakers, and Percussion (Drums, Tabla, Marimba, Agogo, WoodBlocks [...]
CHANGELOG #
0.7.0 #
- Authentic Tabla Timbre Calibration: Fully restored Tabla percussion quality by replacing legacy vocal-sounding artifacts with high-fidelity synthetic physical models.
- Engine Fix: Corrected sample rate mismatch (removed 2x speed "click" glitch).
- Volume Normalization: Added internal gain compensation (+12dB) to align Tabla levels with the rock kit.
- Resonance Logic: Re-mapped damping poles to support expressive "open" vs "muted" strokes.
- New Stroke: Added Tabla Tak (Bayan muted stroke) for a crisp, percussive accompaniment.
- UI Improvement: Renamed "Tabla Din" pad to "Tabla Ghe" for accurate stroke mapping.
0.6.0 #
- Indian Percussion Support: Added Tabla instruments (Dayan and Bayan) to the
Drummerkit.- New strokes: Tabla Na (Dayan/Right), Tabla Din (Bayan/Left), and Tabla Tee (Dayan Mute).
- Enhanced
Drummerengine with precise frequency-based tuning for realistic "Sa" and "Shruti" alignment.
- High-Fidelity Audio Fix: Correctly configured global endianness (
__LITTLE_ENDIAN__) across all platforms (Linux, Windows, iOS, macOS), ensuring clean 16-bit PCM playback for all instruments. - Premium UI: Added specialized concentric circular pads in the example app with a Saffron and Charcoal aesthetic.
- Tuning Interface: Added interactive root note (Sa) and bass depth (Shruti) controls in the example app.
- API Expansion: Added direct constants for all drum instruments in the
Drummerclass.
0.5.1 #
- Bug Fix: Resolved a critical hang on Linux/Desktop when initializing
StkMinin background isolates. - Initialization Optimization: Improved asset discovery logic to search multiple potential paths and bypassed hanging
path_providercalls on Desktop.
0.5.0 #
- Desktop Initialization: Added direct disk-based asset lookup for Linux, Windows, and macOS to support background isolates.
- Initialization Optimization: Avoids asset extraction on desktop platforms if the assets are already available in the app bundle.
0.4.2 #
- Drummer Frequency Fix: Implemented explicit frequency-based triggering to resolve "vocal sample" glitch.
- FFI Refinement: Updated
noteOnsignature to allow direct Hz control for improved sample selectivity.
0.4.1 #
- Drummer Stability: Fixed FFI bridge mismatch that could cause runtime crashes.
- Frequency Mapping: Improved Drummer frequency logic to support real-time playback rate adjustment based on requested frequency.
- Native Refactoring: Cleaned up Drummer.cpp and StkMini.cpp for better sample index handling.
0.4.0 #
- Universal Initialization: Added
StkMin.initialize()to automatically handle sample extraction and path configuration across all platforms. - Unified Assets: Moved raw samples into the package assets (
assets/rawwaves/) so they are bundled automatically when the package is installed. - Consistency: Guaranteed identical behavior across Linux, Android, and iOS by using a unified storage mechanism for samples.
- Dependencies: Added
path_providerandpathto manage cross-platform filesystem locations.
0.3.1 #
- SEO Optimization: Updated package description with targeted keywords (physical modeling, percussion, FFI) to improve search discoverability on pub.dev.
0.3.0 #
- Percussion Expansion: Added
ModalBarinstrument with presets for Agogo (African percussion), Marimba, Vibraphone, and more. - Drummer Enhancements:
- Added
setPitchsupport for real-time playback rate adjustment. - Fixed frequency mapping bug ("shouting" sample issue).
- Added
- Native Stability:
- Implemented lazy initialization for all instruments to prevent startup crashes when STK rawwave paths are not yet set.
- Improved memory management with pointer usage for native instruments.
- Example App Update:
- Comprehensive tabbed UI with 5 sections (Flute, Sax, Shakers, Drums, Percussion).
- Added controls for pitch, stick hardness, and preset selection.
- FFI Improvements: Expanded native bridge and updated CMake configurations for all platforms.
0.2.0 (Skipped/Internal) #
- Initial work on Drummer and Shakers support.
0.1.0 #
- Initial release
- Cross-platform support for Android, iOS, Linux, macOS, and Windows
- Flute instrument with physical modeling synthesis
- FFI-based direct access to STK library
- Expressive controls:
- Vibrato depth and speed
- Breath noise
- Tone color (jet delay)
- Breath pressure
- Complete example app with SoLoud audio playback integration
- Comprehensive documentation and usage examples
License #
This plugin is licensed under the MIT License. See LICENSE for details.