源码编译 FunASR for windows on arm

news2025/2/23 18:28:50

源码编译 FunASR for windows on arm

这里有编译好的,直接下载使用

https://github.com/turingevo/FunASR-build/releases

编译

  • 1 下载 onnxruntime-win-arm64:
    https://github.com/microsoft/onnxruntime/releases/download/v1.16.1/onnxruntime-win-arm64-1.16.1.zip
    解压到
    C:\workspace\program\onnxruntime-win-arm64-1.16.1

  • 2 下载 ffmpeg for windows on arm
    https://github.com/wmx-github/ffmpeg-wos-arm64-build/releases/tag/v6.1

  • 3 下载 openssl for windows on arm
    https://github.com/turingevo/openssl-build

  • 4 打开cmake-gui
    选中配置为 Visual Studio 17 2022
    打开源码路径 C:/workspace/FunASR/runtime/websocket
    添加变量:

FFMPEG_DIR=C:\workspace\program\ffmpeg-wos-arm64
ONNXRUNTIME_DIR=C:\workspace\program\onnxruntime-win-arm64-1.16.1
OPENSSL_ROOT_DIR=C:\workspace\program\OpenSSL

在这里插入图片描述
configure 、generate 用vsual studio 打开,编译

在这里插入图片描述
生成文件在这里:C:\workspace\FunASR\runtime\websocket\build\bin\Release

使用

1 下载模型:

在modelscope : https://www.modelscope.cn/models
直接搜索模型名称,然后下载,放在路径下C:\workspace\models\

iic/speech_fsmn_vad_zh-cn-16k-common-onnx 
iic/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-pytorch  
iic/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx
iic/punc_ct-transformer_cn-en-common-vocab471067-large-onnx 
iic/speech_ngram_lm_zh-cn-ai-wesp-fst 
thuduj12/fst_itn_zh 
2 下载测试音频:

https://isv-data.oss-cn-hangzhou.aliyuncs.com/ics/MaaS/ASR/test_audio/asr_example_zh.wav

3 启用server:

在FunASR/runtime/ 路径下,新建 run_server.bat 文件:

@echo off
:: Start the command directly
"C:\workspace\FunASR\runtime\websocket\build\bin\Release\funasr-wss-server.exe" ^
    --download-model-dir "C:\workspace\models" ^
    --model-dir "C:\workspace\models\speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-onnx"
    --itn-dir "C:\workspace\models\fst_itn_zh" ^
    --lm-dir "C:\workspace\models\speech_ngram_lm_zh-cn-ai-wesp-fst" ^
    --decoder-thread-num 4 ^
    --model-thread-num 4 ^
    --io-thread-num 4 ^
    --port 10095 ^
    --certfile "C:\workspace\FunASR\runtime\ssl_key\server.crt" ^
    --keyfile "C:\workspace\FunASR\runtime\ssl_key\server.key" ^
	--hotword "C:\workspace\FunASR\runtime\websocket\hotwords.txt"
4 运行client:

在FunASR/runtime/ 路径下打开cmd,输入:

websocket/build/bin/funasr-wss-client --server-ip 127.0.0.1 --port 10095 --wav-path asr_example_zh.wav

输出:

{"is_final":false,"mode":"offline","stamp_sents":[{"end":5195,"punc":"。","start":880,"text_seg":"欢 迎 大 家 来 体 验 达 摩 院 推 出 的 语 音 识 别 模 型","ts_list":[[880,1120],[1120,1380],[1380,1540],[1540,1780],[1780,2020],[2020,2180],[2180,2480],[2480,2600],[2600,2780],[2780,3040],[3040,3240],[3240,3480],[3480,3699],[3699,3900],[3900,4180],[4180,4420],[4420,4620],[4620,4780],[4780,5195]]}],"text":"欢迎大家来体验达摩院推出的语音识别模型。","timestamp":"[[880,1120],[1120,1380],[1380,1540],[1540,1780],[1780,2020],[2020,2180],[2180,2480],[2480,2600],[2600,2780],[2780,3040],[3040,3240],[3240,3480],[3480,3699],[3699,3900],[3900,4180],[4180,4420],[4420,4620],[4620,4780],[4780,5195]]","wav_name":"wav_default_id"}

提取其中的text字段的值,就是解码结果
"欢迎大家来体验达摩院推出的语音识别模型。"

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2215114.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

最优化方法-Goldstein准则学习记录(matlab代码实现)

目录 一、前言 二、定义 三、代码实现 四、改良后 五、总结 一、前言 作为非精确线性搜索方法的一种,旨在降低计算量,提高算法效率。在迭代过程中没有必要把线性搜索搞得十分精确,因此我们可以放松对的精度要求,只要求每一步…

葵花卫星影像数据NC转tif

数据介绍 葵花8号卫星(Himawari-8)是日本发射的静止轨道气象卫星,由日本气象厅(JMA)运营。该卫星自2015年7月7日开始正式启用,主要用于观测东亚和西太平洋区域的天气情况。葵花8号卫星搭载了先进的光学仪器,能够提供高分辨率的气象数据。 卫星分辨率 葵花8号卫星的主要…

Python学习-注释,输入,运算符

python中的注释 单行注释以#开头多行注释 这是一段多行注释。 你可以在这里写很多行注释, 这些内容都不会被Python解释器执行。 中文编码注释#coding:utf-8按住ctrl\ 多行注释 输入函数 input() 输入值的类型为str 基本使用 presentinput(输入的提示) print(pre…

STL.string(中)

string 迭代器findswapsubstrrfindfind_first_of(用的很少)find_last_of(用的很少)find_first_not_of(用的很少) 迭代器 int main() {//正向迭代器string s1("hello world!");string::iterator i…

PCL 渐进式形态学滤波

文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 如果不太了解点云数学形态学的基本理论,可以先阅读这篇文章:https://blog.csdn.net/dayuhaitang1/article/details/123172437。形态学中的窗口结构一直存在着这样的问题:如果窗口结构元尺寸过小,则无法去除一些…

Qt入门教程:创建我的第一个小程序

本章教程,主要介绍如何编写一个简单的QT小程序。主要是介绍创建项目的过程。 一、打开QT软件编辑器 这里使用的是QT5.14.2版本的,安装教程参考以往教程:https://blog.csdn.net/qq_19309473/article/details/142907096 二、创建项目 到这里&am…

《OpenCV计算机视觉》—— 风格迁移

将下图中的图片换一种风格展示出来 如下图结果: 完整代码如下: import cv2image_yuantu cv2.imread("wechat.jpg") image cv2.resize(image_yuantu, dsizeNone, fx0.5, fy0.5) cv2.imshow(yuan tu, image) cv2.waitKey(0)""&q…

如何实现简单的 WinCC 项目分屏?

说明: 本文主要介绍了在不使用分屏器的情况下,通过 WinCC 项目中的设置,实现简单的分屏操作。两台显示器分别显示不同的 WinCC 画面,独自操作,互不影响。 试验环境 : 本文试验时所用硬件及软件环境…

python基础——网络编程

前言 互联网时代,现在基本上所有的程序都是网络程序,很少有单机版的程序了。网络编程就是如何在程序中实现两台计算机的通信。 Python语言中,提供了大量的内置模块和第三方模块用于支持各种网络访问,而且Python语言在网络通信方面…

如何避免日志中打印SQL语句:完整解决方案

个人名片 🎓作者简介:java领域优质创作者 🌐个人主页:码农阿豪 📞工作室:新空间代码工作室(提供各种软件服务) 💌个人邮箱:[2435024119qq.com] &#x1f4f1…

空间智能技术赋能CIM平台,为数字住建插上翅膀

在数字化浪潮的推动下,城市信息模型(CIM)平台正成为城市规划、建设和管理的重要工具。CIM平台通过集成地理信息系统(GIS)、建筑信息模型(BIM)和物联网(IoT)等技术&#x…

博客搭建之路:Netlify将url重定向到小写问题

文章目录 Netlify将url重定向到小写问题 Netlify将url重定向到小写问题 hexo版本5.0.2 npm版本6.14.7 next版本7.8.0 前两天将博客从vercel改为托管到Netlify上,本来运行的挺流畅的。但是今天我看一篇博客的评论时突然发现,虽然有评论 但是文章开头的评论…

完整发布/上传uniapp Ios应用到App Store流程

使用uniapp打包,假如使用app store证书打包出来的ipa文件,需要上传到app store上才能上架。假如你还没有app store证书,还没有打包,你可以参考下面这篇文章,先创建打包证书再继续看这篇上架的教程:https://…

unity ps 卡通角色自制

一、PS的使用 1.画头 按U键打开画椭圆工具,红色框内选择形状填充色和描边,默认是画椭圆,按住Shift即可画圆 2.画眼睛 按照步骤一的操作画两个填充椭圆就行,然后CtrlG打组,再CtrlJ复制即可 3.画鼻子、嘴、身体、脚 同…

多态对象的存储方案小结

某个类型有几种不同的子类,Jackson中的JsonTypeInfo 和JsonSubTypes可以应对这种情形,但有点麻烦,并且name属性必须是字符串、必须用Jackson为基础的json工具类对json字符串和对象进行序列化和反序列化。用过一次这种方案后边就不想再用了。 …

重学SpringBoot3-Spring Data JPA简介

更多SpringBoot3内容请关注我的专栏:《SpringBoot3》 期待您的点赞👍收藏⭐评论✍ 重学SpringBoot3-Spring Data JPA简介 1. 什么是 Spring Data JPA?2. Spring Data JPA 的核心概念2.1. 实体(Entity)2.2. Repository&…

若依前后端框架学习——新建模块(图文详解)

若依框架—新建模块 一、项目地址1、后端启动2、前端启动 二、生成代码1、添加菜单2、创建表结构3、生成代码2、编辑一些基本信息,然后点击提交3、生成代码,压缩包里有前端和后端代码 三、配置后端模块1、新建模块2. 修改pom.xlm2.1 修改第一个pom.xml 2…

关于jmeter设置为中文问题之后无法保存设置的若干问题

1、jemeter如何设置中文模式 Options--->Choose Language--->Chinese(Simplifies), 如此设置后就可显示中文模式(缺点:下次打开还是英文);如下图所示: 操作完成之后: 但是下次重启之后依旧是英文; 2、在jmeter.…

探索 Jupyter 笔记本转换的无限可能:nbconvert 库的神秘面纱

文章目录 探索 Jupyter 笔记本转换的无限可能:nbconvert 库的神秘面纱背景:为何选择 nbconvert?库简介:nbconvert 是什么?安装指南:如何安装 nbconvert?函数用法:简单函数示例应用场…

18-基于双TMS320C6678 DSP的3U VPX的信号处理平台

一、板卡概述 该板卡是由我公司自主研发的基于3U VPX架构的信号处理板,该处理板包含2片TI的TMS320C6678 DSP芯片,1片Xilinx公司的Spartan-3系列XC3S200AN配置芯片,两片DSP分别有1路RapidIO x4连接至VPX背板,两片DSP之间通过Hyperl…