#header-mark#
TextToSpeech 文本转语音
TextToSpeech组件为Panel带来文本转语音功能,它封装了HTML5 SpeechSynthesis API和HTML SpeechSynthesisUtterance API。
底层实现为panel.widgets.TextToSpeech
,参数基本一致,参考文档:https://panel.holoviz.org/reference/widgets/TextToSpeech.html
基本用法
文本转语音组件可以将文本转换为语音并播放出来。请注意,该组件本身在视觉上不显示任何内容,但仍需添加到应用程序中才能使用。
自动播放
当auto_speak
设置为true时(默认值),每当value
更改时,都会自动播放语音。
语音参数调整
可以通过设置lang
、pitch
、rate
和volume
参数来调整语音的特性。
长文本示例
TextToSpeech组件可以处理较长的文本内容。
API
属性
属性名 | 说明 | 类型 | 默认值 |
---|---|---|---|
value | 将在发声时合成的文本 | string | — |
auto_speak | 值更改时是否自动发声 | boolean | true |
lang | 语音的语言 | string | — |
voice | 用于发声的语音 | SpeechSynthesisVoice | — |
pitch | 语音的音调,0到2之间的数字 | float | 1 |
rate | 语音的速度,0.1到10之间的数字 | float | 1 |
volume | 语音的音量,0到1之间的数字 | float | 1 |
speak | 发声动作 | boolean | false |
cancel | 取消所有待发声的语音 | boolean | false |
pause | 暂停语音合成 | boolean | false |
resume | 恢复语音合成 | boolean | false |
voices | 当前设备上可用的所有语音列表 | List[Voice ] | [] |
paused | 语音合成是否处于暂停状态 | boolean | false |
pending | 语音队列中是否有尚未发声的语音 | boolean | false |
speaking | 当前是否正在发声 | boolean | false |
name | 组件标题 | string | — |
Events
事件名 | 说明 | 类型 |
---|---|---|
change | 当组件状态改变时触发 | Callable |
Controls
src/examples/panel_vuepy/widgets/TextToSpeech