Type-safe audio element component.
import codes.yousef.summon.components.media.Audio
The Audio component provides a type-safe audio element for playing audio content.
@Composable
fun Audio(
src: String,
autoplay: Boolean = false,
muted: Boolean = false,
loop: Boolean = false,
controls: Boolean = true,
preload: String = "metadata",
ariaLabel: String? = null,
modifier: Modifier = Modifier()
)
| Parameter | Type | Default | Description |
|---|---|---|---|
src | String | Required | URL to the audio file |
autoplay | Boolean | false | Whether to start playing automatically |
muted | Boolean | false | Whether the audio is muted |
loop | Boolean | false | Whether to loop the audio |
controls | Boolean | true | Whether to show playback controls |
preload | String | "metadata" | Preload strategy: "none", "metadata", or "auto" |
ariaLabel | String? | null | Accessibility label for the audio |
modifier | Modifier | Modifier() | Styling modifier for the audio element |
Audio(
src = "https://example.com/audio.mp3",
controls = true
)
Audio(
src = "background.mp3",
autoplay = true,
loop = true,
controls = false
)
Audio(
src = "podcast-episode.mp3",
controls = true,
ariaLabel = "Podcast Episode 42: Introduction to Kotlin"
)
ariaLabel to provide descriptive text for screen readerscontrols = true to allow users to control playback