您的位置:首页 > 健康 > 美食 > 朔州网站设计公司_微信商城app_班级优化大师怎么下载_超云seo优化

朔州网站设计公司_微信商城app_班级优化大师怎么下载_超云seo优化

2025/4/3 5:40:01 来源:https://blog.csdn.net/SkyCloud_/article/details/146591181  浏览:    关键词:朔州网站设计公司_微信商城app_班级优化大师怎么下载_超云seo优化
朔州网站设计公司_微信商城app_班级优化大师怎么下载_超云seo优化

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:

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

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

  3. 勾选beta使用utf-8
    在这里插入图片描述
    解决方法2:
    在这里插入图片描述

5.相关资料

  1. gitcode相关api

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com