WaveformStyle
Sealed class representing different waveform visualization styles.
Each style can be customized with its own parameters to achieve various visual effects.
Available Styles
Bar - Classic vertical bars (default)
Spike - Thin spikes like SoundCloud
Line - Smooth connected line graph
Mirrored - Symmetric bars above and below center
Filled - Filled area under the waveform
Example Usage
// Default bar style
AudioWaveform(
amplitudes = amplitudes,
style = WaveformStyle.Bar()
)
// SoundCloud-like spikes
AudioWaveform(
amplitudes = amplitudes,
style = WaveformStyle.Spike(width = 1.dp, spacing = 2.dp)
)
// Mirrored for recording visualization
AudioWaveform(
amplitudes = amplitudes,
style = WaveformStyle.Mirrored()
)Content copied to clipboard
Inheritors
Types
Link copied to clipboard
data class Bar(val width: Dp = 3.dp, val spacing: Dp = 2.dp, val cornerRadius: Dp = 1.5.dp, val alignment: WaveformAlignment = WaveformAlignment.Center, val minHeight: Dp = 2.dp) : WaveformStyle
Classic vertical bar visualization.
Link copied to clipboard
data class Filled(val smoothing: Float = 0.3f, val alignment: WaveformAlignment = WaveformAlignment.Bottom) : WaveformStyle
Filled area visualization.
Link copied to clipboard
data class Spike(val width: Dp = 2.dp, val spacing: Dp = 1.dp, val cap: StrokeCap = StrokeCap.Round, val alignment: WaveformAlignment = WaveformAlignment.Center) : WaveformStyle
Thin spike visualization similar to SoundCloud.