Available audio input devices
Discard recorded media
Recording duration in seconds
Error message if any
Initialize devices and request permissions
Selected media type
Pause recording
Live media stream for preview
Preview URL for recorded blob
Recorded blob (available after stop)
Reset to idle state
Resume recording
Save the recorded clip (upload to S3)
Selected audio device ID
Selected video device ID
Set media type (audio/video)
Set selected audio device
Set selected video device
Start recording. Pass startAt (a performance.now() timestamp)
to delay the actual MediaRecorder.start() call until that
wall-clock — useful when you want the encoder's t=0 to line up
with another scheduled event (e.g. existing-clip playback). The
preview stream is acquired immediately regardless so device
indicators come up right away.
Current recorder state
Stop recording
Available video input devices
Result of useClipRecorder hook.