华为云函数调用百度ai sdk实现语音合成

news/2024/11/17 6:38:03/

使用云函数调用百度ai开放平台的各种sdk
云函数环境为 nodejs12.13如果不会创建 参考之前的博客
本文介绍语音合成的使用



注册百度ai开放平台语音合成应用

进入百度ai开放平台控制台 找到语音技术 创建应用

语音合成有免费次数 放心使用

图片.png

图片.png

图片.png

在应用列表获取
AppID
API Key
Secret Key

图片.png

本地准备

参考官方文档 https://cloud.baidu.com/doc/SPEECH/s/Zk4nlz8c8

安装SDK

本地新建空目录
图片.png

打开cmd 进入目录
执行
npm install baidu-aip-sdk

图片.png

新建voi.js文件 配置语音合成

图片.png

var AipSpeechClient = require("baidu-aip-sdk").speech;// 设置APPID/AK/SK
var APP_ID = "你的 App ID";
var API_KEY = "你的 Api Key";
var SECRET_KEY = "你的 Secret Key";// 新建一个对象,建议只保存一个对象调用服务接口
const client = new AipSpeechClient(APP_ID, API_KEY, SECRET_KEY);module.exports = client

配置index.js文件

新建index.js文件 将云函数index.js内容复制进来
图片.png

引入语音合成

const client = require("./voi.js")

接收参数

let vois = event.queryStringParameters.vois;

完整代码

const client = require("./voi.js")
exports.handler = async (event, context, callback) => {let vois = event.queryStringParameters.vois;let result = await client.text2audio(vois, {spd: 5, per: 4});let mpfile = "";if(result.data){mpfile = result.data.toString("base64");}else{mpfile = result;}let response={'statusCode': 200,'headers':{'Content-Type': 'audio/mpeg'},'isBase64Encoded': true,'body': `${mpfile}`,}callback(null, response);
}

完成后打zip压缩包上传代码

创建触发器

图片.png

图片.png

测试

图片.png

图片.png

拓展

我们也可以改变语速 语调 音量 和 声音
图片.png

拓展代码如下

其实就是将这几个可变的 以参数形式传入

其中 合成的语句为必须 其他的如果不传入 就会按默认执行

const client = require("./voi.js")
exports.handler = async (event, context, callback) => {let vois = event.queryStringParameters.vois;let spd = event.queryStringParameters.spd;let pit = event.queryStringParameters.pit;let vol = event.queryStringParameters.vol;let per = event.queryStringParameters.per;let result = await client.text2audio(vois, {spd,pit,vol,per});let mpfile = "";if(result.data){mpfile = result.data.toString("base64");}else{mpfile = result;}let response={'statusCode': 200,'headers':{'Content-Type': 'audio/mpeg'},'isBase64Encoded': true,'body': `${mpfile}`,}callback(null, response);
}

测试拓展

只传入合成语句

图片.png

降低语速

图片.png

结语

参照语音合成 我们一样可以调用 图像识别 下篇 云函数调用图像识别

文章来源: https://bbs.huaweicloud.com/blogs,作者:代码哈士奇,版权归原作者所有,如需转载,请联系作者。

原文链接:https://bbs.huaweicloud.com/blogs/250511


http://www.ppmy.cn/news/475145.html

相关文章

快速集成华为AGConnect认证服务-Rest Api

大部分的应用都需要对用户的业务访问进行身份认证,以便为用户提供个性化体验。但是端到端完整构建一套用户认证系统会面临很多挑战。认证服务可以为应用快速构建安全可靠的用户认证系统,开发者只需在应用中访问认证服务的相关能力,而不需要关…

ma5822是什么设备_【华为SmartAX MA5822 10G PON ONU设备 8口/16口/24口宽带语音】价格_厂家_图片 -Hc360慧聪网...

SmartAX MA5818 、MA5821/MA5822、MA5898是华为公司推出的 10G PON 多业务接入设备,主要应用于FTTB、FTTC 建设场景。 该系列产品支持 10G PON 上行,同时兼容现网的 PON 网络,实现由PON 到 10G PON 的平滑升级,满足未来发展超宽带的容量扩展需求。 关键特性 10G PON 上行:…

Golang 实现华为云 DMS 签名

构造请求 首先构造请求,也就是要对哪个具体接口进行访问,需要提供什么必要的参数。在构造请求(点击查看中可以看到,对 DMS 服务来说必要的请求构成包括以下部分 请求URI,例如 https://dms.cn-north-1.myhuaweicloud.c…

研究9—华为工程师

801软件王”阮强胜:50岁,我还在编码 http://xinsheng.huawei.com/cn/index.php?appforum&modDetail&actindex&id4002759 802在华为“想做超前一点的事情”,可能吗 http://xinsheng.huawei.com/cn/index.php?appforum&mo…

如何使用参数化查询提高Cypher查询的性能

本文分享自华为云社区《使用参数化查询提高Cypher查询的性能:以华为云图引擎GES为例》,作者: 蜉蝣与海。 在DBMS中,参数化查询被视为一种有效预防SQL注入攻击的手段。华为云图引擎GES提供对gremlin和cypher查询语言的参数化查询支…

2023 华为 Datacom-HCIE 真题题库 09/12--含解析

单项选择题 1.[试题编号:190485] (单选题)华为交换机MAC地址表的老化时间默认是多少秒? A、500 B、5 C、300 D、400 答案:C 解析:无 2.[试题编号:190484] (单选题)如图所示,路由器的所有接口开启OSPF协议,链路的Cost值如图中标识,R2的Loopback0接口通告在区域1据…

2023 华为 Datacom-HCIE 真题题库 06/12--含解析

多项选择 1.[试题编号:190185] (多选题)如图所示,PE1和PE2之间通过Loopback0接口建立MP-BGP邻居关系,在配置完成之后,发现CE1和CE2之间无法互相学习路由,以下哪些项会导致该问题出现? A、PE1或PE2未在BGP-VPNv4单播地址族视图使能邻居 B、PE1与PE2之间的LSP隧道未建立…

【华为云会议开发指南】App ID鉴权介绍

为了降低第三方应用集成华为云会议难度,并且提升开放接口的安全性,华为云会议开放能力中支持基于App ID的鉴权方式。App ID是一个应用的标识,同一个App ID可以同时在第三方的桌面终端、移动终端、Web应用上使用。 App ID鉴权原理 图1 第三方…