"use client".
Hooks that play audio (useSound, useSequence, usePatch) do nothing when the nearest SoundProvider is disabled, or when the user prefers reduced motion. They work without a provider, using enabled: true and volume: 1.
SoundProvider
Controls sound for every hook below it.Volume multiplier for every sound,
0 to 1. Multiplied with each sound’s own volume option.Reserved for a future hook that changes the setting from inside the tree. No public API calls it yet; manage
enabled with your own state.useSound
sound, opts and provider state. It returns undefined when playback is skipped.
useSequence
play and stop callbacks for a sequence. play stops any run already in progress before starting.
usePatch
ready: false whose play does nothing. Load errors are swallowed, so the empty patch stays in place.