讯飞语音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/

目录
相关文章
|
4月前
|
JSON 自然语言处理 Java
Android App开发语音处理之系统自带的语音引擎、文字转语音、语音识别的讲解及实战(超详细 附源码)
Android App开发语音处理之系统自带的语音引擎、文字转语音、语音识别的讲解及实战(超详细 附源码)
121 0
|
1月前
|
人工智能 搜索推荐 语音技术
有道开源的国产语音库EmotiVoice爆火了!具有情绪控制功能的语音合成引擎!
有道开源的国产语音库EmotiVoice爆火了!具有情绪控制功能的语音合成引擎!
|
8月前
|
人工智能 文字识别 JavaScript
HarmonyOS学习路之开发篇—AI功能开发(二维码生成及文字识别)
为应用提供丰富的AI(Artificial Intelligence)能力,支持开箱即用。开发者可以灵活、便捷地选择AI能力,让应用变得更加智能。
|
8月前
|
人工智能 API 语音技术
HarmonyOS学习路之开发篇—AI功能开发(语音播报)
语音播报(Text to Speech,下文简称TTS),基于华为智慧引擎(HUAWEI HiAI Engine)中的语音播报引擎,向开发者提供人工智能应用层API。该技术提供将文本转换为语音并进行播报的能力。
|
9月前
|
人工智能 编解码 API
C# 10分钟完成百度语音技术(语音识别与合成)——入门篇
C# 10分钟完成百度语音技术(语音识别与合成)——入门篇
|
10月前
|
API 语音技术
构建智能语音助手应用:语音识别和语音合成的实践
智能语音助手应用正变得越来越流行,它们能够通过语音与用户进行交互,为用户提供便捷的服务。在本文中,我们将介绍如何构建一个智能语音助手应用,包括语音识别和语音合成的实践。我们将使用现代化的语音处理技术和开源工具来实现这个应用。
173 0
|
11月前
|
人工智能 Java 语音技术
《阿里云AI产品必知必会系列电子书》——智能语音交互——语音合成QuickStart使用教程
《阿里云AI产品必知必会系列电子书》——智能语音交互——语音合成QuickStart使用教程
652 0
|
11月前
|
人工智能 语音技术 自然语言处理
《阿里云AI产品必知必会系列电子书》——智能语音交互—— 一句话识别QuickStart使用教程(1)
《阿里云AI产品必知必会系列电子书》——智能语音交互—— 一句话识别QuickStart使用教程(1)
536 0
|
11月前
|
人工智能 Java 调度
《阿里云AI产品必知必会系列电子书》——智能语音交互—— 一句话识别QuickStart使用教程(3)
《阿里云AI产品必知必会系列电子书》——智能语音交互—— 一句话识别QuickStart使用教程(3)
500 0
|
11月前
|
人工智能
《阿里云AI产品必知必会系列电子书》——智能语音交互—— 一句话识别QuickStart使用教程(2)
《阿里云AI产品必知必会系列电子书》——智能语音交互—— 一句话识别QuickStart使用教程(2)
477 0

热门文章

最新文章