【简介】

文本转语音可使用语音合成标记语言 (SSML) 将输入文本转换为类似人类的合成语音,本篇文档主要介绍了如何通过JavaScript 的语音SDK实现文本转换为语音的实践操作

【前期文章】

【Microsoft Azure 的1024种玩法】一.一分钟快速上手搭建宝塔管理面板
【Microsoft Azure 的1024种玩法】二.基于Azure云平台的安全攻防靶场系统构建
【Microsoft Azure 的1024种玩法】三.基于Azure云平台构建Discuz论坛
【Microsoft Azure 的1024种玩法】四. 利用Azure Virtual machines 打造个人专属云盘,速度吊打某云盘
【Microsoft Azure 的1024种玩法】五.基于Azure Cloud Shell 一站式创建Linux VM
【Microsoft Azure 的1024种玩法】六.使用Azure Cloud Shell对Linux VirtualMachines 进行生命周期管理
【Microsoft Azure 的1024种玩法】七.Azure云端搭建部署属于自己的维基百科
【Microsoft Azure 的1024种玩法】八. 基于Azure云端轻松打造一款好用的私有云笔记
【Microsoft Azure 的1024种玩法】九. Microsoft Azure云端轻松构建部署PostgreSQL数据库
【Microsoft Azure 的1024种玩法】十. 基于Azure App Service 快速上手部署 ASP.NET Web 应用
【Microsoft Azure 的1024种玩法】十一.手动对Azure磁盘进行IOPS性能压力测试
【Microsoft Azure 的1024种玩法】十二. 使用Auzre cloud 安装搭建docker+vulhub靶场
【Microsoft Azure 的1024种玩法】十三.Azure cloud|带你快速搭建DVWA靶场漏洞环境
【Microsoft Azure 的1024种玩法】十四.Azure DNS 在线域名委托解析操作指南
【Microsoft Azure 的1024种玩法】十五.通过Web浏览器对Auzre VM 服务器运维管理
【Microsoft Azure 的1024种玩法】十六.Cobaltstrike内网渗透工具在Azure Cloud中的部署使用
【Microsoft Azure 的1024种玩法】 十七.在Microsoft Azure上动手搭建专属私有文件同步服务]
【Microsoft Azure 的1024种玩法】 十八.快速创建Microsoft Azure SQL数据库初体验
【Microsoft Azure 的1024种玩法】 十九.使用Azure备份服务对虚拟机快速备份
【Microsoft Azure 的1024种玩法】 二十.Azure Multi-Factor Authentication多因素验证最佳实战
【Microsoft Azure 的1024种玩法】 二十一.利用Azure Blob Service 快速实现静态网站托管
【Microsoft Azure 的1024种玩法】 二十二.中国区Azure Cloud 多重身份验证最佳实践
【Microsoft Azure 的1024种玩法】 二十三.快速上手Azure Content Delivery Network 内容分发网络
【Microsoft Azure 的1024种玩法】二十四.通过Azure Front Door 的 Web 应用程序防火墙来对 OWASP TOP 10 威胁进行防御
【Microsoft Azure 的1024种玩法】 二十五.使用Azure CDN对Azure Blob 静态托管站点进行加速
【Microsoft Azure 的1024种玩法】二十六. 在Azure VM中手动部署Windows Admin Center管理平台
【Microsoft Azure 的1024种玩法】二十七. Azure Virtual Desktop虚拟桌面之快速创建配置(一)
【Microsoft Azure 的1024种玩法】二十八. 基于Azure Cloud搭建IPS入侵防御系统实现安全流量实时分析
【Microsoft Azure 的1024种玩法】二十九.基于Azure VM快速实现网络入侵检测 (IDS) 及网络安全监视 (NSM)
【Microsoft Azure 的1024种玩法】三十. 使用Azure Data Studio之快速上手连接管理Azure SQL 数据库(一)
【Microsoft Azure 的1024种玩法】三十一.使用Azure Logic App 创建基于计划定期执行邮件发送的自动化工作流
【Microsoft Azure 的1024种玩法】三十二. 利用 AzCopy来对Azure Blob Storage中的数据进行复制迁移
【Microsoft Azure 的1024种玩法】三十三.十分钟快速部署 Azure Kubernetes Service 群集
【Microsoft Azure 的1024种玩法】三十四.将本地数据文件快速迁移到Azure Blob云存储最佳实践
【Microsoft Azure 的1024种玩法】三十五.在Azure Virtual machines中手动部署Java Web
【Microsoft Azure 的1024种玩法】三十六.通过网络文件系统NFS协议快速将Blob 存储挂在Azure Virtual machines中
【Microsoft Azure 的1024种玩法】三十七.通过Azure Virtual Machines实现远程连接本地内网服务器(内网穿透)
【Microsoft Azure 的1024种玩法】三十八.通过Azure Function App函数应用实现对Azure Virtual Machines定时开关机
【Microsoft Azure 的1024种玩法】三十九.使用Auzre Media Services实现在线实时视频直播
【Microsoft Azure 的1024种玩法】四十.快速将阿里云DNS解析平滑迁移至Azure Zone实战操作
【Microsoft Azure 的1024种玩法】四十一. 将Windows Admin Center 网关注册到 Azure
【Microsoft Azure 的1024种玩法】四十二. 通过Windows Admin Center快速创建Azure Virtual Machines
【Microsoft Azure 的1024种玩法】四十三. 基于Azure云平台构建RTMP直播服务
【Microsoft Azure 的1024种玩法】四十五.在Azure中快速创建Azure AD Domain Services
【Microsoft Azure 的1024种玩法】四十六.将 Azure VM 实例添加到Azure AD Domain Service中
【Microsoft Azure 的1024种玩法】四十七.通过Azure Virtual machines搭建FTP应用服务
【Microsoft Azure 的1024种玩法】四十八.基于Azure Virtual Machines快速搭建SQL Server应用
【Microsoft Azure 的1024种玩法】四十九.在Azure中使用Azure VirtualMachines 搭建Microsoft SharePoint 2016
【Microsoft Azure 的1024种玩法】五十. 通过Azure文件共享将Azure File 挂载到本地机器实现文件实时共享
【Microsoft Azure 的1024种玩法】五十一.在Azure Virtual Machines 上装载 SMB Azure 文件共享
【Microsoft Azure 的1024种玩法】五十二.基于Azure Application Insight对Web应用进行实时链路跟踪
【Microsoft Azure 的1024种玩法】五十三.针对Azure Application Insight监控的应用程序指标配置不同维度的自动化报警通知
【Microsoft Azure 的1024种玩法】五十四. 十分钟快速上手创建部署Azure speech服务
【Microsoft Azure 的1024种玩法】五十五.Azure speech service之通过JavaScript快速实现文本转换为语音

【操作步骤】

一.配置语音 SDK集成环境

  1. 通过如下命令下载安装语音服务中的JavaScript SDK包
yarn add microsoft-cognitiveservices-speech-sdk


2.同时创建一个“yuyin“的目录以及一个”index.js"的文件(主要用于编写speech-sdk代码)

二.配置调试语音服务SDK

1.将以下代码复制到我们创建的index.js当中:

(function() {"use strict";var sdk = require("microsoft-cognitiveservices-speech-sdk");var readline = require("readline");var key = "YourSubscriptionKey";var region = "YourServiceRegion";var audioFile = "YourAudioFile.wav";const speechConfig = sdk.SpeechConfig.fromSubscription(key, region);const audioConfig = sdk.AudioConfig.fromAudioFileOutput(audioFile);// The language of the voice that speaks.speechConfig.speechSynthesisVoiceName = "en-US-JennyNeural"; // Create the speech synthesizer.var synthesizer = new sdk.SpeechSynthesizer(speechConfig, audioConfig);var rl = readline.createInterface({input: process.stdin,output: process.stdout});rl.question("Enter some text that you want to speak >\n> ", function (text) {rl.close();// Start the synthesizer and wait for a result.synthesizer.speakTextAsync(text,function (result) {if (result.reason === sdk.ResultReason.SynthesizingAudioCompleted) {console.log("synthesis finished.");} else {console.error("Speech synthesis canceled, " + result.errorDetails +"\nDid you set the speech resource key and region values?");}synthesizer.close();synthesizer = null;},function (err) {console.trace("err - " + err);synthesizer.close();synthesizer = null;});console.log("Now synthesizing to: " + audioFile);});
}());

2.并在index.js 中,将 YourSubscriptionKey 替换为语音资源密钥,将 YourServiceRegion 替换为语音资源区域。

(function() {"use strict";var sdk = require("microsoft-cognitiveservices-speech-sdk");var readline = require("readline");var key = "e68024063a4f74be08902ac71329082e6"; // 语音资源密钥var region = "EastUS";                        // 语音资源地域var audioFile = "YourAudioFile.wav";          // 语音资源文件const speechConfig = sdk.SpeechConfig.fromSubscription(key, region);const audioConfig = sdk.AudioConfig.fromAudioFileOutput(audioFile);// The language of the voice that speaks.speechConfig.speechSynthesisVoiceName = "en-US-JennyNeural";// Create the speech synthesizer.var synthesizer = new sdk.SpeechSynthesizer(speechConfig, audioConfig);var rl = readline.createInterface({input: process.stdin,output: process.stdout});rl.question("Enter some text that you want to speak >\n> ", function (text) {rl.close();// Start the synthesizer and wait for a result.synthesizer.speakTextAsync(text,function (result) {if (result.reason === sdk.ResultReason.SynthesizingAudioCompleted) {console.log("synthesis finished.");} else {console.error("Speech synthesis canceled, " + result.errorDetails +"\nDid you set the speech resource key and region values?");}synthesizer.close();synthesizer = null;},function (err) {console.trace("err - " + err);synthesizer.close();synthesizer = null;});console.log("Now synthesizing to: " + audioFile);});
}());

替换完毕以后如图所示

三.使用Node将语音合成到文件

1.在Vscode终端中,执行node程序,开始将语音合成到文件:

node.exe SpeechSynthesis.js

执行完毕后,如下图所示:

2.我们按照如下步骤打开我们语音合成的文件

3.如下图所示,我们就可以直接打开听一下我们语音合成的文件,至此,我们就成功使用语音合成的SDK成功合成了一个语音文件了

【Microsoft Azure 的1024种玩法】五十五.Azure speech service之通过JavaScript快速实现文本转换为语音相关推荐

  1. 【Microsoft Azure 的1024种玩法】十五.通过Web浏览器对Auzre VM 服务器运维管理

    [简介] Apache Guacamole是无客户端远程桌面网关.它支持标准协议,例如VNC,RDP和SSH.我们称其为无客户端,因为不需要插件或客户端软件.多亏了HTML5,在服务器上安装了鳄梨调味 ...

  2. 【Microsoft Azure 的1024种玩法】二十七. Azure Virtual Desktop虚拟桌面之快速创建配置(一)

    [简介] Azure 虚拟桌面是在云中运行的桌面和应用虚拟化服务,我们可以通过Azure 的虚拟桌面设置多会话 Windows 11 或 Windows 10操作系统的 部署,使整个 Windows ...

  3. 【Microsoft Azure 的1024种玩法】六.使用Azure Cloud Shell对Linux VirtualMachines 进行生命周期管理...

    [文章简介] Azure Cloud Shell 是一个用于管理 Azure 资源的.可通过浏览器访问的交互式经验证 shell. 它使用户能够灵活选择最适合自己工作方式的 shell 体验,本篇文章 ...

  4. 【Microsoft Azure 的1024种玩法】四. 利用Azure Virtual machines 打造个人专属云盘,速度吊打某云盘...

    [简介] 1.Azure Virtual machines是Azure 提供的多种可缩放按需分配计算资源之一,Nextcloud是一款开源免费的私有云存储网盘项目,可以让你快速便捷地搭建一套属于自己或 ...

  5. 【Microsoft Azure 的1024种玩法】七十四.五分钟在Azure Virtual Machines中快速部署一套软件项目管理及自动构建工具

    [简介] Apache Maven由 Apache 软件基金会所提供的一个软件项目管理及自动构建工具,Maven 为开发者提供了一套完整的构建生命周期框架.开发团队几乎不用花多少时间就能够自动完成工程 ...

  6. 【Microsoft Azure 的1024种玩法】五十. 通过Azure文件共享将Azure File 挂载到本地机器实现文件实时共享

    [简介] Azure 文件是 Microsoft 推出的易用云文件系统. Azure 文件共享可以在 Windows 和 Windows Server 中无缝使用. 本文介绍如何通过Azure文件共享 ...

  7. 【Microsoft Azure 的1024种玩法】四十五.在Azure中快速创建Azure AD Domain Services

    [简介] Azure Active Directory (Azure AD) 是一种基于云的标识和访问管理服务. Azure Active Directory 可帮助相关企业访问内部资源,例如企业 I ...

  8. 【Microsoft Azure 的1024种玩法】五十四. 十分钟快速上手创建部署Azure speech服务

    [简介] Azure语音服务是Microsoft提供稳定可靠的云通信服务,其在单个 Azure 订阅中统合了语音转文本.文本转语音以及语音翻译功能,我们可以通过各种方式(语音 CLI.语音 SDK.S ...

  9. 【Microsoft Azure 的1024种玩法】五十九.基于Azure云平台快速搭建GitLab应用实现代码托管

    [简介] GitLab是由GitLab Inc.开发,一款基于Git的完全整合的软体开发平台,以 Git 作为代码管理工具并实现自托管的 Git 项目仓库,本篇文章主要介绍如何在Azure Virtu ...

  10. 【Microsoft Azure 的1024种玩法】二十六. 在Azure VM中手动部署Windows Admin Center管理平台

    [简介] Windows Admin Center是微软开发的一套可以部署在本地基于浏览器的GUI的工具集平台,其平台可用于管理Windows相关服务器和PC机器,我们可以利用Windows Admi ...

最新文章

  1. elementui如何在input 框中搜索_在 Windows 10 中的文件资源管理器中删除搜索历史记录...
  2. linux 日志按大小切割_nginx入门详解(六)- 日志切割
  3. 2018第九届山东省ACM省赛
  4. 一等奖60万,首届“唱圆”杯AI翻译大赛报名中
  5. Norton企业版防毒服务器
  6. hp 1020 无线打印服务器,HP1020plus无线打印
  7. 超定方程组最小二乘matlab,超定方程组最优解(最小二乘解)推导
  8. git的使用以及gitgub的使用(Git)
  9. java云笔记_java版云笔记(一)
  10. 解决Can not add resource (com.android.aaptcompiler.ParsedResource@a980fbb) to table
  11. P1629 邮递员送信-dijkstra+反向建边
  12. 数学运算符“异或”的妙用
  13. 设计模式之过滤器模式(摘自菜鸟驿站)
  14. 套现15亿离场后,共享单车王者出现,账户资金高达200亿!
  15. 企业邮箱免费版好用吗?申请收费的企业邮箱要多少钱?
  16. 【报告分享】 2020年快手手机行业数据价值报告-磁力数观(附下载)
  17. 如何判断浏览器(别人那里看来的,可用)
  18. PR2 Simulator 安装过程中遇到的一些问题。
  19. 07_Ensemble Learning and Random Forests_Bagging_Out-of-Bag_Random Forests_Extra-Trees极端随机树_Boosting
  20. 191药交易医药行业投融资资讯(11.25--11.29)

热门文章

  1. 高通源代码 Ubuntu14.04下载编译Android(1)
  2. 陈玉琴答问: 经络按摩与敲胆经(转载)
  3. Redis单线程模型
  4. C语言-排序中的快速排序(简称快排)
  5. texlive2020 安装_texlive测试是否安装成功
  6. 【IoT】产品组合投资地图:如何将产品战略与执行联系起来?
  7. uni-app 开发微信小程序定位
  8. CHKRecovery(文件删除还原工具)v3.3.0绿色版
  9. 全国教师计算机职称考试题库,全国信息技术教师考试题库及答案(2016最新版)
  10. C/C++二维数组指针(指向二维数组的指针)详解