Speechify
L’implémentation vocale de Speechify dans Mastra fournit des fonctionnalités de synthèse vocale au moyen de l’API Speechify.
Exemple d’utilisationLien direct vers Exemple d’utilisation
import { SpeechifyVoice } from '@mastra/voice-speechify'
// Initialize with default configuration (uses SPEECHIFY_API_KEY environment variable)
const voice = new SpeechifyVoice()
// Initialize with custom configuration
const voice = new SpeechifyVoice({
speechModel: {
name: 'simba-3.2',
apiKey: 'your-api-key',
},
speaker: 'harper_32', // Default voice (simba-3.2 serves the curated Simba 3 voices only)
})
// Convert text to speech
const audioStream = await voice.speak('Hello, world!', {
speaker: 'imogen_32', // Override default voice
})
Paramètres du constructeurLien direct vers Paramètres du constructeur
speechModel?:
SpeechifyConfig
= { name: 'simba-english' }
Configuration de la fonctionnalité de synthèse vocale
SpeechifyConfig
name?:
SpeechifyModel
Modèle Speechify à utiliser ('simba-3.2', 'simba-3.0', 'simba-english' ou 'simba-multilingual')
apiKey?:
string
Clé d’API Speechify. Utilise par défaut la variable d’environnement SPEECHIFY_API_KEY
speaker?:
SpeechifyVoiceId
= 'harper_32' pour les modèles Simba 3, sinon 'george'
ID de la voix à utiliser par défaut pour la synthèse vocale. Les modèles Simba 3 ne proposent qu’un ensemble de voix sélectionnées (harper_32, imogen_32, ...) ; les voix du catalogue classique (george, henry, ...) fonctionnent avec simba-english et simba-multilingual
MéthodesLien direct vers Méthodes
speak()Lien direct vers speak
Convertit du texte en parole à l’aide du modèle vocal et de la voix configurés.
input:
string | NodeJS.ReadableStream
Texte à convertir en parole. Si un flux est fourni, il est d’abord converti en texte.
options?:
Options
Options de configuration.
Options
speaker?:
string
Remplace la voix par défaut pour cette requête
model?:
SpeechifyModel
Remplace le modèle par défaut pour cette requête
Renvoie : Promise<NodeJS.ReadableStream>
getSpeakers()Lien direct vers getspeakers
Renvoie un tableau des options de voix disponibles, dans lequel chaque élément contient :
voiceId:
string
Identifiant unique de la voix
name:
string
Nom d’affichage de la voix
language:
string
Code de langue de la voix
gender:
string
Genre de la voix
listen()Lien direct vers listen
Cette méthode n’est pas prise en charge par Speechify et lève une erreur. Speechify ne fournit aucune fonctionnalité de transcription vocale.
RemarquesLien direct vers Remarques
- Speechify nécessite une clé d’API pour l’authentification
- Le modèle par défaut est 'simba-english'
- 'simba-3.2' est le modèle de streaming Speechify le plus récent, celui qui offre la latence la plus faible et la plus grande expressivité ; c’est le modèle recommandé pour l’anglais
- 'simba-3.2' et 'simba-3.0' ne prennent actuellement en charge que l’anglais ; utilisez 'simba-multilingual' pour une entrée dans une autre langue ou mélangeant plusieurs langues
- 'simba-3.2' et 'simba-3.0' ne proposent qu’un ensemble de voix sélectionnées : 'beatrice_32', 'dominic_32', 'edmund_32', 'geffen_32', 'harper_32', 'hugh_32', 'imogen_32', 'wyatt_32'. Les voix du catalogue classique, telles que 'george', provoquent une erreur avec ces modèles
- La voix par défaut dépend du modèle configuré : 'harper_32' pour les modèles Simba 3, sinon 'george'
- La transcription vocale n’est pas prise en charge
- Des options supplémentaires de flux audio peuvent être transmises au moyen du paramètre options de la méthode speak()