尝试在Python中将wav文件转换为文本时出现wave.Error:known format:3

2024-04-22

我需要从麦克风录制音频并将其转换为文本。我已经使用从网上下载的几个音频剪辑尝试了此转换过程,效果很好。但是,当我尝试转换从麦克风录制的音频剪辑时,出现以下错误。

回溯(最近一次调用最后一次): 文件“C:\Users\HP\AppData\Local\Programs\Python\Python37\lib\site-packages\speech_recognition__init__.py”,第 203 行,位于enterself.audio_reader = wave.open(self.filename_or_fileobject, "rb") 文件“C:\Users\HP\AppData\Local\Programs\Python\Python37\lib\wave.py”,第 510 行,打开 返回 Wave_read(f) 文件“C:\Users\HP\AppData\Local\Programs\Python\Python37\lib\wave.py”,第 164 行,位于initself.initfp(f) 文件“C:\Users\HP\AppData\Local\Programs\Python\Python37\lib\wave.py”,第 144 行,位于 initfp 中 self._read_fmt_chunk(块) 文件“C:\Users\HP\AppData\Local\Programs\Python\Python37\lib\wave.py”,第 269 行,位于 _read_fmt_chunk 中 引发错误('未知格式:%r'%(wFormatTag,)) 波。错误:未知格式:3

我正在尝试的代码如下。

import speech_recognition as sr
import sounddevice as sd
from scipy.io.wavfile import write

# recording from the microphone
fs = 44100  # Sample rate
seconds = 3  # Duration of recording

myrecording = sd.rec(int(seconds * fs), samplerate=fs, channels=2)
sd.wait()  # Wait until recording is finished
write('output.wav', fs, myrecording)  # Save as WAV file
sound = "output.wav"
recognizer = sr.Recognizer()

with sr.AudioFile(sound) as source:
     recognizer.adjust_for_ambient_noise(source)
     print("Converting audio file to text...")
     audio = recognizer.listen(source)

     try:
          text = recognizer.recognize_google(audio)
          print("The converted text:" + text)

     except Exception as e:
          print(e)

我查看了已回答的类似问题,他们说我们需要将其转换为不同的 wav 格式。有人可以为我提供可用于此转换的代码或库吗?先感谢您。


您以浮点格式编写了文件:

soxi output.wav 

Input File     : 'output.wav'
Channels       : 2
Sample Rate    : 44100
Precision      : 25-bit
Duration       : 00:00:03.00 = 132300 samples = 225 CDDA sectors
File Size      : 1.06M
Bit Rate       : 2.82M
Sample Encoding: 32-bit Floating Point PCM

并且wave模块无法读取它。

要存储 int16 格式,请执行以下操作:

import numpy as np
myrecording = sd.rec(int(seconds * fs), samplerate=fs, channels=2)
sd.wait()  # Wait until recording is finished
write('output.wav', fs, myrecording.astype(np.int16))  # Save as WAV file in 16-bit format
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

尝试在Python中将wav文件转换为文本时出现wave.Error:known format:3 的相关文章

  • 为什么从 Pandas 1.0 中删除了日期时间?

    我在 pandas 中处理大量数据分析并每天使用 pandas datetime 最近我收到警告 FutureWarning pandas datetime 类已弃用 并将在未来版本中从 pandas 中删除 改为从 datetime 模块
  • 与区域指示符字符类匹配的 python 正则表达式

    我在 Mac 上使用 python 2 7 10 表情符号中的标志由一对表示区域指示符号 https en wikipedia org wiki Regional Indicator Symbol 我想编写一个 python 正则表达式来在
  • 在 django ORM 中查询时如何将 char 转换为整数?

    最近开始使用 Django ORM 我想执行这个查询 select student id from students where student id like 97318 order by CAST student id as UNSIG
  • 需要在python中找到print或printf的源代码[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我正在做一些我不能完全谈论的事情 我
  • 删除flask中的一对一关系

    我目前正在使用 Flask 开发一个应用程序 并且在删除一对一关系中的项目时遇到了一个大问题 我的模型中有以下结构 class User db Model tablename user user id db Column db String
  • 将 python2.7 与 Emacs 24.3 和 python-mode.el 一起使用

    我是 Emacs 新手 我正在尝试设置我的 python 环境 到目前为止 我已经了解到在 python 缓冲区中使用 python mode el C c C c将当前缓冲区的内容加载到交互式 python shell 中 显然使用了什么
  • Pandas Merge (pd.merge) 如何设置索引和连接

    我有两个 pandas 数据框 dfLeft 和 dfRight 以日期作为索引 dfLeft cusip factorL date 2012 01 03 XXXX 4 5 2012 01 03 YYYY 6 2 2012 01 04 XX
  • 在Python中连接反斜杠

    我是 python 新手 所以如果这听起来很简单 请原谅我 我想加入一些变量来生成一条路径 像这样 AAAABBBBCCCC 2 2014 04 2014 04 01 csv Id TypeOfMachine year month year
  • 如何在 Python 中解析和比较 ISO 8601 持续时间? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个 Python v2 库 它允许我解析和比较 ISO 8601 持续时间may处于不同单
  • 从Python中的字典列表中查找特定值

    我的字典列表中有以下数据 data I versicolor 0 Sepal Length 7 9 I setosa 0 I virginica 1 I versicolor 0 I setosa 1 I virginica 0 Sepal
  • 如何使用 Mysql Python 连接器检索二进制数据?

    如果我在 MySQL 中创建一个包含二进制数据的简单表 CREATE TABLE foo bar binary 4 INSERT INTO foo bar VALUES UNHEX de12 然后尝试使用 MySQL Connector P
  • 如何使用原始 SQL 查询实现搜索功能

    我正在创建一个由 CS50 的网络系列指导的应用程序 这要求我仅使用原始 SQL 查询而不是 ORM 我正在尝试创建一个搜索功能 用户可以在其中查找存储在数据库中的书籍列表 我希望他们能够查询 书籍 表中的 ISBN 标题 作者列 目前 它
  • 如何在 Windows 命令行中使用参数运行 Python 脚本

    这是我的蟒蛇hello py script def hello a b print hello and that s your sum sum a b print sum import sys if name main hello sys
  • 如何在 pygtk 中创建新信号

    我创建了一个 python 对象 但我想在它上面发送信号 我让它继承自 gobject GObject 但似乎没有任何方法可以在我的对象上创建新信号 您还可以在类定义中定义信号 class MyGObjectClass gobject GO
  • 如何解决 PDFBox 没有 unicode 映射错误?

    我有一个现有的 PDF 文件 我想使用 python 脚本将其转换为 Excel 文件 目前正在使用PDFBox 但是存在多个类似以下错误 org apache pdfbox pdmodel font PDType0Font toUnico
  • 模拟pytest中的异常终止

    我的多线程应用程序遇到了一个错误 主线程的任何异常终止 例如 未捕获的异常或某些信号 都会导致其他线程之一死锁 并阻止进程干净退出 我解决了这个问题 但我想添加一个测试来防止回归 但是 我不知道如何在 pytest 中模拟异常终止 如果我只
  • Django-tables2 列总计

    我正在尝试使用此总结列中的所有值文档 https github com bradleyayers django tables2 blob master docs pages column headers and footers rst 但页
  • Pandas 每周计算重复值

    我有一个Dataframe包含按周分组的日期和 ID df date id 2022 02 07 1 3 5 4 2022 02 14 2 1 3 2022 02 21 9 10 1 2022 05 16 我想计算每周有多少 id 与上周重
  • 使用 z = f(x, y) 形式的 B 样条方法来拟合 z = f(x)

    作为一个潜在的解决方案这个问题 https stackoverflow com questions 76476327 how to avoid creating many binary switching variables in gekk
  • Kivy - 单击按钮时编辑标签

    我希望 Button1 在单击时编辑标签 etykietka 但我不知道如何操作 你有什么想法吗 class Zastepstwa App def build self lista WebOps getList layout BoxLayo

随机推荐

  • Django:使用 post_delete 信号时确定正在删除的用户

    我希望在删除某些对象时通知管理员 但我也想确定哪个用户正在执行删除 是否可以 这是代码 models py signal to notify admins when nodes are deleted from django db mode
  • 如何锁定 ASP.NET MVC 操作?

    我已经编写了一个用作服务的控制器和操作 这项服务的运行成本相当高 如果当前已存在正在运行的操作 我想限制对此操作的访问 有没有内置的方法来锁定 ASP NET MVC 操作 Thanks 您在寻找这样的东西吗 public MyContro
  • 如何使用准备好的 PDO 语句设置 ORDER BY 参数?

    我在使用参数时遇到问题ORDER BY我的 SQL 部分 它不发出任何警告 但不打印任何内容 order columnName direction ASC stmt db gt prepare SELECT field from table
  • Pandas 在由列表组成的元素上删除重复项

    假设我的数据框是 df pandas DataFrame 1 0 0 0 1 0 产生 0 0 1 0 1 0 0 2 1 0 我想删除重复项 并且只获取元素 1 0 和 0 0 如果我写 df drop duplicates 我收到以下错
  • Python向数据框添加列会导致NaN

    我有一个系列和 df s pd Series 1 2 3 5 df pd DataFrame 当我像这样向 df 添加列时 df loc 0 2 s iloc 0 3 df loc 1 3 s iloc 1 4 I get df 0 2 1
  • 如果存在则更改表,如果不存在则创建

    我需要运行一个安装程序 它也可以是更新程序 安装程序需要能够最终获得 mysql 数据库的特定方案 结构 无论某些表是否存在 丢失了几列 或者因为其结构是最新的而不需要更改 我怎样才能优雅地组合ALTER and CREATE 我在想一定有
  • 在数组中的两对之间添加键/值对

    我一直在寻找和思考 但无法想出一个可行的解决方案来解决这个问题 我有一个带有连续数字键的数组 Example Array 0 gt value 0 1 gt value 1 2 gt value 2 3 gt value 3 我需要在数组中
  • 查询列出数据库中每个表的记录数

    如何列出数据库中每个表的行数 一些相当于 select count from table1 select count from table2 select count from tableN 我将发布一个解决方案 但欢迎其他方法 如果您使用
  • 将对象序列化为 XML 时如何添加 XML 命名空间 (xmlns)

    我正在 XStream 的帮助下将对象序列化为 XML 如何告诉 XStream 将 xmlns 插入到对象的 XML 输出中 例如 我有一个想要序列化的简单对象 XStreamAlias value domain public class
  • 如何在 Spark Pipeline 中使用随机森林

    我想通过网格搜索和 Spark 交叉验证来调整我的模型 在 Spark 中 它必须将基础模型放入管道中 即管道办公室演示 http spark apache org docs latest ml guide html example mod
  • ASP.NET 自定义错误被忽略

    我在 web config 中配置了自定义错误 但 IIS 6 0 返回网站配置的 自定义错误 选项卡中指定的自定义错误
  • Coverage.py 无法发现子目录中没有 init.py 文件的测试

    当我运行 python 覆盖范围时 我总是需要一个空的 init py测试子目录中的文件以获得运行测试的覆盖范围 这是 python2 软件包的要求 但不是 python3 的要求 为了重现 我执行了以下操作 先决条件是 python3 p
  • XPath 和 Regexp 哪个更快?

    我正在为 firefox 制作一个附加组件 它使用 ajax 加载一个 html 页面 附加组件有它的 XUL 面板 现在 我没有寻找创建document对象并将ajax请求内容放入其中 然后使用xPath找到我需要的内容 相反 我加载内容
  • 用于云服务“沙盒”的 SecurityManager

    All 我正在设计一个基于云的服务 该服务将提供执行客户提交的一些 插件 代码的选项 为了使这项工作正常进行 插件不能威胁系统完整性或有能力访问其他客户端的数据 这一点至关重要 理想情况下 我希望客户端能够提交一个简单的 jar 文件 包含
  • 我应该为 Windows 选择 ActivePerl 还是 Strawberry Perl? [复制]

    这个问题在这里已经有答案了 我对 Perl 完全陌生 但我想尝试一下 我读到了有关 Windows 平台的两个竞争对手的发行版 我猜有just其他操作系统上的 Perl 维基百科 http en wikipedia org wiki Per
  • .NET Core 锁定文件

    我有一个 ASP NET Core 应用程序 我通过运行命令来运行应用程序 dotnet run 当我构建此 ASP NET Core 应用程序时 我在五分之一的情况下会看到以下错误 C error CS2012 无法打开 C bin De
  • Swift:可编码 - 提取单个编码密钥

    我有以下代码来提取编码密钥中包含的 JSON let value try decoder decode String Applmusic self from 0 applmusic 这成功处理了以下 JSON applmusic code
  • Android 博客应用程序,我应该使用 Sharedpreferences 还是 Intents?

    我正在构建一个android应用程序 当前用户的后续页面是可点击的 我保存点击的页面id并将其传递给打开相应的页面 打开后 用户可以查看关注者列表 页面内的帖子等 这是包含所有页面子级的根节点 数据库 Firebase 结构 pageDat
  • GO Websocket 向所有客户端发送消息

    这段代码一切正常 为了更好的阅读而缩短了它 When Client1向服务器发送请求 服务器立即响应他 但是 其他客户端看不到响应消息 所以我想更进一步 当客户端向服务器发送请求时 服务器会响应所有客户端 以便所有客户端都可以看到该消息 我
  • 尝试在Python中将wav文件转换为文本时出现wave.Error:known format:3

    我需要从麦克风录制音频并将其转换为文本 我已经使用从网上下载的几个音频剪辑尝试了此转换过程 效果很好 但是 当我尝试转换从麦克风录制的音频剪辑时 出现以下错误 回溯 最近一次调用最后一次 文件 C Users HP AppData Loca