public class TXZTtsManager
extends java.lang.Object
限定符和类型 | 类和说明 |
---|---|
static class |
TXZTtsManager.ITtsCallback
类名:TTS逻辑回调类
类描述:回调包含TTS播报状态:开始、结束、完成、取消、出错,详见
TtsUtil.ITtsCallback |
static interface |
TXZTtsManager.onChangeThemeListener
接口名:TTS主题更新监听器
接口描述:TTS主题更新时回调相关方法
|
static class |
TXZTtsManager.PreemptType
枚举类名:TTS播报类型
枚举类描述:TTS播报时使用,针对不同类型处理方式不同
|
static interface |
TXZTtsManager.TtsCallback
接口名:TTS回调
接口描述:TTS播报任务监听
|
static class |
TXZTtsManager.TtsOption
类名:TTS播报配置选项
类描述:Tts选项,如音量、语速、语调、语言等,推荐使用TTS任务取代
|
static class |
TXZTtsManager.TtsTheme
类名:TTS主题类
类描述:语音TTS主题抽象化类
|
static interface |
TXZTtsManager.TtsTool
接口名:Tts工具实现类
接口描述:需要使用外部TTS工具时,可以实现此接口
|
static class |
TXZTtsManager.VoiceTask
类名:播报任务类
类描述:播报任务类型的封装类,用于播报特殊的任务
适用于特殊场景,如同一个TTS任务中执行多个播报,即播TTS,然后暂停100ms,再播BEEP音,再播报一段音频。
|
限定符和类型 | 字段和说明 |
---|---|
static int |
INVALID_TTS_TASK_ID
常量名:无效的tts任务id
变量描述:无效的tts任务使用此ID
|
限定符和类型 | 方法和说明 |
---|---|
void |
cancelSpeak(int taskId)
方法名:取消播报
方法描述:根据TTS任务ID,强制取消TTS任务
|
void |
enableDownVolumeWhenNav(boolean enable)
方法名:设置导航播报语音时TTS是否降低音量
方法描述:设置导航播报语音时TTS是否降低音量,默认语音与导航共存,根据需求修改,一般推荐修改导航降低音量
|
void |
forceShowTTSChoiceView(boolean enable)
方法名:是否开启TTS主题切换列表显示
方法描述:切换TTS主题时,是否需要展示切换列表,默认展示,不展示时,直接根据TTS 序列号切换
|
static TXZTtsManager |
getInstance()
获取单例
|
TXZTtsManager.TtsTheme[] |
getTtsThemes()
方法名:获取当前TTS主题列表
方法描述:主动获取当前系统支持的同行者语音主题
|
void |
setBeepResources(java.lang.String beepPath)
方法名:设置beep资源路径
方法描述:替换语音默认Beep音,即语音开始录音的“嘟”的一声
文件格式要求PCM:采样率16000,单声道,16位,建议不要超过200ms
|
void |
setBufferTime(int nTime)
方法名:设置TTS播报的缓冲时间
方法描述:设置TTS播报的缓冲时间, 取值范围 0 ~ 15000, 默认值为300, 单位毫秒
由于TTS是合成音,实际应用中系统会因为防POP音等问题造成TTS掉字,通过此方法规避问题
|
void |
setChangeThemeListener(TXZTtsManager.onChangeThemeListener listener)
方法名:设置TTS主题更新监听器
方法描述:设置TTS主题更新监听器,其它因素切换主题时回调此监听器
|
void |
setDefaultAudioStream(int stream)
方法名:设置TTS播报流
方法描述:设置默认的TTS播报音频流,使用AudioManager的STREAM常量,默认使用AudioManager.STREAM_ALARM
|
void |
setReplaceSpeakWord(java.lang.String[] original,
java.lang.String[] replace)
方法名:替换TTS播报文字
方法描述:替换TTS播报文字,实际场景中,部分离线多音字声调可能出现错误。
|
void |
setTtsDelay(long delay)
方法名:设置语音播报TTS延时
方法描述:设置语音播报TTS延时,但只有在需要抢焦点时才会延时,已有焦点时不会延时
|
void |
setTtsModel(java.lang.String ttsModelPath)
方法名:设置TTS模型
方法描述:设置TTS模型路径,不同的模型音色不一样。
|
void |
setTtsThmeme(TXZTtsManager.TtsTheme ttsTheme)
方法名:设置TTS主题
方法描述:手动切换TTS主题,需要提前获取TTS主题实例
|
void |
setTtsTool(TXZTtsManager.TtsTool tool)
方法名:设置TTS播报工具
方法描述:当语音TTS播报工具不满足需求时,可以设置外部TTS工具
|
void |
setVoiceSpeed(int speed)
方法名:设置合成的TTS播放语速
方法描述:设置合成的TTS播放语速,取值范围1-100,数值越大,语速越快,同行者默认值是70
|
int |
speakRes(java.lang.String resId,
java.lang.String text)
方法名:TTS播报
方法描述:通过语音内部资源ID播报,若无对应资源ID,则播报文本
|
int |
speakRes(java.lang.String resId,
java.lang.String[] resArgs,
java.lang.String text)
方法名:TTS播报
方法描述:通过语音内部资源ID播报,若无对应资源ID,则播报文本
|
int |
speakRes(java.lang.String resId,
java.lang.String[] resArgs,
java.lang.String text,
TXZTtsManager.PreemptType type,
TXZTtsManager.ITtsCallback onRun)
方法名:TTS播报
方法描述:通过语音内部资源ID播报,若无对应资源ID,则播报文本
|
int |
speakText(int streamType,
java.lang.String text,
long delay,
TXZTtsManager.PreemptType type,
TXZTtsManager.ITtsCallback callback)
方法名:TTS播报
方法描述:TTS播报方法,可以详细设置TTS任务细节。
|
int |
speakText(int streamType,
java.lang.String text,
TXZTtsManager.PreemptType type,
TXZTtsManager.ITtsCallback callback)
方法名:TTS播报
方法描述:TTS播报方法,可以详细设置TTS任务细节。
|
int |
speakText(java.lang.String text)
方法名:TTS播报
方法描述:TTS播报方法,可以详细设置TTS任务细节。
|
int |
speakText(java.lang.String text,
long delay,
TXZTtsManager.PreemptType type,
TXZTtsManager.ITtsCallback callback)
方法名:TTS播报
方法描述:TTS播报方法,可以详细设置TTS任务细节。
|
int |
speakText(java.lang.String text,
TXZTtsManager.ITtsCallback callback)
方法名:TTS播报
方法描述:TTS播报方法,可以详细设置TTS任务细节。
|
int |
speakText(java.lang.String text,
TXZTtsManager.PreemptType type,
TXZTtsManager.ITtsCallback callback)
方法名:TTS播报
方法描述:TTS播报方法,可以详细设置TTS任务细节。
|
int |
speakVoiceTask(int iStream,
TXZTtsManager.PreemptType type,
TXZTtsManager.VoiceTask[] voiceTasks,
TXZTtsManager.ITtsCallback oRun)
方法名:执行播报任务
方法描述:用来执行一连串的TTS任务
|
int |
speakVoiceTask(int iStream,
TXZTtsManager.VoiceTask[] voiceTasks,
TXZTtsManager.ITtsCallback oRun)
方法名:执行播报任务
方法描述:用来执行一连串的TTS任务
|
int |
speakVoiceTask(TXZTtsManager.PreemptType bPreempt,
TXZTtsManager.VoiceTask[] voiceTasks,
TXZTtsManager.ITtsCallback oRun)
方法名:执行播报任务
方法描述:用来执行一连串的TTS任务
|
int |
speakVoiceTask(TXZTtsManager.VoiceTask[] voiceTasks,
TXZTtsManager.ITtsCallback oRun)
方法名:执行播报任务
方法描述:用来执行一连串的TTS任务
|
public static final int INVALID_TTS_TASK_ID
public static TXZTtsManager getInstance()
public int speakText(int streamType, java.lang.String text, TXZTtsManager.PreemptType type, TXZTtsManager.ITtsCallback callback)
TXZResourceManager.speakTextOnRecordWin(String, boolean, Runnable)
有区别
此方法仅为播报,文本不会显示在语音界面streamType
- 流类型,填写AudioManager.STREAM常量,默认使用AudioManager.STREAM_ALARMtext
- 播报的文本type
- 打断类型callback
- 播报回调public int speakText(int streamType, java.lang.String text, long delay, TXZTtsManager.PreemptType type, TXZTtsManager.ITtsCallback callback)
TXZResourceManager.speakTextOnRecordWin(String, boolean, Runnable)
有区别
此方法仅为播报,文本不会显示在语音界面streamType
- 流类型,填写AudioManager.STREAM常量,默认使用AudioManager.STREAM_ALARMtext
- 播报的文本delay
- 播报延时,在已经获取到焦点时不会延时type
- 打断类型callback
- 播报回调public int speakText(java.lang.String text, TXZTtsManager.PreemptType type, TXZTtsManager.ITtsCallback callback)
TXZResourceManager.speakTextOnRecordWin(String, boolean, Runnable)
有区别
此方法仅为播报,文本不会显示在语音界面text
- 播报的文本type
- 打断类型callback
- 播报回调public int speakText(java.lang.String text, long delay, TXZTtsManager.PreemptType type, TXZTtsManager.ITtsCallback callback)
TXZResourceManager.speakTextOnRecordWin(String, boolean, Runnable)
有区别
此方法仅为播报,文本不会显示在语音界面text
- 播报的文本delay
- 播报延时,在已经获取到焦点时不会延时type
- 打断类型callback
- 播报回调public int speakText(java.lang.String text, TXZTtsManager.ITtsCallback callback)
TXZResourceManager.speakTextOnRecordWin(String, boolean, Runnable)
有区别
此方法仅为播报,文本不会显示在语音界面text
- 播报的文本callback
- 播报回调public int speakText(java.lang.String text)
TXZResourceManager.speakTextOnRecordWin(String, boolean, Runnable)
有区别
此方法仅为播报,文本不会显示在语音界面text
- 播报文本public int speakRes(java.lang.String resId, java.lang.String text)
resId
- 资源IDtext
- 播报文本public int speakRes(java.lang.String resId, java.lang.String[] resArgs, java.lang.String text)
resId
- 资源IDresArgs
- 播报的字符串用用来替换占位符的文本text
- 播报文本public int speakRes(java.lang.String resId, java.lang.String[] resArgs, java.lang.String text, TXZTtsManager.PreemptType type, TXZTtsManager.ITtsCallback onRun)
resId
- 资源IDresArgs
- 播报的字符串用用来替换占位符的文本text
- 播报文本type
- 播报类型onRun
- 播报任务的回调public int speakVoiceTask(TXZTtsManager.VoiceTask[] voiceTasks, TXZTtsManager.ITtsCallback oRun)
voiceTasks
- 播报的具体任务oRun
- 播报任务的回调public int speakVoiceTask(int iStream, TXZTtsManager.VoiceTask[] voiceTasks, TXZTtsManager.ITtsCallback oRun)
iStream
- 播报流voiceTasks
- 播报的具体任务oRun
- 播报任务的回调public int speakVoiceTask(TXZTtsManager.PreemptType bPreempt, TXZTtsManager.VoiceTask[] voiceTasks, TXZTtsManager.ITtsCallback oRun)
bPreempt
- 播报类型voiceTasks
- 播报的具体任务oRun
- 播报任务的回调public int speakVoiceTask(int iStream, TXZTtsManager.PreemptType type, TXZTtsManager.VoiceTask[] voiceTasks, TXZTtsManager.ITtsCallback oRun)
iStream
- 播报流type
- 播报类型voiceTasks
- 播报的具体任务oRun
- 播报任务的回调public void cancelSpeak(int taskId)
taskId
- 需要取消的TTS任务IDpublic void setDefaultAudioStream(int stream)
stream
- 播报流public void setVoiceSpeed(int speed)
speed
- 合成的TTS播放语速public void setTtsModel(java.lang.String ttsModelPath)
ttsModelPath
- TTS模型绝对路径public void setTtsDelay(long delay)
delay
- 延时时间,单位mspublic void setBufferTime(int nTime)
nTime
- 缓冲时间,单位mspublic void setBeepResources(java.lang.String beepPath)
beepPath
- beep音文件路径public void setReplaceSpeakWord(java.lang.String[] original, java.lang.String[] replace)
TXZAsrManager.setRealFictitiousCmds(String, String...)
以更改语音界面显示文本original
- 原始文本数组,根据index对应,replace
- 替换播报的文本数组,根据index对应public void enableDownVolumeWhenNav(boolean enable)
enable
- 是否降低音量public void forceShowTTSChoiceView(boolean enable)
enable
- 是否启用列表显示功能public void setTtsTool(TXZTtsManager.TtsTool tool)
tool
- TTS播报工具public void setTtsThmeme(TXZTtsManager.TtsTheme ttsTheme)
ttsTheme
- TTS主题public void setChangeThemeListener(TXZTtsManager.onChangeThemeListener listener)
listener
- TTS主题更新监听器public TXZTtsManager.TtsTheme[] getTtsThemes()