VISUAL STYLES

All 6 Visualization Styles

Choose the perfect style for your content

Classic Bars bars
data-waveform-style="bars"
data-bar-width="4"
data-bar-spacing="1"
SoundCloud Style mirror
data-waveform-style="mirror"
data-bar-width="1"
data-samples="400"
Oscilloscope line
data-waveform-style="line"
data-samples="200"
LED Meter blocks
data-waveform-style="blocks"
data-bar-width="3"
data-bar-spacing="1"
Circular Dots dots
data-waveform-style="dots"
data-bar-width="2"
data-bar-spacing="2"
Simple Seekbar seekbar
data-waveform-style="seekbar"
FEATURES

Professional Features

Everything you need for a complete audio experience

System Integration Media Session

Shows on lock screens, media keys work, bluetooth controls supported

Keyboard Controls

Try: Space (play), ←→ (seek), ↑↓ (volume), M (mute), 0-9 (position)

Speed Control

Perfect for podcasts and audiobooks. Click speed button to adjust.

BPM Detection

Automatic tempo detection for rhythmic content

Chapter Markers

Add clickable markers for navigation through content

Album Artwork

Display album covers alongside your player

INTERACTIVE

Programmatic Control

Control players with JavaScript API

External Controls

const player = WaveformPlayer.getInstance('controlled-player');
player.play();
player.pause();
player.seekToPercent(0.5);
player.setVolume(0.5);

Event Tracking

Play Count 0
Total Time 0s
Completion 0%
Waiting for events...

Dynamic Loading

ADVANCED

Advanced Features

Power user features for complex implementations

Pre-generated Waveforms

Generate waveform data server-side for instant display without processing

// Generate once on server
const waveformData = await WaveformPlayer.generateWaveformData('audio.mp3', 200);

// Use cached data for instant display
new WaveformPlayer('#player', {
    url: 'audio.mp3',
    waveform: waveformData  // No client-side processing!
});
Instant waveform display
Server-side caching
Works with protected audio
Reduces mobile processing

Timestamp Navigation

Create clickable timestamps in your content

Multiple Players

Manage multiple players with single-play mode

Playing one automatically pauses others (single-play mode enabled by default)

CUSTOMIZATION

Color Themes

Match your brand with custom colors

Spotify Green
YouTube Red
Twitter Blue
GitHub Dark
Instagram Purple
Minimal White