讯飞语音JavaWeb语音合成解决方案

简介: 在线语音合成 将文字信息转化为声音信息,给应用配上“嘴巴”。我们提供了众多极具特色的发音人(音库)供您选择。其合成音在音色、自然度等方面的表现均接近甚至超过了人声。这种语音合成体验,达到了真正可商用的标准 讯飞的语音合成还是很牛P的,不但有基础发音人,还有精品发音人、特色发音人、明星发音人,当然你如果有特殊要求还可以定制。

9

在线语音合成

将文字信息转化为声音信息,给应用配上“嘴巴”。我们提供了众多极具特色的发音人(音库)供您选择。其合成音在音色、自然度等方面的表现均接近甚至超过了人声。这种语音合成体验,达到了真正可商用的标准

讯飞的语音合成还是很牛P的,不但有基础发音人,还有精品发音人、特色发音人、明星发音人,当然你如果有特殊要求还可以定制。

这里我们选择基础发音人做简单的JavaWeb集成测试,因为其他选项还要申请,想想还是算了,等流程走通再说。

平台环境

JDK1.7、Tomcat8、Eclipse、讯飞JDK、win+ffmpeg(测试)、Linux+Docker+ffmpeg(生产)

说明:讲真,Win平台下ffmpeg安装使用还是很轻松的,直接下载压缩包免安装,JAVA直接调用执行命令即可。Linux下各种依赖编译能把你的小机器跑死,并且还各种编译错误,然后就果断使用了Docker,唯一头疼的是,这个环境真干净,各种命令不支持,当然这也是Docker的优点。

流程图

讯飞语音合成.png

Web集成

讯飞为我们提供了简单的SDK,科大讯飞MSC开发指南-Java。当然,前提你要有一个讯飞的账号,注册、创建应用什么的这里就不赘述了,只要最后能获取到一个APP_ID就可以。

Win+ffmpeg(测试)

  • 讯飞语音合成需要动态链接库支持,根据自己的系统把msc64.dll或者msc32.dll放到指定的目录,可以使用System.getProperty("java.library.path")查看,放置到任意目录即可。
  • 根据自己的系统下载对应的ffmpeg,解压即可,直接调用bin目录下的ffmpeg.exe即可。-

Linux+Docker+ffmpeg(生产)

获取ffmpeg镜像

docker pull jrottenberg/ffmpeg

创建并运行容器

docker run -it --name app_ffmpeg -p 8080:8080 -v /home/app_ffmpeg/:/mnt/app/  --entrypoint='bash' jrottenberg/ffmpeg

注意:Docker容器中,各种yum、wget以及vim是不存在的,所以大都数配置通过宿机获取然后同步复制到容器中。

安装配置JDK

甲骨文给弄的必须认证下载了,这里我们自行下载并手动上传到/home/app_ffmpeg目录下。

# 复制配置文件到宿机
docker cp 4f131c866092:/etc/profile  /home/app_ffmpeg/

编辑profile,追加以下配置

#set java environment
JAVA_HOME=/mnt/app/jdk1.7.0_80
JRE_HOME=/mnt/app/jdk1.7.0_80/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH
# 复制配置文件到容器
docker cp /home/app_ffmpeg/profile 4f131c866092:/etc/

进入容器,生效配置

# 进入容器
docker exec -it app_ffmpeg  bash
# 使配置生效
source /etc/profile
# 检查JDK是否安装成功
java -version

安装配置Tomcat

如果tomcat启动卡主不动

找到jdk1.x.x_xx/jre/lib/security/java.security文件,在文件中找到securerandom.source这个设置项,将其改为:

securerandom.source=file:/dev/./urandom

如果tomcat输出中文乱码

locale
locale -a
LANG=C.UTF-8  (有的是zh_CN.UTF-8,不过我在本地没发现这种编码)
source /etc/profile

配置讯飞动态库

根据自己的系统版本,分别把libmsc32.so 或者 libmsc64.so 上传到/lib/ 和 /lib64/ 目录。

开源项目

https://gitee.com/52itstyle/xufei_msc

演示地址

http://xunfei.52itstyle.com/xufei_msc/

目录
相关文章
|
11天前
|
机器学习/深度学习 自然语言处理 API
如何使用阿里云的语音合成服务(TTS)将文本转换为语音?本文详细介绍了从注册账号、获取密钥到编写Python代码调用TTS服务的全过程
如何使用阿里云的语音合成服务(TTS)将文本转换为语音?本文详细介绍了从注册账号、获取密钥到编写Python代码调用TTS服务的全过程。通过简单的代码示例,展示如何将文本转换为自然流畅的语音,适用于有声阅读、智能客服等场景。
54 3
|
2月前
|
机器学习/深度学习 人工智能 编解码
深入探索AI文生语音技术的奥秘:从文本输入到逼真语音输出的全链条语音合成过程解析
【9月更文挑战第2天】深入探索AI文生语音技术的奥秘:从文本输入到逼真语音输出的全链条语音合成过程解析
 深入探索AI文生语音技术的奥秘:从文本输入到逼真语音输出的全链条语音合成过程解析
|
4月前
|
机器学习/深度学习 TensorFlow 语音技术
使用Python实现深度学习模型:语音合成与语音转换
【7月更文挑战第19天】 使用Python实现深度学习模型:语音合成与语音转换
92 1
|
6月前
|
人工智能 搜索推荐 语音技术
有道开源的国产语音库EmotiVoice爆火了!具有情绪控制功能的语音合成引擎!
有道开源的国产语音库EmotiVoice爆火了!具有情绪控制功能的语音合成引擎!
1372 0
|
XML Java 程序员
Android 讯飞语音合成、语音播报(详细步骤+源码)
Android 讯飞语音合成、语音播报(详细步骤+源码)
460 0
Android 讯飞语音合成、语音播报(详细步骤+源码)
|
人工智能 API 语音技术
hexo博客结合百度语音合成为你的博客添加欢迎语音
今晚在知乎和CSDN看文章时都发现了文章有点击即可朗读,将文字转换成语音,虽然机器音很严重,但可以将这个用来做个人博客的一个欢迎语。也就是别人点击你博客进入的时候会自动播放这个欢迎语,有点像是你去商店买东西,迎接你的小姐姐说的“欢迎您光临本
704 0
hexo博客结合百度语音合成为你的博客添加欢迎语音
|
机器学习/深度学习 人工智能 前端开发
【技术揭秘】阿里语音AI : KAN-TTS语音合成技术
近几年,End2end技术发展迅速,在各个领域都有广泛的研究。在语音合成领域,研究人员也提出了基于End2end技术的语音合成系统。在End2end语音合成系统中,只需要文本和对应的wav数据,任何人都可以利用强大的深度学习技术得到还不错的合成语音。
【技术揭秘】阿里语音AI : KAN-TTS语音合成技术
|
机器学习/深度学习 自然语言处理 算法
语音合成在语音助手中的应用及扩展
语音合成作为人机交互中必不可少的一个环节,随着计算机的运算和存储能力的迅猛发展,语音合成技术由早期的基于规则的参数合成,到基于小样本的拼接调整合成,并逐渐发展为现在比较流行的基于大语料库的拼接合成。
7084 0
|
语音技术 Android开发 开发工具
讯飞离线语音合成(语记|语音+)
讯飞离线语音合成(语记|语音+) 讯飞的语音合成有三种方式 在线语音合成(免费) 离线使用语记语音合成(免费,需要本地装一个语记App并且下载离线资源) 使用讯飞离...
2582 0
|
Java 语音技术 Android开发
讯飞在线语音合成
讯飞在线语音合成 效果图 源码 下载地址(Android Studio工程):http://download.
1654 0