audio_waveforms_gdx_plus 2.1.0
audio_waveforms_gdx_plus: ^2.1.0 copied to clipboard
Community-maintained Flutter plugin for recording, playing, extracting, and displaying customizable audio waveforms.

Audio Waveforms GDX Plus #
A Flutter package to generate waveforms while recording audio or from audio files. Features gesture controls to scroll through waveforms or seek positions, with extensive customization options.
This community-maintained package continues the original
audio_waveforms project by
Simform Solutions. Original authorship, contributor
credits, and MIT license attribution are preserved.
Preview #

Features #
- Recording: Record audio with customizable encoder settings
- Waveform Display: Visualize audio in real-time during recording
- Playback: Play audio files with waveform visualization
- Gesture Controls: Scroll through waveforms and seek to specific positions
- Customization: Style waveforms with colors, gradients, and various appearance options
- Waveform Extraction: Extract and save waveform data for better performance
Documentation #
See the complete implementation guide for platform setup, recorder and player examples, waveform extraction, customization, advanced usage, and migration guidance.
Installation #
dependencies:
audio_waveforms_gdx_plus: ^2.1.0
Then import the library:
import 'package:audio_waveforms_gdx_plus/audio_waveforms_gdx_plus.dart';
Compatibility #
| Platform | Minimum version |
|---|---|
| Android | API 21 |
| iOS | 13.0 |
| macOS | 10.14 |
The package requires Dart 3.12 or later and Flutter 3.44 or later. Android recording requires microphone permission; iOS and macOS apps must provide a microphone usage description. See the installation guide for full setup.
Usage #
Create a recorder controller and provide it to AudioWaveforms:
final recorderController = RecorderController();
await recorderController.record();
AudioWaveforms(
size: const Size(double.infinity, 64),
recorderController: recorderController,
);
Prepare an audio file and display its waveform with a player controller:
final playerController = PlayerController();
await playerController.preparePlayer(path: audioFilePath);
AudioFileWaveforms(
size: const Size(double.infinity, 64),
playerController: playerController,
);
Dispose controllers when they are no longer needed. The example application and complete documentation cover permissions, playback controls, styling, events, and waveform extraction in detail.
Maintained Package #
audio_waveforms_gdx_plus is a community-maintained continuation of the original Audio Waveforms
project. This repository continues maintenance because the upstream package is no longer actively
maintained. Credit for the original project remains with Simform Solutions and the upstream
contributors listed in the documentation and repository
history.
Feature Requests #
Feature requests and Pull Requests are always welcome.
Need Help? #
Need help with integration, plugin maintenance, consulting, or Flutter development? Visit gurwinderdevx.com to discuss your project.
Maintainer #
Maintained by Gurwinder Singh.
Acknowledgements #
Audio Waveforms was originally created by Simform Solutions. Thank you to the original authors and every upstream contributor whose work forms the foundation of this package.
License #
This project is licensed under the MIT License. See LICENSE, which retains the original Simform Solutions copyright and license notice.