测试离线音频转文本模型Whisper.net的基本用法

214 篇文章 27 订阅
订阅专栏

  微信公众号“dotNET跨平台”中的文章《OpenAI的离线音频转文本模型Whisper的.NET封装项目》介绍了基于.net封装的开源语音辨识Whisper神经网络项目Whisper.net,其GitHub地址见参考文献2。本文基于Whisper.net帮助文档中的示例,测试Whisper.net的基本用法。
  创建基于.net6的Winform项目,然后在NuGet包管理器中搜索并安装Whisper.net包,如下图所示。注意,如果搜索Whisper,还会搜到一个名为WhisperNet的包,这个包跟Whisper.net的用法不同,也不能通用,注意不要安装错了。

在这里插入图片描述
在这里插入图片描述
  在测试程序之前,需要下载语言模型文件,可以从参考文献3中下载。根据参考文献1中的介绍,下载了ggml-large.bin、ggml-medium.bin、ggml-small.bin等3个支持中文的语言模型文件,并在测试程序中优先选用ggml-large.bin进行测试。
  除了语言模型文件,Whisper.net对音频文件要求比较严格,必须是采样率为16KHz的wav格式的音频文件,具体的文件格式要求参见下面列出的Whisper.net包中WaveParser类中的部分格式检查代码。

	 byte[] array = new byte[36];
     if (waveStream.Read(array, 0, 36) != 36)
     {
         throw new CorruptedWaveException("Invalid wave file, the size is too small.");
     }

     if (array[0] != 82 || array[1] != 73 || array[2] != 70 || array[3] != 70)
     {
         throw new CorruptedWaveException("Invalid wave file RIFF header.");
     }

     if (array[8] != 87 || array[9] != 65 || array[10] != 86 || array[11] != 69 || array[12] != 102 || array[13] != 109 || array[14] != 116 || array[15] != 32)
     {
         throw new CorruptedWaveException("Invalid wave file header.");
     }

     int num = BitConverter.ToInt32(array, 16);
     if (num < 0)
     {
         throw new CorruptedWaveException("Invalid wave format size.");
     }

     if (BitConverter.ToUInt16(array, 20) != 1)
     {
         throw new CorruptedWaveException("Unsupported wave file");
     }

     channels = BitConverter.ToUInt16(array, 22);
     sampleRate = BitConverter.ToUInt32(array, 24);
     if (sampleRate != 16000)
     {
         throw new NotSupportedWaveException("Only 16KHz sample rate is supported.");
     }

     bitsPerSample = BitConverter.ToUInt16(array, 34);
     if (bitsPerSample != 16)
     {
         throw new NotSupportedWaveException("Only 16 bits per sample is supported.");
     }

  本文采用两个音频文件进行测试,第一个是Whisper.net项目自带示例程序中的kennedy.wav文件,用于测试识别英文,另一个是在B站上下载古诗《春晓》的mp4视频文件(参考文献4),用于测试识别中文,通过参考文献5在线将其转换为指定采样率的wav文件,如下图所示。
在这里插入图片描述
  测试程序的主要代码参考自Whisper.net项目中的示例程序Whisper.net.Tests中的代码。采用Whisper.net识别语音可以采用同步方式或异步方式,示例程序中都有相应的代码,本文采用同步方式的代码进行测试。主要代码如下所示:

	try
    {
        txtResult.Text = String.Empty;
        var segments = new List<SegmentData>();
        var encoderBegins = new List<EncoderBeginData>();
        using var factory = WhisperFactory.FromPath("ggml-large.bin");
        using var processor = factory.CreateBuilder()
                        .WithLanguage("auto")
                        .WithEncoderBeginHandler((e) =>
                        {
                            encoderBegins.Add(e);
                            return true;
                        })
                        .WithSegmentEventHandler(segments.Add)
                        .Build();

        using var fileReader = File.OpenRead(txtFilePath.Text);
        processor.Process(fileReader);

        foreach (var segment in segments)
        {
            txtResult.Text += "\r\n" + ($"New Segment: {segment.Start} ==> {segment.End} : {segment.Text}");
        }
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }

  程序运行效果如下面的截图所示:
在这里插入图片描述
在这里插入图片描述
  后续还会继续学习Whisper.net的用法。

参考文献:
[1]https://it.sohu.com/a/670010700_121124363
[2]https://github.com/sandrohanea/whisper.net
[3]https://huggingface.co/ggerganov/whisper.cpp/tree/main
[4]https://www.bilibili.com/video/BV19W411k7Bo/?spm_id_from=333.337.search-card.all.click&vd_source=db4a1f65c18549c78df3e9d579e59e19
[5]https://www.aconvert.com/cn/audio/

whisper语音生成软件
07-17
适用于影音网站语音合成
当剪映识别字幕开始收费,我们用免费开源软件FFmpeg、Whisper、ChatGPT来快速制作中文或双语字幕
最新发布
MIA_Chen420的博客
09-21 1030
由于我只需要剪映的字幕功能,其他会员功能并不需要,于是想了其他的办法来解决给视频增加字幕的功能,并且还能添加双语字幕,给中文字翻译成其他任何一门语言再加在中文幕的下方,做到多语言支持,比剪映做的更好。选择最后一项“新建字幕”,导入刚才生成的本地字幕,剪映会根据字幕文件生成的时间戳来匹配视频,生成视频下面的字幕,到这一步,我们就生成了有字幕的视频了。ChatGPT就会根据你的提示语,帮你翻译后生成双语的字幕,我们再将生成的双语字幕导入剪映就生成双语字幕的视频了。将视频或音频文件生成生成文本文件、字幕文件。
Whisper.net 安装与配置完全指南
gitblog_09148的博客
09-13 381
Whisper.net 安装与配置完全指南 whisper.net Whisper.net. Speech to text made simple using Whisper Models 项目地址: https://gitcod...
C#使用whisper.net实现语音文本 源码
11-22
C#使用whisper.net实现语音文本 源码 博客地址: https://blog.csdn.net/lw112190/article/details/134557417
Whisper.net:跨平台语音识别和翻译的利器
gitblog_00390的博客
08-09 483
Whisper.net:跨平台语音识别和翻译的利器 whisper.netWhisper.net. Speech to text made simple using Whisper Models项目地址:https://gitcode.com/gh_mirrors/wh/whisper.net 项目介绍 Whisper.net是一个开源项目,为.NET开发者提供了一个方便的方式来利用OpenAI...
.Net 使用OpenAI开源语音识别模型Whisper
guigenyi的专栏
05-30 4841
Open AI在2022年9月21日开源了号称其英文语音辨识能力已达到人类水准的Whisper神经网络,且它亦支持其它98种语言的自动语音辨识。Whisper系统所提供的自动语音辨识(Automatic Speech Recognition,ASR)模型是被训练来运行语音辨识与翻译任务的,它们能将各种语言的语音变成文本,也能将这些文本翻译成英文。whisper的核心功能语音识别,对于大部分人来说,可以帮助我们更快捷的将会议、讲座、课堂录音整理成文字稿;
C#使用whisper.net实现语音识别(语音文本
FL1623863129的博客
12-27 2308
模型下载地址:https://huggingface.co/sandrohanea/whisper.net/tree/main/classic。使用ggml-tiny.bin模型文件CPU推理速度客观,最重要是官方都是需要vs2022才行,我这边直接在vs2019就可以直接跑。github地址:https://github.com/sandrohanea/whisper.net
.NET】使用Whisper.net实现录音文本
dotNET跨平台
08-12 689
前言:上一篇文章写了关于如何录音,这篇咱们做个升级,让录音内容文本。废话不多说,直接上手,以下正文:1、新建一个控制台项目,引用CommandLineParser和Whisper.net2、新建Options实体类,用于提供使用模型的一些参数public class Options { /// <summary> /// 指令类型 ...
whisper.net C# demo源码
12-27
C# vs2019 .net framework编程whispernet demo源码,详情参考博客 blog.csdn.net/FL1623863129/article/details/135236329
开源模型应用落地-语音文本-whisper模型-AIGC应用探索(四)-测试音频
06-03
开源模型应用落地-语音文本-whisper模型-AIGC应用探索(四)-测试音频
python系列&deep_study系列:【AI工具篇】使用OpenAI开源的Whisper模型,制作本地离线的视频或音频文本功能...
weixin_54626591的博客
07-07 1032
【AI工具篇】使用OpenAI开源的Whisper模型,制作本地离线的视频或音频文本功能...
OpenAI的Whisper模型
12-26
OpenAI的Whisper自动语音识别(ASR)模型的高性能推理: 无依赖关系的纯C/C++实现 Apple Silicon一流公民-通过ARM NEON、Accelerate框架、Metal和Core ML进行优化 对x86体系结构的AVX内部支持 对POWER体系结构的VSX内部支持 F16/F32混合精度 支持4位和5位整数量化 运行时内存分配为零 支持仅CPU推理 NVIDIA的高效GPU支持 通过CLBlast部分支持OpenCL GPU OpenVINO支持 C型API 支持的平台: Mac操作系统(Intel和Arm) iOS 安卓 java语言 Linux/FreeBSD WebAssembly Windows(MSVC和MinGW] 树莓派 码头工人 该模型的整个高级实现包含在whirsper.h和whirsper.cpp中。其余代码是ggml机器学习库的一部分。 拥有这种轻量级的模型实现可以很容易地将其集成到不同的平台和应用程序中。举个例子,这里有一段在iPhone 13设备上运行该型号的视频——完全离线
开源模型应用落地-语音文本-whisper模型-AIGC应用探索(二)-测试音频
05-30
开源模型应用落地-语音文本-whisper模型-AIGC应用探索(二)-测试音频
开源模型应用落地-语音文本-whisper模型-AIGC应用探索(二)
热门推荐
没有卑微的工作,只有卑微的心态,与其抱怨,不如埋头实干
05-30 1万+
学习OpenAI开源的Whisper语音识别模型,并集成FastAPI对外提供语音识别服务
wpf 语音通话_wpf 怎么录制语音
weixin_30368981的博客
12-30 199
展开全部//////语音录制控制类///publicclassRecordingAudio{//////录制完成事件,该事件只会在UI线程上执行e69da5e887aa3231313335323631343130323136353331333363376432///publiceventEventHandlerOnRecordingFinish;//////录制进度事件,...
Whisper实现语音识别文本
wudi1107的博客
03-04 3387
本文简单介绍了whisper的用途、在windows系统下安装部署whisper的方法以及whisper的简单用法。关于whisper的使用部分仅介绍了命令行模式的使用方法,如果你会使用python,也可以使用以下代码来运行whisper。了解更多请参考官方文档。或者如果你想要在网页上运行whisper,可以安装Whisper Webui。
怎么音频文字?快把这些方法收好
09-21 1188
相信不少的小伙伴,经常需要对自己的录音文件进行整理归纳吧,其中不乏是课堂的重点知识、会议上的重点纪要、谈判中的重点内容。那小伙伴们平时在整理的时候,大概都需要花费多少时间呢?为了能够将音频的内容完整呈现出来,我们一般都需要反复听好几次音频的内容,这样子在无形中就会耗费更多的时间。其实我们是可以使用软件直接将音频成文字的,还不知道音频文字怎么的小伙伴,赶紧往下看文章吧。方法一:使用万能文字识别换【软件简介】这款软件能够帮助我们将音频成文字,它能够支持MPA、WAV、AMR等八种格式的音频文件,我们几
colab whisper模型实现语音文字
09-17
Colab Whisper模型是一种先进的语音文字模型,它基于语音识别技术,利用深度学习算法将语音信号换为文本。 Colab Whisper模型的实现步骤如下: 1. 准备数据:首先,需要准备用于训练模型的语音数据集。这些语音数据应该包含不同人的不同语音片段,涵盖不同的语言和口音。 2. 数据预处理:接下来,需要对语音数据进行预处理。这包括对语音信号进行采样和分割,去除噪音和不必要的部分,并将其换为模型可处理的格式,例如MFCC特征。 3. 构建模型:使用深度学习框架,如TensorFlow或PyTorch,构建Colab Whisper模型。该模型通常由多个卷积神经网络和循环神经网络层组成,用于提取语音信号的特征并进行序列建模。 4. 训练模型:使用准备好的语音数据集,通过反向传播算法和训练集的迭代,对模型进行训练。在每个迭代步骤中,模型会根据预测输出与实际标签之间的差异调整自身的权重和参数,以提高预测准确性。 5. 模型评估和优化:在每个训练周期结束后,使用验证集和测试集对模型进行评估。评估指标可以包括词错误率(WER)和字符错误率(CER)。通过这些指标,可以确定模型的性能,并对其进行改进。 6. 部署和应用:一旦模型训练完成并通过评估,就可以将其部署到实际应用中。通过输入语音信号,模型将对其进行换,并输出相应的文本结果。 总之,Colab Whisper模型通过深度学习算法实现了从语音到文本换。通过准备数据、进行数据预处理、构建模型、训练模型、评估和优化以及部署应用等步骤,可以实现一个高效准确的语音文字系统。
写文章

热门文章

  • SqlServer数据库备份与还原 103758
  • Eclipse中的工作空间(Workspace) 45499
  • Java程序报错:“找不到或无法加载主类”的解决方法 34029
  • Arduino使用土壤湿度传感器 31852
  • Arduino使用软串口通信 31228

分类专栏

  • Python 43篇
  • Linux 5篇
  • UX Movement网站文章翻译 176篇
  • ui-patterns网站文章翻译 149篇
  • JAVA项目开发入门 29篇
  • 用户体验 1篇
  • 数字化制造 2篇
  • 业务术语解惑 2篇
  • 项目管理知识入门 2篇
  • 完成的软件 1篇
  • dotnet编程 214篇
  • C\C++语言\汇编 8篇
  • 网页编程 149篇
  • 杂项 3篇
  • 统计学 1篇
  • 程序问题解答 63篇
  • Arduino 58篇
  • 程序设计 131篇
  • 消息通知 1篇
  • 页脚导航 1篇
  • Fat-Footer 1篇
  • 垂直下拉菜单 1篇
  • 水平下拉菜单 1篇
  • 软件工程
  • Mono 1篇
  • 工作杂谈 2篇
  • Java 15篇

最新评论

  • VSCode创建WebAPI

    gc_2299: 你说的是哪五行?如果是文章开头那五行的话,当时刚接触vscode和webapi,主要照着微软教程和百度学习怎么操作。

  • VSCode创建WebAPI

    2401_86562732: 执行完前面五行代码之后退出,下次再继续使用的话用什么呢

  • VSCode创建WebAPI

    2401_86562732: 不太明白最前面那 5 行实现什么功能

  • Avalonia学习(1:第一个程序)

    _z3422_: 下载插件时太慢的话,可以通过修改 hosts 文件来提升下载速度

  • 测试C#使用AForge从摄像头获取图片

    narutomst: aforge发现不了OBS的虚拟摄像头,发现不了网路摄像头,由什么办法?

大家在看

  • 网络安全(黑客技术)2024年三个月自学手册
  • 普通小学生也可以理解的Paxos算法讲解 324
  • Python推荐系统详解:基于协同过滤和内容的推荐算法
  • 就是这个样的粗爆,手搓一个计算器:排卵计算器 109
  • Python异常检测:Isolation Forest与局部异常因子(LOF)详解

最新文章

  • C#基于SkiaSharp实现印章管理(11)
  • SqlSugar查询达梦数据库时搜索不到列值为NULL的记录
  • python调用dircmp进行文件夹比较
2024
10月 4篇
09月 10篇
08月 10篇
07月 10篇
06月 10篇
05月 11篇
04月 10篇
03月 10篇
02月 10篇
01月 10篇
2023年122篇
2022年124篇
2021年127篇
2020年122篇
2019年100篇
2018年59篇
2017年149篇

目录

目录

评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家江苏大型商场创意商业美陈理念德阳玻璃钢海豚雕塑定制郑州玻璃钢浮雕动物雕塑制造新密锻铜玻璃钢雕塑通辽卡通人像玻璃钢雕塑缪斯商场美陈广东玻璃钢雕塑代理价格牧野玻璃钢雕塑深圳市玻璃钢雕塑桥北商场新年美陈河源玻璃钢气球雕塑做玻璃钢雕塑翻模云南卡通玻璃钢雕塑滁州景区玻璃钢雕塑订做价格南通人物玻璃钢雕塑定制标牌标识校园玻璃钢景观雕塑西安定制玻璃钢雕塑市场贵阳玻璃钢雕塑订做玻璃钢雕塑怎么运输青岛人物玻璃钢雕塑定制大理市玻璃钢雕塑价格六安玻璃钢雕塑供应商内蒙古动物玻璃钢雕塑厂家句容玻璃钢雕塑设计公司福建定制玻璃钢雕塑生产厂家上海常见玻璃钢花盆玻璃钢花盆哪家产品好树脂玻璃钢雕塑多少钱上街玻璃钢雕塑加工厂家天水玻璃钢雕塑供应香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化