更新记录
1.0.1(2024-07-18)
1.0.1
- 完善android语音播放.
平台兼容性
App |
快应用 |
微信小程序 |
支付宝小程序 |
百度小程序 |
字节小程序 |
QQ小程序 |
HBuilderX 3.6.11,Android:不确定,iOS:不支持,HarmonyNext:不确定 |
× |
× |
× |
× |
× |
× |
钉钉小程序 |
快手小程序 |
飞书小程序 |
京东小程序 |
鸿蒙元服务 |
× |
× |
× |
× |
× |
H5-Safari |
Android Browser |
微信浏览器(Android) |
QQ浏览器(Android) |
Chrome |
IE |
Edge |
Firefox |
PC-Safari |
× |
× |
× |
× |
× |
× |
× |
× |
× |
fy-tts
开发文档
UTS 语法
UTS API插件
UTS 组件插件
Hello UTS
构造函数OBJECT 参数说明
参数名 |
类型 |
必填 |
说明 |
onStart |
Function |
否 |
发言开始时执行 |
onDone |
Function |
否 |
发言完成时执行 |
onError |
Function |
否 |
发言出错时执行 |
接口事件说明
方法 |
参数 |
返回 |
说明 |
isSuccess |
void |
ResultOptions |
测试TTS初始化是否成功 |
getContentStatus |
void |
Promise |
获取当前tts状态;0未连接,1=连接成功,2连接失败 |
speak |
text: string, uuid?: string |
ResultOptions |
文本合成语音;speak方法有两个参数,一个是text、一个是uuid;其中uuid为当前语句的唯一标识,会在onStart、onDone、onError执行种返回;多次调用speak方法,会自动加入语音合成队列中; |
stop |
void |
ResultOptions |
中断当前话语(无论是播放还是渲染到文件)并丢弃队列中的其他话语。 |
close |
void |
void |
销毁TTS服务 |
getDefaultVoice |
void |
ResultOptions |
返回语音实例,该实例是默认的文本语音转换语言的默认语音。 |
getVoices |
void |
ResultOptions |
向引擎查询可用语音集 |
isSpeaking |
void |
ResultOptions |
检查TTS引擎是否正忙于说话 |
setSpeechRate |
speechRate: Float |
ResultOptions |
设置语音速率; speechRate 语音速率。1.0是正常的语音速率,较低的值会减慢语音(0.5是正常语音速率的一半),较大的值会加速语音(2.0是正常语音率的两倍)。 |
setPitch |
voicePitch: Float |
ResultOptions |
设置音调,值越大声音越尖(女生),值越小则变成男声,1.0是常规 |
setVoice |
voiceName: string |
ResultOptions |
设置文本到语音的语音 |
ResultOptions返回参数说明
参数名 |
类型 |
说明 |
code |
number |
判断是否是成功还是错误。0成功,其他为失败 |
message |
string |
返回调用说明 |
data |
any |
返回的数据 |
例子
<template>
<view class="content">
<view class="">
<button @click="handleStart">开始</button>
<button @click="handleStop">结束</button>
</view>
</view>
</template>
<script>
import { FyTTS } from '@/uni_modules/fy-tts';
let tts = null;
export default {
data() {
return {
title: 'Hello'
}
},
onReady() {
// 实例化tts
tts = new FyTTS({
onStart(uuid) { // 发言开始
console.log(uuid)
},
onDone(uuid) { // 发言完成
console.log(uuid)
},
onError(uuid) { // 发言报错
console.log(uuid)
},
});
},
methods: {
handleStart() {
// tts.speak('你好', [uuid]);
tts.speak('你好');
tts.speak('今天天气真不错!');
},
handleStop() {
// tts.stop();
// 建议使用close销毁
tts.close();
}
}
}
</script>
重点:部分设备可能不支持,建议先调用tts.getContentStatus方法检测后再使用