争渡语音开放接口(ZDOPENTTSAPI)是将争渡读屏使用的语音接口开放出来,从而可以让用户根据自己的喜好来开发自己的语音插件。 通过争渡语音开放接口,用户可将自己喜欢的语音库作出插件从而供争渡读屏调用。
ZDOpenTTSAPI 只有接口定义,不包含具体实现。争渡读屏(http://www.zdsr.net/)不对第三方语音插件做任何保证。
API为32位dll,路径为
{pf}\zdsr\common\opentts\{pluginname}\{pluginname}.dll
备注:opentts
目录下要求存在pluginname
文件夹,并且该文件夹内存在pluginname.dll
文件,该插件才会被加载。
- 名称: 争渡语音开放接口(ZDOpenTTSAPI)
- 版本: 1
- 需要实现的方法如下:
1.初始化语音接口
BOOL WINAPI InitTTS(int openTTSVersion)
参数:
[in] int openTTSVersion: 读屏要求的版本号,对比本接口版本号,若不同,则返回失败
返回值:
FALSE:失败
TRUE:成功
2.获取角色数量
int WINAPI GetVoiceCount()
返回值:
int: 角色数量
3.获取指定角色的名称
void WINAPI GetVoiceName(int vid, WCHAR* voiceName)
参数:
[in] int vid: 角色序号
[out] WCHAR* voiceName 返回角色名称,Unicode
返回值: void
4.设置语音引擎参数
void SetParam(int type,int value)
参数:
[in] int type : 参数类型 0: 角色序号 1: 语速 2: 音量 3: 音高 4: 声卡 5: 数字读法
[in] int value: 值 角色序号0-N;语速,音量,音高均为0--100;声卡0-N;数字读法0-1
返回值: void
备注:不支持的参数实现时可忽略
5.获取朗读状态
BOOL WINAPI IsSpeaking()
返回值:
TRUE 正在朗读
FALSE 停止朗读
6.获取是否引擎控制数字读法
BOOL WINAPI IsControlNumricType()
返回值:
TRUE 支持数字数值读法控制
FALSE 不支持数字数值读法控制
7.朗读文本
void WINAPI Speak(WCHAR* text)
参数:
[in] WCHAR* text: 要朗读的文本,Unicode
返回值: void
8.停止朗读
void WINAPI Stop()
返回值: void
9.暂停朗读
void WINAPI Pause()
返回值: void
10.恢复朗读
void WINAPI Resume()
返回值: void
11.打开引擎设置
void WINAPI OpenSettings()
返回值: void
12.额外配置
争渡读屏在送入语音接口朗读之前,会对文本做必要的格式化处理,如果争渡读屏对文本的处理会影响到插件语音的朗读效果,则可以使用该配置文件来进行修正。
- 约定的配置文件名称为:
{pluginname}.ini
- 存放到插件所在目录
- 必须保存为unicode(utf-16LE)格式
- 参考格式如下:
[Settings]
novocalchar= ;替换发音字符,缺省为空格
filterchars= ;读屏标点方案设置为不发音,而该引擎会发音的标点符号串