flutter_gapless_loop library
Flutter plugin for true sample-accurate gapless audio looping on iOS.
Primary entry point is LoopAudioPlayer.
Quick Start
import 'package:flutter_gapless_loop/flutter_gapless_loop.dart';
final player = LoopAudioPlayer();
await player.loadFromFile('/absolute/path/to/loop.wav');
await player.play();
// ... later
await player.dispose();
Classes
- AmplitudeEvent
- Real-time audio amplitude (level) emitted by LoopAudioPlayer.amplitudeStream.
- BpmResult
- The result of BPM/tempo detection on a loaded audio file.
- CompressorSettings
- Dynamic-range compressor settings.
- CutoffFilterSettings
- Settings for a single-pole cutoff (low-pass or high-pass) filter.
- EffectsPreset
- A snapshot of all active DSP effect settings, for save/restore.
- EqSettings
- 3-band equaliser settings.
- InterruptionEvent
- An audio interruption event (phone call, Siri, focus loss).
- LoopAudioMaster
- A static group-bus controller for all live LoopAudioPlayer instances.
- LoopAudioPlayer
- A player for sample-accurate gapless audio looping on iOS, Android, macOS, and Windows.
- LoopPoints
- A pair of A-B loop points set by LoopAudioPlayer.saveLoopPointA / LoopAudioPlayer.saveLoopPointB.
- LoopSyncGroup
- Provides sample-accurate simultaneous control of multiple LoopAudioPlayer instances.
- MetronomeMaster
- A static group-bus controller for all live MetronomePlayer instances.
- MetronomePlayer
- A sample-accurate metronome that pre-generates a single-bar PCM buffer and loops it on the native hardware scheduler.
- NowPlayingInfo
- Metadata for the iOS MPNowPlayingInfoCenter and Android media notification.
- RemoteCommandEvent
- An event from the remote command center (lock screen, headphones, CarPlay).
- RouteChangeEvent
- Carries the reason for an audio route change from the native layer.
- SilenceRegion
- A contiguous region of silence detected in the loaded audio file.
- SpectrumData
- Real-time FFT spectrum data emitted by LoopAudioPlayer.spectrumStream.
Enums
- ExportFormat
- Output format for LoopAudioPlayer.exportToFile.
- FilterType
- Filter type for the cutoff filter.
- InterruptionType
- Whether an audio interruption began or ended.
- PlayerState
- Playback state of the LoopAudioPlayer.
- RemoteCommand
- Commands that can be received from the lock screen, headphones, CarPlay, or Android notification.
- ReverbPreset
- Built-in reverb room presets.
- RouteChangeReason
- Describes why an audio route change occurred (e.g. headphones unplugged).