npm init -y

初始化项目

main.js

npm install http
npm install querystring
var http = require('http');        // 通过http模块访问百度的接口
var querystring = require('querystring');    // 处理请求参数的querystring模块
var fs = require('fs');      // fs模块,用来保存语音文件
var path = require('path');    // path模块,处理路径var postData = querystring.stringify({"lan": "zh",    // zh表示中文"ie": "UTF-8",  // 字符编码"spd": 4,      // 表示朗读的语速,9代表最快,1是最慢"text": "乐响起,人生的假面舞会开始,哪面才是真我。荒诞学家有他浮夸独特的审美,唱着歌踏着舞步在这扭曲的世界,去揭露形形色色的假面。欢乐面具下的人是真实在笑吗?恶魔面具下是真实恐怖的人吗?伪装在自己梦里,虚伪的当着小丑。当面具被荒诞学家揭开,营造的美梦被现实取代,才会认清自己。"
});var options = {"method": "GET","hostname": "tts.baidu.com","path": "/text2audio?" + postData
};// 调用http模块的request方法请求百度接口var req = http.request(options, function (res) {var chunks = [];res.on("data", function (chunk) {chunks.push(chunk);  // 获取到的音频文件数据暂存到chunks里面});res.on("end", function () {// 这里用到了Buffer模块,大概意思就是把获取到的语音文件流存入到body里面,body是一个Buffervar body = Buffer.concat(chunks);// 生成的mp3文件存储的路径,文件名叫做iloveu.mp3var filePath = path.normalize('./iloveu.mp3');// fs模块写文件fs.writeFileSync(filePath, body);});
});req.end();

运行 node main.js
即可看到音频文件

=========

还可以调取系统的语音API,这个时候需要安装一个依赖

npm install iconv-lite

test.js

const { exec } = require('child_process');
const iconv = require('iconv-lite');exec(`powershell.exe Add-Type -AssemblyName System.speech; $speak = New-Object System.Speech.Synthesis.SpeechSynthesizer; $speak.Rate = 3; $speak.Speak([Console]::In.ReadLine()); exit`)
.stdin.end(iconv.encode('其实根本没有什么和平分手,在那之前总会经历“争吵、冷战、无视、陌生”所谓的和平只是表象,伏尔泰说,在雪崩的时候,没有一片雪花想要承认,自己是雪崩的罪魁祸首。就像海水慢慢退潮,像月亮落下山头,像一种症状的逐渐消退,都是一样的', 'gbk'));

运行 node test.js 就可以听到系统的语音了。

参考文章

  • https://www.jianshu.com/p/35254e144b8e?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation
  • https://biebu.xin/2018/01/16/Windows%E5%B9%B3%E5%8F%B0Node-js%E5%AE%9E%E7%8E%B0%E6%96%87%E6%9C%AC%E8%BD%AC%E8%AF%AD%E9%9F%B3TTS/

NodeJS 实现文字转语音相关推荐

  1. 文字转语音(jacob)

    近期项目中出现在离线情况下文字转语音的需求 经过尝试发现jacob还不错 注:只适用于windows系统环境 以下为开发记录: 1.pom.xml中引入jacob.jar <dependency ...

  2. input限制文字个数但是输入中文时会被切断_Python文字转换语音,让你的文字会「说话」抠脚大汉秒变撒娇萌妹...

    APP 也有文字转换为语音的功能,虽然听起来很别扭,但是基本能解决长辈们看不清文字或者眼睛疲劳,通过文字转换为语音来获取信息. 我们用 Python 能否实现文字转语音呢,可以的,百度有个语音接口,可 ...

  3. python语音转文字源码_【python3】Python十行代码搞定文字转语音

    都是copy的百度SDK文档,简单说说怎么用. 1.没安装Python的参见此文:Python学习笔记系列 1 --安装调试Python开发软件 2.win+r输入cmd打开命令行,输入:pip in ...

  4. python 文字转语音

    python 文字转语音 pip3 install pywin32 pip install pyttsx3 import pyttsx3 def text_to_vocie(sentence,file ...

  5. springboot文字转语音(jacob)

    近期项目中出现在离线情况下文字转语音的需求 进过尝试返现jacob还不错 一下为开发记录: 1.pom.xml中引入jacob.jar <dependency><groupId> ...

  6. 文字转语音引擎未就绪_5个文字转语音网站,其中最强堪比真人发音

    下面给出一些常用的文字转语音网站,感兴趣的可自己尝试,我生成好的语音在文章末尾. 语音合成背后是机器学习等技术 淘金阁视频配音在线生成 本质上是依托阿里云语音合成技术. 生成语音后,点击旁边下载配音, ...

  7. python 文字语音朗读-python 利用pyttsx3文字转语音过程详解

    这篇文章主要介绍了python 利用pyttsx3文字转语音过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 # -*- coding: ut ...

  8. 这是一个神奇的文字转语音软件

    文字转语音软件其实还蛮多的,如果我们将手头上的文字转换成语音的形式,这样方便收听和接收,倒也是一个很不错的主意,那么怎么把文字转换成语音呢?下面小编带着大家一起学习一下文字转语音软件的使用方法! 具体 ...

  9. 真人语音朗读软件_才知道,手机还自带文字转语音功能,一键按下便可实现,网友:赞...

    下面我们来说说关于手机,电脑上的文字转语音方法,如果你也感兴趣的,那就一起来看看吧! 一.手机自带 1.华为手机 其实华为手机就自带了文字转语音功能,只要将手机打开之后,点击[设置]-[智能辅助]-[ ...

最新文章

  1. Python 中的模块简介及应用
  2. 方便的图片修改Sql代码
  3. 多线程的等待唤醒机制
  4. fshc模块fsch2mcu_if理解
  5. 小米路由器R1D改造记录-安装MIXBOX
  6. 新丰机器人_韶关新丰:智能巡检开启配电网运维新模式
  7. 大白话理解可达性分析算法
  8. MUI框架常用代码段
  9. CCF推荐网络流量分析分类论文汇总Network traffic analysis and classification
  10. 安全中心服务器已关闭啥意思,启用windows安全中心服务是什么意思,windows安全中心服务关闭方法...
  11. 请教一个能在WinPE环境下获取系统相关信息的代码
  12. 58金融客服电话--24小时全国统一服务热线
  13. python PyQt5程序运行界面无响应
  14. 数据结构与算法之美笔记-链表(Linked list)
  15. 基于Python技术的营养信息管理系统
  16. 问题 A: 【二维数组】计算三阶行列式的值
  17. Word怎么生成目录?4个方法快速生成目录!
  18. amber分子动力学模拟干货总结
  19. 数影周报:程序员离职后锁公司硬盘;Salesforce 遭遇高管离职潮
  20. Android跳过手机App的启动广告之李跳跳使用指南

热门文章

  1. cissp证书含金量如何(hcip证书含金量高吗)
  2. 三角函数sin cos tan和弧度,度等定义及其相关
  3. linux内核分析课程笔记(二)
  4. MySQL数据库优化笔记
  5. DD Course-02: Prompt 的构建——图像的作品类型(只用改两三个单词就能打开的无限可能)...
  6. matlab pcode 单步运行,[转载]Matlab中的profile工具
  7. PHP base64转换成图片
  8. android+为辅助功能添加说明,了解如何使用辅助功能在 Outlook 中导航
  9. Jenkins:项目持续集成管理
  10. 支持markdown的服务器,Algernon:支持Lua,Markdown,HTTP/2的全功能Web服务器