使用@capgo/capacitor-speech-synthesis
用于将文本转换为语音的语音合成插件。
安装
bun add @capgo/capacitor-speech-synthesis
bunx cap sync
bunx cap sync 将插件的本机code复制到您的本机项目中。每次升级插件后都需要重新运行。
Import
import { SpeechSynthesis } from '@capgo/capacitor-speech-synthesis';
API概览
| 方法 | 功能描述 |
|---|---|
speak |
使用指定选项朗读给定的文本。该发言被添加到语音队列中。 |
synthesizeToFile |
仅限 Android/iOS,合成语音到音频文件(返回音频文件的保存路径)。 |
cancel |
取消所有排队的发言并停止当前语音。 |
pause |
立即暂停语音。 |
resume |
恢复暂停的语音。 |
isSpeaking |
检查语音合成是否正在说话。 |
isAvailable |
检查设备上是否支持语音合成。 |
getVoices |
获取所有可用的语音。 |
getLanguages |
获取所有可用的语言。 |
isLanguageAvailable |
检查是否支持特定的语言。 |
isVoiceAvailable |
检查是否支持特定的语音。 |
initialize |
初始化语音合成引擎(iOS优化)。这可以减少首次语音请求的延迟。 |
activateAudioSession |
激活特定类别的音频会话(iOS仅限)。 |
deactivateAudioSession |
停用音频会话(iOS仅限)。 |
示例
speak()
播放指定文本的语音(iOS优化)。
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()
语音合成示例
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()
播放指定文本的语音(iOS和Android)。
import { SpeechSynthesis } from '@capgo/capacitor-speech-synthesis';
await SpeechSynthesis.cancel();
pause()
取消所有排队的语音和停止当前语音。
import { SpeechSynthesis } from '@capgo/capacitor-speech-synthesis';
await SpeechSynthesis.pause();
resume()
立即暂停语音。
import { SpeechSynthesis } from '@capgo/capacitor-speech-synthesis';
await SpeechSynthesis.resume();
isSpeaking()
恢复暂停的语音。
import { SpeechSynthesis } from '@capgo/capacitor-speech-synthesis';
const { isSpeaking } = await SpeechSynthesis.isSpeaking();
console.log('Is speaking:', isSpeaking);
检查语音合成是否正在播放。 上表列出了14个核心方法。监听器和版本辅助,以及每个方法的完整契约,均在GitHub仓库中文档化。.
监听事件
addListener 返回一个句柄。调用 handle.remove() 当屏幕卸载时,或者 SpeechSynthesis.removeAllListeners() 清除每个监听器。
完整参考
继续使用 @capgo/capacitor-speech-synthesis
如果您正在使用 使用 @capgo/capacitor-speech-synthesis 来规划原生插件工作,连接它 @capgo/capacitor-语音合成 为 @capgo/capacitor-语音合成 的实现细节 开始使用 为开始使用的实现细节 Capgo 插件目录 为Capgo 插件目录中的产品工作流程 Capacitor 由 Capgo 提供的插件 为Capacitor 由 Capgo 提供的插件的实现细节 添加或更新插件 为添加或更新插件的实现细节