使用vosk开源项目,基于java实现离线语音转文字

文章目录

  • 前言
  • 一、VOSK是什么?
  • 二、使用步骤
    • 1.环境准备
    • 2.maven依赖
    • 如果导入失败可以下载jar,build path一下;
    • 3.语言模型
    • 4.运行代码
  • 总结

前言

当前主流的语音识别大厂有科大讯飞、百度、谷歌等,但在他们官网中发现,支持java离线版的并不多,科大讯飞离线包仅基于安卓,而百度官方并没有离线版的,所以在资源查找中筛选出VOSK、CMU Sphinx,并且两者都是开源的,但CMU Sphinx官网中并没有中文模型,所以在选用上选择了VOSK.


一、VOSK是什么?

Vosk是言语识别工具包。Vosk最好的事情是:
1.支持二十+种语言 - 中文,英语,印度英语,德语,法语,西班牙语,葡萄牙语,俄语,土耳其语,越南语,意大利语,荷兰人,加泰罗尼亚语,阿拉伯, 希腊语, 波斯语, 菲律宾语,乌克兰语, 哈萨克语, 瑞典语, 日语, 世界语
2.移动设备上脱机工作-Raspberry Pi,Android,iOS
3.使用简单的 pip3 install vosk 安装
4.每种语言的手提式模型只有是50Mb, 但还有更大的服务器模型可用
提供流媒体API,以提供最佳用户体验(与流行的语音识别python包不同)
5.还有用于不同编程语言的包装器-java / csharp / javascript等
6.可以快速重新配置词汇以实现最佳准确性
7.支持说话人识别

二、使用步骤

1.环境准备

因为该资源底层是c开发的,所以需要下载vcredist;

2.maven依赖

代码如下(示例):

      <dependency><groupId>net.java.dev.jna</groupId><artifactId>jna</artifactId><version>5.7.0</version></dependency><dependency><groupId>com.alphacephei</groupId><artifactId>vosk</artifactId><version>0.3.32</version></dependency>

如果导入失败可以下载jar,build path一下;

3.语言模型

从官网地址https://alphacephei.com/vosk/models中下载想用的语言模型,如果是中文的话推荐:vosk-model-small-cn-0.3


4.运行代码

将官方给出的demo添加到项目中,其中需要更改的是给的DecoderDemo,这个是调用方法,

  public static void main(String[] argv) throws IOException, UnsupportedAudioFileException {LibVosk.setLogLevel(LogLevel.DEBUG);try (Model model = new Model("model");//该段是模型地址InputStream ais = AudioSystem.getAudioInputStream(new BufferedInputStream(new FileInputStream("cn.wav")));//该段是要转的语言文件,仅支持wavRecognizer recognizer = new Recognizer(model, 12000)) {//该段中12000是语言频率,需要大于8000,可以自行调整int nbytes;byte[] b = new byte[4096];while ((nbytes = ais.read(b)) >= 0) {if (recognizer.acceptWaveForm(b, nbytes)) {System.out.println(recognizer.getResult());} else {System.out.println(recognizer.getPartialResult());}}System.out.println(recognizer.getFinalResult());}}

总结

这个开源最大的不足是有点慢,如果你们有合适的开源资源记得推荐一下。

java 离线版语音转文字相关推荐

  1. 纯java离线版语音转文字

    前言 当前主流的语音识别大厂有科大讯飞.百度.谷歌等,但在他们官网中发现,支持java离线版的并不多,科大讯飞离线包仅基于安卓,而百度官方并没有离线版的,所以在资源查找中筛选出VOSK.CMU Sph ...

  2. 【项目管理】Java离线版语音识别-语音转文字

    Java离线版语音识别-语音转文字 1.项目前言 2.Vosk介绍 3.项目开发 3.1 项目准备 3.2 model 准备 3.3 测试音频准备 3.4 代码实现 4.效果演示 4.1 界面效果 4 ...

  3. react-native 使用百度语音识别极速版语音转文字

    项目有需求,需要集成语音转文字,于是开始研究,一步一个坑 1.集成录音 react-native-audio 2.集成文件操作 react-native-fs 3.集成音频格式转换 react-nat ...

  4. 一个语音转文字的工具 java 编写

    一.这是啥? 一个 PC 版语音转文字的工具 二.能做什么? 把对着话筒说的话转换成文字,并且粘贴在当前窗口可以输入文字并且光标聚焦的地方 看看效果 三.怎么用? 首先参考上一篇博客到讯飞开放平台创建 ...

  5. 尝试搭建本地语音转文字系统[1]

    安装百度飞桨PaddleSpeech 前言 安装平台 平台简单介绍 开始安装 安装Paddlepaddle(GPU版本) 安装PaddleSpeech 测试样例 ASR (Automatic Spee ...

  6. 【Buzz】离线语音转文字、实时语音识别

    Buzz是基于 OpenAI Whisper的离线语音转文字(字幕),实时语音识别工具. 功能 实时语音转文字.实时翻译(需麦克风权限) 导入音频.视频文件(mp3.wav.m4a.ogg.mp4.w ...

  7. java文字转语音支持ubuntu系统_9个(实时)语音转文字APP分享(推荐收藏)

    " 做会议记录.看无字幕网课再也不用担心,解放双手,提高效率." 随着语音转文字技术的发展,我们记录会议.上课内容等有了更好的方式. 实时语音转文字实现边听边看,并且还可回看转译记 ...

  8. 讯飞语音识别之语音转文字------java

    最近项目要用到语音识别的功能,网上找别人写的都不行,二话不说直接去讯飞官网注册下载了一个sdk,但是个人觉得sdk中并不是很明确的能运行实现功能,于是自己参考下载的sdk中的代码做了一个改动和封装.添 ...

  9. java利用科大讯飞SDK实现语音转文字的功能

    一,下载SDK,获取.pcm格式的语音文件 利用科大讯飞的SDK实现语音转文字的功能,首先可以登录科大讯飞的官网查看"语音听写Java SDK文档"语音听写 Java SDK 文档 ...

  10. 语音转文字转换器、绿色免安装版【推荐!推荐!推荐!】

    零.下载地址:http://download.csdn.net/download/qin066/10003507 一.c# 对音频文件的处理 //用新线程去开启 pa=[wav文件的指定路径[全路径] ...

最新文章

  1. PHP中的静态属性、静态方法、常量属性
  2. http request header 中的host行的作用
  3. 互联网产品设计的“马化腾法则”
  4. 艾特某人代码实现_Vue@某人,At某人,仿新浪微博@某人,@user,艾特,艾特某人...
  5. 作者:曾嘉(1980-),男,博士,华为诺亚方舟实验室高级研究员和项目经理。...
  6. java布尔方法_Java布尔方法返回
  7. Kafka常见面试问题
  8. java类转换异常,java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Long
  9. qi无线充电协议_无线充电Qi专利池正式上线!
  10. 气压、温度、湿度传感器BME280的使用方法
  11. 淘宝直通车怎样设置定向推广出价问题总结
  12. 巧用Excel按照某一列进行整体排序
  13. fat32源码c语言,FAT32文件系统基本原理与数据恢复编程
  14. React Native常用三方组件库大全
  15. anywhere无法获取服务器响应,使用Chat Anywhere可能出现的问题与解决方法
  16. .fai 文件格式解读
  17. 展望:2021年程序员业界趋势与生存指南
  18. Topic 14. 临床预测模型之校准曲线 (Calibration curve)
  19. 中国各个省份的id代号是多少?各省简称是什么?
  20. jz2440---使用uboot烧录程序

热门文章

  1. linux内核丢弃udp报文,UDP内核丢弃UDP数据包
  2. Java新手编程入门
  3. IE下载xlsx、docx、pptx文件时自动变成zip文件问题
  4. 手机系统S40 S60 是什么意思?
  5. CSF文件格式播放器
  6. windows server 2000系统安装
  7. RedHat 下载地址
  8. filezilla server 下载、安装、配置教程(包含新版使用配置)
  9. CImageList使用指南
  10. cad在线转换低版本_资源分享/CAD版本转换器