#!/usr/bin/env python3

from vosk import Model, KaldiRecognizer, SetLogLevel
import sys
import os
import wave SetLogLevel(0) if not os.path.exists("model"):
print ("Please download the model from https://alphacephei.com/vosk/models and unpack as 'model' in the current folder.")
exit (1) wf = wave.open("3.wav", "rb")
if wf.getnchannels() != 1 or wf.getsampwidth() != 2 or wf.getcomptype() != "NONE":
print ("Audio file must be WAV format mono PCM.")
exit (1) model = Model("model")
rec = KaldiRecognizer(model, wf.getframerate()) num = 0
while True:
data = wf.readframes(256)
# print(data)
if len(data) == 0:
break
if rec.AcceptWaveform(data):
print(rec.Result())
else:
print("第{}贞".format(num))
print(rec.PartialResult()) num = num + 1
print(rec.FinalResult())

  结果

第111贞
{
"partial" : ""
}
第112贞
{
"partial" : ""
}
第113贞
{
"partial" : ""
}
第114贞
{
"partial" : "小"
}
第115贞
{
"partial" : "小"
}
第116贞
{
"partial" : "小"
}
第117贞
{
"partial" : "小"
}
第118贞
{
"partial" : "小"
}
第119贞
{
"partial" : "小"
}
第120贞
{
"partial" : "小"
}
第121贞
{
"partial" : "小"
}
第122贞
{
"partial" : "小"
}
第123贞
{
"partial" : "小"
}
第124贞
{
"partial" : "小"
}
第125贞
{
"partial" : "小"
}
第126贞
{
"partial" : "小"
}
第127贞
{
"partial" : "小记"
}
第128贞
{
"partial" : "小记"
}
第129贞
{
"partial" : "小记"
}
第130贞
{
"partial" : "小记"
}

  

更多内容请参考

https://github.com/LiuXinyu12378/vosk-api

https://alphacephei.com/vosk/models

离线语音识别,vosk,离线流式实时静音噪声监测,支持多语言开发python c++ c# java等的更多相关文章

  1. 从Storm和Spark 学习流式实时分布式计算的设计

    0. 背景 最近我在做流式实时分布式计算系统的架构设计,而正好又要参加CSDN博文大赛的决赛.本来想就写Spark源码分析的文章吧.但是又想毕竟是决赛,要拿出一些自己的干货出来,仅仅是源码分析貌似分量 ...

  2. Rsync+lsync实现触发式实时同步

    使用rsync+lsync实现触发式实时同步 服务器信息 centos6.5 主:192.168.5.4 搭建lsync 从:192.168.5.3 搭建rsync 1.1 从服务器设置 # yum ...

  3. 安卓平台使用pocketSphinx离线语音识别

    版权声明:本文为elecdog原创文章,可以转载,但必须在明确位置注明出处!谢谢合作. 关于语音识别,国内已经有比较好的公司推出相关的服务了,比如百度免费的离在线融合语音识别以及讯飞收费的在线和离线语 ...

  4. Android离线语音识别(PocketSphinx)

    近期做项目.用到离线语音识别.整了好久,查了好多方法.最终完毕.网上资料有点乱,并且大部分就是那几个人写的.一群人转!以下我总结一下.也为后来人行个方便. 关于环境配置我就不多说了.我就是依照这个教程 ...

  5. deepstream-开放式实时服务器

    deepstream-开放式实时服务器 deepstream是一款开源服务器,其灵感来自金融交易技术背后的概念.它允许客户端和后端服务同步数据.发送消息并以非常高的速度和规模规划rpc. 参考:htt ...

  6. (私人收藏)[开发必备]最全Java离线快速查找手册(可查询可学习,带实例)

    (私人收藏)[开发必备]最全Java离线快速查找手册(可查询可学习,带实例) https://pan.baidu.com/s/1L54VuFwCdKVnQGVc8vD1TQnwmj java手册 Ja ...

  7. 【读书笔记《Bootstrap 实战》】3.优化站点资源、完成响应式图片、让传送带支持手势

    A.优化站点资源 速度很重要.用户很关心.我们的站点必须加载够快,否则用户就会走人.SEO 也很重要.我们的站点必须加载够快,否者搜索排名就会下降. 明白了这样,我们就来清点一下 [Bootstrap ...

  8. 【Bootstrap】3.优化站点资源、完成响应式图片、让传送带支持手势

    A.优化站点资源 速度很重要.用户很关心.我们的站点必须加载够快,否则用户就会走人.SEO 也很重要.我们的站点必须加载够快,否者搜索排名就会下降. 明白了这样,我们就来清点一下 [Bootstrap ...

  9. 日志服务Python消费组实战(三):实时跨域监测多日志库数据

    解决问题 使用日志服务进行数据处理与传递的过程中,你是否遇到如下监测场景不能很好的解决: 特定数据上传到日志服务中需要检查数据内的异常情况,而没有现成监控工具? 需要检索数据里面的关键字,但数据没有建 ...

  10. Hadoop平台提供离线数据和Storm平台提供实时数据流

    1.准备工作 2.一个Storm集群的基本组件 3.Topologies 4.Stream 5.数据模型(Data Model) 6.一个简单的Topology 7.流分组策略(Stream grou ...

随机推荐

  1. 使用Mockito与Squaretest进行单元测试.

    项目开发过程中,不少公司都要求写单元测试的代码,可以提高代码的质量,并且可以减少出现BUG的概率. 对于中小型公司来说,对单元测试不做硬性要求,不写最好.因为还是需要一定的工作量,在保证代码质量和性能 ...

  2. 32位数字电位器AD5228使用及调试总结

    一 概念 什么是数字电位计? 数字电位器(Digital Potentiometer)亦称数控可编程电阻器,是一种代替传统机械电位器(模拟电位器)的新型CMOS数字.模拟混合信号处理的集成电路.数字电 ...

  3. ModuleNotFoundError: No module named xxx 的原因和解决办法(附带新大陆)

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明   本文作为本人csdn blog的主站的备份.(Bl ...

  4. thttpd 2.27(最新)移植指南(官方安装脚本好多坑,我只想说)

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明   本文作为本人csdn blog的主站的备份.(Bl ...

  5. tomcat中虚拟主机以及web应用程序的配置

    一:新建虚拟主机 1. 在tomcat里新建文件夹myapps,在里面添加ROOT文件,放入网站的首页文件 新建文本文档,输入你想要的内容我这里的内容是TOM.AI,把文本文档的名字改成index.h ...

  6. 优化您的部署:Docker 镜像最佳实践

    介绍 在快速发展的软件开发和部署领域,Docker 已成为容器化的强大工具,为打包.分发和运行应用程序提供了一种标准化的高效方式.Docker 镜像在这一过程中发挥着至关重要的作用,是容器化应用程序的 ...

  7. golang 运行时死锁排查和检测

    当运行的系统发生goroutine等待获取锁时间超过预期时,判定为发生了死锁.因目前代码中使用了一些公开的锁实例,调用链也比较长,对问题排查带来了很大困扰.为了便于问题排查,需要借助工具来实现. 1. ...

  8. Linux下配置node环境与failed to create symbolic link ‘/usr/bin/utserver’: File exists跟Error: Cannot find module '/root/node-v10.16.3-linux-x64/install'解决方法

    NodeJS下载地址(官网) https://nodejs.org/en/download/ 下载下来后是个tar,xz压缩包 通过xftp将压缩包上传到Linux服务器上 如我放在root目录下 使 ...

  9. JSON.stringify() 第三个参数的使用

    语法 JSON.stringify(value[, replacer[, space]]) 参数说明: value: 必需, 要转换的 JavaScript 值(通常为对象或数组). replacer ...

  10. KingbaseES 实现 MYSQL 的 delete limit 写法

    使用MySQL的用户可能会比较熟悉这样的用法,更新或删除时可以指定限制更新或删除多少条记录. update tl set xxx=xxx where xxx limit 10; delete from ...