Playable Waveform Pane
Playback-aware waveform visualization component for JavaFX.
Renders audio amplitude data as a two-pass waveform split at the current playback position: bars before progressProperty use playedColorProperty and bars after use waveformColorProperty. A playhead vertical line is drawn at the split position when progress > 0. While amplitude data is being computed asynchronously, a shimmer animation sweeps left-to-right to indicate loading state.
Mouse interaction supports click-to-seek and drag-to-scrub. Visual position updates immediately on press and drag; a SeekEvent fires on mouse release with the final seek ratio clamped to 0.0, 1.0. progressProperty is not mutated during drag.
Consumers bind progressProperty to their player's current time and register a SeekEvent.SEEK handler to relay seek commands to the player.
Properties
Functions
Loads the given waveform asynchronously. A shimmer animation starts immediately; it stops and the waveform is drawn when amplitude data arrives.