Picovoice Wordmark
Start Free
Introduction
Introduction
AndroidC.NETiOSLinuxmacOSNode.jsPythonRaspberry PiWebWindows
AndroidC.NETiOSNode.jsPythonWeb
SummaryPicovoice picoLLMGPTQ
Introduction
AndroidCiOSLinuxmacOSPythonRaspberry PiWebWindows
AndroidCiOSPythonWeb
Introduction
AndroidC.NETFlutteriOSJavaLinuxmacOSNode.jsPythonRaspberry PiReactReact NativeWebWindows
AndroidC.NETFlutteriOSJavaNode.jsPythonReactReact NativeWeb
SummaryPicovoice LeopardAmazon TranscribeAzure Speech-to-TextGoogle ASRGoogle ASR (Enhanced)IBM Watson Speech-to-TextWhisper Speech-to-Text
FAQ
Introduction
AndroidC.NETFlutteriOSJavaLinuxmacOSNode.jsPythonRaspberry PiReactReact NativeWebWindows
AndroidC.NETFlutteriOSJavaNode.jsPythonReactReact NativeWeb
SummaryPicovoice CheetahAzure Real-Time Speech-to-TextAmazon Transcribe StreamingGoogle Streaming ASRMoonshine StreamingVosk StreamingWhisper.cpp Streaming
FAQ
Introduction
AndroidC.NETiOSLinuxmacOSNode.jsPythonRaspberry PiWebWindows
AndroidC.NETiOSNode.jsPythonWeb
SummaryAmazon PollyAzure TTSElevenLabsOpenAI TTSPicovoice OrcaChatterbox-TTS-TurboKokoro-TTSKitten-TTS-Nano-0.8-INT8Pocket-TTSNeu-TTS-Nano-Q4-GGUFPiper-TTSSoprano-TTSSupertonic-TTS-2ESpeak-NG
Introduction
AndroidCiOSLinuxmacOSPythonRaspberry PiWebWindows
AndroidCiOSPythonWeb
SummaryPicovoice KoalaMozilla RNNoise
Introduction
AndroidCiOSLinuxmacOSNode.jsPythonRaspberry PiWebWindows
AndroidCNode.jsPythoniOSWeb
SummaryPicovoice EaglepyannoteSpeechBrain
Introduction
AndroidCiOSLinuxmacOSPythonRaspberry PiWebWindows
AndroidCiOSPythonWeb
SummaryPicovoice FalconAmazon TranscribeAzure Speech-to-TextGoogle Speech-to-Textpyannote
Introduction
AndroidArduinoCChrome.NETEdgeFirefoxFlutteriOSJavaLinuxmacOSMicrocontrollerNode.jsPythonRaspberry PiReactReact NativeSafariWebWindows
AndroidC.NETFlutteriOSJavaMicrocontrollerNode.jsPythonReactReact NativeWeb
SummaryPicovoice PorcupineSnowboyPocketSphinx
Wake Word TipsFAQ
Introduction
AndroidArduinoCChrome.NETEdgeFirefoxFlutteriOSJavaLinuxmacOSMicrocontrollerNode.jsPythonRaspberry PiReactReact NativeSafariWebWindows
AndroidC.NETFlutteriOSJavaMicrocontrollerNode.jsPythonReactReact NativeWeb
SummaryPicovoice RhinoGoogle DialogflowAmazon LexIBM WatsonMicrosoft LUIS
Expression SyntaxFAQ
Introduction
AndroidArduinoC.NETiOSLinuxmacOSMicrocontrollerNode.jsPythonRaspberry PiWebWindows
AndroidC.NETiOSMicrocontrollerNode.jsPythonWeb
SummaryPicovoice CobraWebRTC VADSilero VAD
FAQ
Introduction
AndroidCiOSLinuxmacOSPythonRaspberry PiWebWindows
AndroidCiOSPythonWeb
Introduction
AndroidC.NETFlutteriOSNode.jsPythonReact NativeWeb
AndroidC.NETFlutteriOSNode.jsPythonReact NativeWeb
Introduction
C.NETNode.jsPython
C.NETNode.jsPython
FAQGlossary

Cheetah Speech-to-Text
React API

API Reference for the Cheetah React SDK (npmjs).


useCheetah()

function useCheetah(): {
result: {
transcript: string;
isComplete?: boolean;
} | null;
isLoaded: boolean;
isListening: boolean;
error: Error | null;
init: (
accessKey: string,
model: CheetahModel,
options?: CheetahOptions
) => Promise<void>;
start: () => Promise<void>;
stop: () => Promise<void>;
release: () => Promise<void>;
}

React Hook for Cheetah speech-to-text engine.

Returns

  • result Object | null : Any newly-transcribed speech and a flag indicating if a transcription is complete.
  • result.transcript string : A string value representing newly-transcribed speech. If none is available, an empty string is returned.
  • result.isComplete boolean | undefined : A flag representing whether the current result represents an endpoint (a chunk of audio after an utterance without any speech in it).
  • isLoaded boolean : A state indicating whether the engine is initialized successfully.
  • isListening boolean : A state indicating whether the webVoiceProcessor is passing audio to the engine.
  • error Error | null : An Error object containing details about the error.
  • init (...) => Promise<void> : A method to initialize Cheetah given the arguments. See init.
  • start (...) => Promise<void> : A method to start recording and processing audio. See start.
  • stop () => Promise<void> : A method to stop recording and processing audio. See stop.
  • release () => Promise<void> : Releases resources acquired by useCheetah. See release.

init()

async function init(
accessKey: string,
model: CheetahModel,
options: CheetahOptions = {},
): Promise<void>

Initializes useCheetah hook. Sets isLoaded to true.

Parameters

  • accessKey string : AccessKey obtained from Picovoice Console.
  • model CheetahModel : Object containing Cheetah model.
  • options CheetahOptions : Optional configuration arguments.

start()

async function start(): Promise<void>

Start recording and processing audio. If started, isListening is set to true.

stop()

async function stop(): Promise<void>

Stop recording and processing audio. Sets isListening to false.

release()

function release(): Promise<void>

Releases resources acquired by the useCheetah.

Was this doc helpful?

Issue with this doc?

Report a GitHub Issue
Cheetah Speech-to-Text React API
  • useCheetah()
  • init()
  • start()
  • stop()
  • release()
© 2019-2026 Picovoice Inc.PrivacyTerms