当前位置: 首页 > article >正文

jdk21使用Vosk实现语音文字转换,免费的语音识别

1.下载vosk的model

vosk官网:https://alphacephei.com/vosk/models
我这里使用较小的vosk-model-small-cn-0.22

2.添加相关pom文件

 <!-- 获取音频信息 --><dependency><groupId>org</groupId><artifactId>jaudiotagger</artifactId><version>2.0.3</version></dependency><!-- 语音识别 --><dependency><groupId>net.java.dev.jna</groupId><artifactId>jna</artifactId><version>5.16.0</version></dependency><dependency><groupId>com.alphacephei</groupId><artifactId>vosk</artifactId><version>0.3.45</version></dependency>

3.代码

添加model和使用的音频,我这里用的wav格式的,不同格式的参数会不一样


import org.vosk.LibVosk;
import org.vosk.LogLevel;
import org.vosk.Model;
import org.vosk.Recognizer;import javax.sound.sampled.AudioSystem;
import javax.sound.sampled.UnsupportedAudioFileException;
import java.io.*; public class testVosk {public static void main(String[] argv) throws IOException, UnsupportedAudioFileException {LibVosk.setLogLevel(LogLevel.DEBUG);try (Model model = new Model("E:\\srk\\bigData\\vosk-model-small-cn-0.22");InputStream fis = AudioSystem.getAudioInputStream(new BufferedInputStream(new FileInputStream("C:\\Users\\Administrator\\Downloads\\mdhs1-5ob2k.wav")));Recognizer recognizer = new Recognizer(model, 16000)) {int bytes;byte[] b = new byte[4096];while ((bytes = fis.read(b)) >= 0) {if (recognizer.acceptWaveForm(b, bytes)) {System.out.println(recognizer.getResult());} else {System.out.println(recognizer.getPartialResult());}}String result = recognizer.getFinalResult();System.out.println(result);}}
}

4.可能遇到的问题

1.乱码,我搞了半天(捂脸)
因为jdk17以后编号的模式改了,所以在网上找了各种设置编码的格式都没有生效。
比如jvm设置 -Dfile.encoding=UTF-8都没生效。

-Dfile.encoding=UTF-8

jdk17以前的还是正常的。
解决方法:

  1. win系统控制面板找到“区域与语言设置”

  2. 在弹出框中选择更改系统区域设置
    在这里插入图片描述

  3. 勾选beta使用utf-8
    在这里插入图片描述

5.相关资料

  1. gitcode相关api

相关文章:

jdk21使用Vosk实现语音文字转换,免费的语音识别

1.下载vosk的model vosk官网&#xff1a;https://alphacephei.com/vosk/models 我这里使用较小的vosk-model-small-cn-0.22 2.添加相关pom文件 <!-- 获取音频信息 --><dependency><groupId>org</groupId><artifactId>jaudiotagger</artifac…...

I.MX6ULL 开发板上挂载NTFS格式 U 盘

I.MX6ULL 开发板上挂载NTFS格式 U 盘 挂载失败安装NTFS-3G安装失败成功安装 移植挂载成功卸载U盘 挂载失败 我使用的U盘的格式是NTFS格式的 插入U盘时会有信息 我使用的是闪迪的U盘&#xff0c;大小标称是 32G &#xff0c;实际能用的只有 28G 左右 可以使用lsblk命令查看磁盘…...

性能测试~

1.什么是性能测试 1.什么是性能 就像这两个车一样,虽然都是代步工具,构造都是一样的,但是路虎的发动机要比捷达好.路虎的百米加速却是比捷达快的,我们就知道路虎的性能要比捷达好 . 那么什么是软件的性能呢?我们分析一下 2.常见的性能测试指标 2.1并发数 并发数是指在同一…...

排查使用RestTemplate远程调用,@RequestBody注解接收不到实体类

做项目学习&#xff0c;使用RestTemplate远程调用&#xff0c;从order订单系统调用pay支付系统&#xff0c;出现使用Request做远程接收。 代码的逻辑很简单&#xff0c;但就是没有接收到实体类 1. 猜想是不是没有序列化和初始化方法&#xff1f; 这个好排查&#xff0c;看Pay和…...

数据库同步中间件PanguSync:如何跳过初始数据直接进行增量同步

某些用户在使用数据库同步中间件PanguSync时说&#xff0c;我不想进行初次的全量同步&#xff0c;我已经源备份还原到目标库了&#xff0c;两边初始数据一样&#xff0c;想跳过初始数据&#xff0c;直接进行增量同步&#xff0c;该怎么设置。 直接上干货&#xff0c;按如下步骤…...

javaWeb Router

一、路由简介 1、什么是路由&#xff1f; - 定义&#xff1a;路由就是根据不同的 URL 地址展示不同的内容或页面。 - 通俗理解&#xff1a;路由就像是一个地图&#xff0c;我们要去不同的地方&#xff0c;需要通过不同的路线进行导航。 2、路由的作用 - 单页应用程序…...

qwen2.5vl技术报告解读

一. 首先qwen2.5vl模型特点 全能文档解析能力 升级文本识别至全场景文档解析,擅长处理多场景、多语种及复杂版式文档(含手写体、表格、图表、化学方程式、乐谱等),实现跨类型文档的精准解析。 跨格式精准目标定位 突破格式限制,大幅提升对象检测、坐标定位与数量统计精度,…...

【Linux】进程的详讲(上)

目录 &#x1f4d6;1、冯诺依曼体系结构 &#x1f4d6;2、硬件介绍 &#x1f4d6;3、内存的重要性 &#x1f4d6;4、程序运行的步骤 &#x1f4d6;5、QQ聊天时的数据流动 &#x1f4d6;6、操作系统 &#x1f4d6;7、操作系统的目的 &#x1f4d6;8、操作系统是如何…...

高精度除法

除数与被除数都是大整数 代码 #include<bits/stdc.h> using namespace std; typedef long long ll; string a,b; vector<int>dend,sor; bool aisbigger(vector<int>&a,vector<int>&b){if(a.size()!b.size())return a.size()>b.size();for…...

Android面试总结之Glide源码级理解

当你的图片列表在低端机上白屏3秒、高端机因内存浪费导致FPS腰斩时&#xff0c;根源往往藏在Glide的内存分配僵化、磁盘混存、网络加载无优先级三大致命缺陷中。 本文从阿里P8级缓存改造方案出发&#xff0c;结合Glide源码实现动态内存扩容、磁盘冷热分区、智能预加载等黑科技&…...

Pyside6 开发 使用Qt Designer

使用Qt Designer 在Scripts目录下打开pyside6-designer.exe 分别将姓名、年龄、爱好对应的输入框的ObjectName 设置为 uname、uage、ulike 提交按钮Object设置为 btnSubmit 点击保存文件 &#xff0c;命名为student.ui 将.ui文件编程成.py文件 pyside6-uic student.ui -o st…...

PyQt6实例_批量下载pdf工具_使用pyinstaller与installForge打包成exe文件

目录 前置&#xff1a; 步骤&#xff1a; step one 准备好已开发完毕的项目代码 step two 安装pyinstaller step three 执行pyinstaller pdfdownload.py&#xff0c;获取初始.spec文件 step four 修改.spec文件&#xff0c;将data文件夹加入到打包程序中 step five 增加…...

局域网共享失败?打印机/文件夹共享工具

很多时候&#xff0c;在办公或家庭环境中&#xff0c;我们需要进行打印机和文件夹的共享&#xff0c;以便更高效地协作和处理文件。然而&#xff0c;寻找对应版本的共享设置或是不想花费太多时间去进行复杂的电脑设置&#xff0c;总是让人感到头疼。今天&#xff0c;我要向大家…...

DeepSeek-V3-250324: AI模型新突破,性能超越GPT-4.5

DeepSeek 于 3 月 25 日宣布完成 V3 模型的小版本升级&#xff0c;推出 DeepSeek-V3-250324 版本。新版本在推理能力、代码生成、中文写作及多模态任务上实现显著优化&#xff0c;尤其在数学和代码类评测中得分超越 GPT-4.5&#xff0c;引发行业高度关注。 DeepSeek-V3-250324…...

第R9周:阿尔兹海默症诊断(优化特征选择版)

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 文章目录 1、导入数据2、数据处理2.1 患病占比2.2 相关性分析2.3 年龄与患病探究 3、特征选择4、构建数据集4.1 数据集划分与标准化4.2 构建加载 5、构建模型6…...

19726 星际旅行

19726 星际旅行 ⭐️难度&#xff1a;困难 &#x1f31f;考点&#xff1a;Dijkstra、省赛、最短路问题、期望、2024 &#x1f4d6; &#x1f4da; import java.util.*;public class Main {static int N 1005;static ArrayList<Integer>[] g new ArrayList[N]; // …...

DeepSeek大模型应用开发新模式

DeepSeek大模型应用全景技术架构 DeepSeek大模型 VS 主流大模型 DeepSeek大模型系统提示词 VS 主流大模型 DeepSeek大模型迭代版本 DeepSeek专业化模型分类 DeepSeek大模型部署所需显存资源 DeepSeek不同参数模型及应用场景 DeepSeek大模型安装部署技术选型...

代码随想录动态规划05

74.一和零 视频讲解&#xff1a;动态规划之背包问题&#xff0c;装满这个背包最多用多少个物品&#xff1f;| LeetCode&#xff1a;474.一和零_哔哩哔哩_bilibili 代码随想录 给你一个二进制字符串数组 strs 和两个整数 m 和 n 。 请你找出并返回 strs 的最大子集的大小&#…...

Next.js 深度解析:全栈React框架的架构哲学与实践精髓

Next.js 作为 React 生态中最流行的全栈框架&#xff0c;已经超越了简单的SSR工具&#xff0c;发展成为完整的Web开发解决方案。以下从八个维度进行深度剖析&#xff1a; 一、核心架构设计 双引擎驱动模型 页面路由系统&#xff1a;基于文件系统的约定式路由渲染引擎&#xff…...

Node.js Express 处理静态资源

目录 1. 什么是静态资源&#xff1f; 2. 安装 Express 3. 目录结构 4. 创建 server.js 5. 创建 public/index.html 6. 创建 public/style.css 7. 创建 public/script.js 8. 运行服务器 9. 结语 1. 什么是静态资源&#xff1f; 静态资源指的是 HTML、CSS、JavaScript、…...

2025企业级项目设计三叉戟:权限控制+错误监控+工程化提效实战指南

一、权限系统设计&#xff1a;动态路由与按钮级控制的终极方案 1. 权限系统架构设计痛点 路由权限滞后&#xff1a;传统方案需页面加载后动态计算路由表&#xff0c;导致首屏白屏时间增加30%按钮颗粒度不足&#xff1a;基于角色的权限控制&#xff08;RBAC&#xff09;无法满…...

DeepSeek-V3新版本DeepSeek-V3-0324

中国人工智能初创公司深度求索&#xff08;DeepSeek&#xff09;2025年3月24日深夜低调上线了DeepSeek-V3的新版本DeepSeek-V3-0324&#xff0c;参数量为6850亿&#xff0c;在代码、数学、推理等多个方面的能力再次显著提升&#xff0c;甚至代码能力追平美国Anthropic公司大模型…...

108回回目设计

由于108回完整目录篇幅极长&#xff0c;我将以分卷缩略核心回目详解形式呈现&#xff0c;既保证完整性&#xff0c;又避免信息过载。以下是凝练后的完整框架与部分代表性回目&#xff1a; 第一卷&#xff1a;京口草鞋摊的野望&#xff08;1-36回&#xff09; 核心矛盾&#xf…...

探索:如何构建一个自我的AI辅助的开发环境?

构建支持AI的开发辅助环境并实现全流程自动化&#xff0c;需要整合开发工具链、AI模型服务和自动化流水线。以下是分步实施指南&#xff0c;包含关键技术栈和架构设计&#xff1a; 一、开发环境基础架构 1. 工具链集成平台 #mermaid-svg-RFSaibQJwVEcW9fT {font-family:"…...

国产RISC-V车规芯片当前现状分析——从市场与技术角度出发

摘要 随着汽车产业的智能化、电动化转型加速&#xff0c;车规级芯片的战略地位日益凸显。RISC-V指令集凭借其开源、灵活、低功耗等优势&#xff0c;成为国产车规芯片的重要发展方向。本文从市场与技术两个维度出发&#xff0c;深入分析国产RISC-V车规芯片的现状。通过梳理国内…...

华为eNSP-配置静态路由与静态路由备份

一、静态路由介绍 静态路由是指用户或网络管理员手工配置的路由信息。当网络拓扑结构或者链路状态发生改变时&#xff0c;需要网络管理人员手工修改静态路由信息。相比于动态路由协议&#xff0c;静态路由无需频繁地交换各自的路由表&#xff0c;配置简单&#xff0c;比较适合…...

数据分析中,文件解析库解析内容样式调整(openpyxl 、tabulate)

CSV文件&#xff1a;使用Python标准库中的csv模块&#xff0c;通过简单的文本解析来读取数据。 Excel文件&#xff1a;使用专门的库&#xff08;如openpyxl、xlrd&#xff09;来解析复杂的文件格式&#xff0c;或者使用pandas库来简化读取过程。 openpyxl openpyxl 是一个 Pyt…...

时尚界正在试图用AI,创造更多冲击力

数字艺术正以深度融合的方式&#xff0c;在时尚、游戏、影视等行业实现跨界合作&#xff0c;催生了多样化的商业模式&#xff0c;为创作者和品牌带来更多机会&#xff0c;数字艺术更是突破了传统艺术的限制&#xff0c;以趣味触达用户&#xff0c;尤其吸引了年轻一代的消费群体…...

ai画图comfyUI 精准定位gligen。允许指定图像中多个对象的位置和大小

基础功能下&#xff0c;outpainting是内容填充&#xff0c;拉近拉远镜头&#xff0c;自动填充旁边物体。嵌入模型也需要单独下载&#xff0c;演示完示例后推荐模型站有更直观效果介绍和用法。选中精确定位。看一眼坐标&#xff0c;直接默认出一张图。然后修改定位&#xff0c;和…...

Python @property 装饰器深度使用教程

一、基础概念与核心原理 1. 装饰器本质 property 是 Python 内置的属性管理装饰器&#xff0c;它将类方法转换为类属性访问接口。其核心价值在于&#xff1a; ​封装性&#xff1a;隐藏属性操作的具体实现​可维护性&#xff1a;在不改变外部接口的前提下修改内部逻辑​安全…...