Audio
The audio module provides audio playback, transport controls, and an fx context for looping and bandpass frequency filters. See the Basic Audio demo for guidance.
Components
function Effect() : JSX.Element
function Provider(props: ProviderProps): JSX.Element
function Seek(props: SeekProps): JSX.Element
function TransformFx(props: TransformFxProps): JSX.Element
Functions
function load(url: string): Promise<AudioBuffer>
function useContext(): Context
Types
type Context = {
audioContext: null | AudioContext
buffer: null | AudioBuffer
fx: Fx
state: State
transport: Transport
}
type Fx = {
hpf?: number
lpf?: number
loop?: Loop
}
type Loop = [number, number]
type SeekProps = {
format?: FormatFn
}
type State = {
pause: boolean
seek: number
timecode: number
}
type Transport = {
play: (seek?: number) => void
stop: (seek?: number) => void
seek: (seek: React.SetStateAction<number>) => void
getSeek: (state: State) => number
}
type ProviderProps = {
audioContext?: AudioContext
buffer: AudioBuffer
children: React.ReactNode
fx?: Fx
}
type TransformFxProps = {
children: React.ReactNode
fn: (fx: Fx) => Fx
}