pub fn start_mic_capture(
app: AppHandle,
state: State<'_, MicCaptureState>,
pipeline_state: State<'_, MicCaptureHandle>,
mic_id: String,
) -> Result<(), MicError>Expand description
Start the microphone capture worker (M-MIC.1 / AUT-278).
Advances MicLifecycle Idle → Starting and spawns a
MicCapturePipeline. Re-entrant calls while a session is
running cleanly tear down the previous worker (the handle’s
install swap drops the old Pipeline, which drops the gst
child) before starting the new one.
§Errors
Returns MicError::GstFailed when the worker thread can’t
spawn (effectively never happens). gst-side failures (no mic
attached, permission denied, etc.) are reported via the
mic_status snapshot returning to Idle after the worker
thread’s error path runs.