阿里云语音合成TTS nodejs sdk接入示例

复制代码
npm i @alicloud/pop-core -S

实例化客户端

复制代码
// 官方文档:https://help.aliyun.com/document_detail/72153.html?spm=a2c4g.94737.0.0.2457323fp1TvWy#554cde703a4xl
const RPCClient = require('@alicloud/pop-core').RPCClient
const ttsClient = new RPCClient({
    accessKeyId: 'xxx', // 阿里云申请
    accessKeySecret: 'xxx', // 阿里云申请
    endpoint: 'http://nls-meta.cn-shanghai.aliyuncs.com/',
    apiVersion: '2019-02-28'
})

Copy

接口

复制代码
router.get('/get/tts/url', async (req, res) => {
    // 获取token
    // 官方文档:https://help.aliyun.com/document_detail/72153.html?spm=a2c4g.94737.0.0.2457323fp1TvWy#554cde703a4xl
    let token;
    if(req.cookies.tts_token) {
        token = req.cookies.tts_token
    } else {
        const result = await ttsClient.request('CreateToken')
        if(result.ErrCode) {
            console.error(result)
        } else {
            token = result.Token.Id
            res.cookie('tts_token', token, { expires: new Date(result.Token.ExpireTime * 1000) })
        }
    }
    // RESTful API
    // 官方文档:https://help.aliyun.com/document_detail/94737.html?spm=a2c4g.450255.0.0.3d044919tDgkvd
    const url = `https://nls-gateway-cn-shanghai.aliyuncs.com/stream/v1/tts?appkey=xxx&token=${token}&text=${req.query.text}&format=wav&sample_rate=16000&voice=aida`
    // 转换成音频输出
    https.get(url, (response) => {
        res.setHeader('Content-Type', 'audio/mpeg')
        response.pipe(res)
    })
})

Copy

前端调用

复制代码
const ttsAudio = new Audio()
ttsAudio.src = `http://localhost/get/tts/url?text=${encodeURI('你好,世界')}`
ttsAudio.play()
ttsAudio.onended = function () {
  // ...
}
相关推荐
weixin_446260851 分钟前
《从零开始构建智能体》—— 实践与理论结合的智能体入门指南
人工智能
新加坡内哥谈技术8 分钟前
Claude 代理技能:从第一性原理出发的深度解析
人工智能
长空任鸟飞_阿康15 分钟前
FastAPI 入门指南
人工智能
Pyeako19 分钟前
机器学习之KNN算法
人工智能·算法·机器学习
Mxsoft61920 分钟前
我发现知识图谱节点关系缺失致诊断不准,自动关系抽取补全救场
人工智能
可信计算27 分钟前
【算法随想】一种基于“视觉表征图”拓扑变化的NLP序列预测新范式
人工智能·笔记·python·算法·自然语言处理
爱笑的眼睛1137 分钟前
超越剪枝与量化:下一代AI模型压缩工具的技术演进与实践
java·人工智能·python·ai
音元系统1 小时前
现行析音法
语音识别·语音合成·输入法·语音分析·语音系统
雨大王5121 小时前
工业生产执行系统(MES)在汽车制造行业的应用案例
运维·人工智能
数据堂官方账号1 小时前
AI赋能工业4.0:数据堂一站式数据服务加速制造智能化落地
人工智能·机器人·数据集·人机交互·数据采集·数据标注·工业制造