> Discover all available pages from the documentation index: https://mastra.zisheng.pro/llms.txt # Speechify Mastra 中的 Speechify 语音实现通过 Speechify API 提供文本转语音功能。 ## 使用示例 ```typescript 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 }) ``` ## 构造函数参数 **speechModel** (`SpeechifyConfig`): 文本转语音功能的配置 (Default: `{ name: 'simba-english' }`) **speechModel.name** (`SpeechifyModel`): 要使用的 Speechify 模型('simba-3.2'、'simba-3.0'、'simba-english' 或 'simba-multilingual') **speechModel.apiKey** (`string`): Speechify API key。未设置时使用 SPEECHIFY\_API\_KEY 环境变量 **speaker** (`SpeechifyVoiceId`): 用于语音合成的默认音色 ID。Simba 3 模型仅提供精选音色集(harper\_32、imogen\_32 等);经典音色目录中的音色(george、henry 等)可用于 simba-english 和 simba-multilingual (Default: `Simba 3 模型使用 'harper_32',其他模型使用 'george'`) ## 方法 ### `speak()` 使用已配置的语音模型和音色将文本转换为语音。 **input** (`string | NodeJS.ReadableStream`): 要转换为语音的文本。如果提供流,会先将其转换为文本。 **options** (`Options`): 配置选项。 **options.speaker** (`string`): 为本次请求覆盖默认 speaker **options.model** (`SpeechifyModel`): 为本次请求覆盖默认模型 返回:`Promise` ### `getSpeakers()` 返回可用音色选项的数组,其中每个节点包含: **voiceId** (`string`): 音色的唯一标识符 **name** (`string`): 音色的显示名称 **language** (`string`): 音色的语言代码 **gender** (`string`): 音色的性别 ### `listen()` Speechify 不支持此方法,调用时会抛出错误。Speechify 不提供语音转文本功能。 ## 注意事项 - Speechify 身份验证需要 API key - 默认模型为 'simba-english' - 'simba-3.2' 是 Speechify 最新的 streaming 模型,延迟最低、表现力最丰富,也是推荐用于英语的模型 - 'simba-3.2' 和 'simba-3.0' 目前仅支持英语;对于非英语或混合语言输入,请使用 'simba-multilingual' - 'simba-3.2' 和 'simba-3.0' 仅提供精选音色集:'beatrice\_32'、'dominic\_32'、'edmund\_32'、'geffen\_32'、'harper\_32'、'hugh\_32'、'imogen\_32'、'wyatt\_32'。在这些模型上使用 'george' 等经典目录音色会返回错误 - 默认 speaker 取决于配置的模型:Simba 3 模型使用 'harper\_32',其他模型使用 'george' - 不支持语音转文本功能 - 可以通过 speak() 方法的 options 参数传递其他音频流选项