Vai alla sezione principale

Repository di riconoscimento vocale __CAPGO_KEEP_0__

GitHub

Puoi utilizzare la nostra configurazione assistita dall'IA per installare il plugin. Aggiungi le Capgo abilità al tuo strumento di AI utilizzando il seguente comando:

Finestra del terminale
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Poi utilizza la seguente richiesta:

Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-speech-recognition` plugin in my project.

Se preferisci l'installazione manuale, installa il plugin eseguendo i seguenti comandi e segui le istruzioni specifiche per la piattaforma riportate di seguito:

Finestra del terminale
bun add @capgo/capacitor-speech-recognition
bunx cap sync
import { SpeechRecognition } from '@capgo/capacitor-speech-recognition';

Verifica se il servizio di riconoscimento vocale nativo è utilizzabile sul dispositivo corrente.

import { SpeechRecognition } from '@capgo/capacitor-speech-recognition';
await SpeechRecognition.available();

Verifica se il percorso di riconoscimento on-device più recente è disponibile per la selezione di lingua.

Questo è il controllo di capacità che dovresti utilizzare prima di abilitare useOnDeviceRecognition. A true il risultato significa che il dispositivo, la versione del sistema operativo e la lingua attuali possono utilizzare il percorso on-device più recente per quella piattaforma.

Restituisce false quando il dispositivo supporta solo il percorso di riconoscimento legacy.

Documentazione del SDK della piattaforma: iOS: Speech Android:

import { SpeechRecognition } from '@capgo/capacitor-speech-recognition';
await SpeechRecognition.isOnDeviceRecognitionAvailable();

Inizia a captare l'audio e a trascrivere la parlata.

Quando partialResults è true, la promessa restituita si risolve immediatamente e gli aggiornamenti sono inoltrati attraverso il partialResults listener fino a quando la sessione non termina.

La cartella predefinita mantiene il comportamento del riconoscitore legacy per compatibilità con il passato. Passa useOnDeviceRecognition: true solo dopo aver verificato .

import { SpeechRecognition } from '@capgo/capacitor-speech-recognition';
await SpeechRecognition.start();

Interrompe l'ascolto e smonta le risorse native.

import { SpeechRecognition } from '@capgo/capacitor-speech-recognition';
await SpeechRecognition.stop();

Interrompe forzatamente la sessione corrente.

Sul sistema Android, si tenta prima di fermare normalmente e poi si ricade sulla distruzione/riconfigurazione dopo timeout. Sul sistema iOS, la sessione corrente viene interrotta immediatamente.

Se è presente un trascrittore parziale memorizzato, viene emesso attraverso il partialResults listener con forced: true.

import { SpeechRecognition } from '@capgo/capacitor-speech-recognition';
await SpeechRecognition.forceStop();

Ottiene il risultato della trascrizione parziale memorizzato.

import { SpeechRecognition } from '@capgo/capacitor-speech-recognition';
await SpeechRecognition.getLastPartialResult();

Aggiorna lo stato attuale del pulsante di parola a richiesta.

Usa questo insieme con continuousPTT o con un flusso di attesa personalizzato.

import { SpeechRecognition } from '@capgo/capacitor-speech-recognition';
await SpeechRecognition.setPTTState({} as PTTStateOptions);

Ottenere le locuzioni supportate dal riconoscitore sottostante.

I dispositivi Android 13+ non espongono più questa lista; in quel caso languages è vuoto.

import { SpeechRecognition } from '@capgo/capacitor-speech-recognition';
await SpeechRecognition.getSupportedLanguages();

Restituisce se il plugin sta attivamente ascoltando la voce.

import { SpeechRecognition } from '@capgo/capacitor-speech-recognition';
await SpeechRecognition.isListening();

Ottiene lo stato di autorizzazione corrente.

import { SpeechRecognition } from '@capgo/capacitor-speech-recognition';
await SpeechRecognition.checkPermissions();

Richiede le autorizzazioni per il microfono + riconoscimento vocale.

import { SpeechRecognition } from '@capgo/capacitor-speech-recognition';
await SpeechRecognition.requestPermissions();
export interface SpeechRecognitionAvailability {
available: boolean;
}

Configura come il riconoscitore si comporta quando si chiama .

export interface SpeechRecognitionStartOptions {
/**
* Locale identifier such as `en-US`. When omitted the device language is used.
*/
language?: string;
/**
* Maximum number of final matches returned by native APIs. Defaults to `5`.
*/
maxResults?: number;
/**
* Prompt message shown inside the Android system dialog (ignored on iOS).
*/
prompt?: string;
/**
* When `true`, Android shows the OS speech dialog instead of running inline recognition.
* Defaults to `false`.
*/
popup?: boolean;
/**
* Emits partial transcription updates through the `partialResults` listener while audio is captured.
*/
partialResults?: boolean;
/**
* Enables native punctuation handling where supported (iOS 16+).
*/
addPunctuation?: boolean;
/**
* Opt in to the platform's newer on-device recognition path when available.
*
* On iOS 26+, this uses Apple's `SpeechAnalyzer` / `SpeechTranscriber` pipeline.
* On recent Android versions, this uses the on-device `SpeechRecognizer` path.
*
* It is intentionally opt-in so existing apps keep the legacy flow unless they choose
* to roll out the new behavior.
*
* Use {@link SpeechRecognitionPlugin.isOnDeviceRecognitionAvailable} before enabling it in production.
*
* Platform SDK docs:
* iOS: [Speech](https://developer.apple.com/documentation/speech),
* [SpeechAnalyzer](https://developer.apple.com/documentation/speech/speechanalyzer),
* [SpeechTranscriber](https://developer.apple.com/documentation/speech/speechtranscriber)
* Android: [SpeechRecognizer](https://developer.android.com/reference/android/speech/SpeechRecognizer)
*
* Defaults to `false`.
*/
useOnDeviceRecognition?: boolean;
/**
* Allow a number of milliseconds of silence before splitting the recognition session into segments.
* Required to be greater than zero and currently supported on Android only.
*/
allowForSilence?: number;
/**
* EXPERIMENTAL: Keep a PTT session alive across silence by restarting recognition while the button stays held.
*
* This restart behavior is implemented for Android inline recognition and iOS native recognition.
*/
continuousPTT?: boolean;
}
export interface SpeechRecognitionMatches {
matches?: string[];
}

Opzioni per .

export interface ForceStopOptions {
/**
* Android only: timeout in milliseconds before forcing stop via destroy/recreate.
*
* On iOS, the current session is stopped immediately and this value is ignored.
*
* Defaults to `1500`.
*/
timeout?: number;
}

Risultato da .

export interface LastPartialResult {
/**
* Whether a partial result is currently cached.
*/
available: boolean;
/**
* The most recent transcript text known to the native recognizer.
*/
text: string;
/**
* All current match alternatives when available.
*/
matches?: string[];
}

Opzioni per .

export interface PTTStateOptions {
/**
* Whether the PTT button is currently held.
*/
held: boolean;
}
export interface SpeechRecognitionLanguages {
languages: string[];
}
export interface SpeechRecognitionListening {
listening: boolean;
}

Mappa di permessi restituita da checkPermissions e requestPermissions.

export interface SpeechRecognitionPermissionStatus {
speechRecognition: PermissionState;
}

Sollevato ogni volta che viene prodotto un risultato segmentato (solo Android).

export interface SpeechRecognitionSegmentResultEvent {
matches: string[];
}

Sollevato ogni volta che viene prodotta una trascrizione parziale.

export interface SpeechRecognitionPartialResultEvent {
/**
* Current recognition matches when the native recognizer reports them.
*
* This can be omitted for forced or accumulated-only payloads.
*/
matches?: string[];
/**
* Accumulated transcription from earlier continuous PTT cycles.
*/
accumulated?: string;
/**
* Final accumulated text including the current result.
*/
accumulatedText?: string;
/**
* `true` when the plugin is restarting recognition inside a continuous PTT session.
*/
isRestarting?: boolean;
/**
* `true` when the payload was emitted by `forceStop()`.
*/
forced?: boolean;
}

Avviato quando lo stato di ascolto cambia.

export interface SpeechRecognitionListeningEvent {
/**
* Finite state of the recognition session.
*/
state?: ListeningFiniteState;
/**
* Unique identifier for the current listening session.
*/
sessionId?: number;
/**
* Why this state transition occurred.
*/
reason?: ListeningReason;
/**
* Error code when the transition is caused by an error.
*/
errorCode?: string;
/**
* Backward-compatible binary state used by earlier releases.
*/
status?: 'started' | 'stopped';
}

Questa pagina è generata dal plugin. src/definitions.ts Riavvia la sincronizzazione quando i dati pubblici API cambiano nell'area upstream.

Se stai utilizzando Iniziare per pianificare il dashboard e le API operazioni, connettilo con Usando @capgo/capacitor-riconoscimento-parole per la capacità nativa in Usando @capgo/capacitor-riconoscimento-parole, Panoramica di API per il dettaglio di implementazione in Panoramica di API, Introduzione per il dettaglio di implementazione in Introduzione, Chiavi di API per il dettaglio di implementazione in Chiavi di API, e Dispositivi per il dettaglio di implementazione in Dispositivi.