Usando @capgo/capacitor-speech-synthesis
Plugin Speech Synthesis para convertir texto a voz.
Instalar
bun add @capgo/capacitor-speech-synthesis
bunx cap sync
bunx cap sync copia el code nativo del plugin en tus proyectos nativos. Ejecútalo de nuevo tras cada actualización del plugin.
Importar
import { SpeechSynthesis } from '@capgo/capacitor-speech-synthesis';
API de un vistazo
| Método | Descripción |
|---|---|
speak |
Lee el texto indicado con las opciones especificadas. La locución se añade a la cola de reproducción. |
synthesizeToFile |
Sintetiza la voz en un archivo de audio (solo Android/iOS). Devuelve la ruta del archivo guardado. |
cancel |
Cancela todas las locuciones en cola y detiene la reproducción actual. |
pause |
Pausa la reproducción de voz inmediatamente. |
resume |
Reanuda la voz pausada. |
isSpeaking |
Comprueba si la síntesis de voz está reproduciendo actualmente. |
isAvailable |
Comprueba si la síntesis de voz está disponible en el dispositivo. |
getVoices |
Obtiene todas las voces disponibles. |
getLanguages |
Obtiene todos los idiomas disponibles. |
isLanguageAvailable |
Comprueba si un idioma específico está disponible. |
isVoiceAvailable |
Comprueba si una voz específica está disponible. |
initialize |
Inicializa el motor de síntesis de voz (optimizado para iOS). Esto puede reducir la latencia en la primera petición de voz. |
activateAudioSession |
Activa la sesión de audio con una categoría específica (solo iOS). |
deactivateAudioSession |
Desactiva la sesión de audio (solo iOS). |
Ejemplos
speak()
Lee el texto indicado con las opciones especificadas. La locución se añade a la cola de voz.
import { SpeechSynthesis } from '@capgo/capacitor-speech-synthesis';
const result = await SpeechSynthesis.speak({
text: 'Hello, world!',
language: 'en-US',
rate: 1.0,
pitch: 1.0,
volume: 1.0,
queueStrategy: 'Add'
});
console.log('Utterance ID:', result.utteranceId);
synthesizeToFile()
Sintetiza la voz en un archivo de audio (solo Android/iOS). Devuelve la ruta del archivo donde se guardó el audio.
import { SpeechSynthesis } from '@capgo/capacitor-speech-synthesis';
const result = await SpeechSynthesis.synthesizeToFile({
text: 'Hello, world!',
language: 'en-US'
});
console.log('Audio file saved at:', result.filePath);
cancel()
Cancela todas las locuciones en cola y detiene la voz actual.
import { SpeechSynthesis } from '@capgo/capacitor-speech-synthesis';
await SpeechSynthesis.cancel();
pause()
Pausa la voz inmediatamente.
import { SpeechSynthesis } from '@capgo/capacitor-speech-synthesis';
await SpeechSynthesis.pause();
resume()
Reanuda la voz pausada.
import { SpeechSynthesis } from '@capgo/capacitor-speech-synthesis';
await SpeechSynthesis.resume();
isSpeaking()
Comprueba si la síntesis de voz está reproduciéndose actualmente.
import { SpeechSynthesis } from '@capgo/capacitor-speech-synthesis';
const { isSpeaking } = await SpeechSynthesis.isSpeaking();
console.log('Is speaking:', isSpeaking);
La tabla anterior lista los 14 métodos principales. Los helpers de listener y de versión, y el contrato completo de cada método, están documentados en el repositorio GitHub.
Escuchar eventos
addListener devuelve un handle. Llama handle.remove() cuando la pantalla se desmonte, o SpeechSynthesis.removeAllListeners() para limpiar todos los listeners.
Referencia completa
Continuar desde Usando @capgo/capacitor-speech-synthesis
Si estás usando Usando @capgo/capacitor-speech-synthesis para planificar el trabajo con plugins nativos, conéctalo con @capgo/capacitor-speech-synthesis por los detalles de implementación en @capgo/capacitor-speech-synthesis, Primeros pasos para los detalles de implementación en Primeros pasos, Directorio de plugins de Capgo para el flujo de trabajo del producto en Capgo Plugin Directory, Plugins de Capacitor por Capgo para los detalles de implementación en Capacitor Plugins de Capgo, y Añadir o actualizar plugins para los detalles de implementación al añadir o actualizar plugins.