You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于speech_recognition中audio2数据类型及recognize_google输入要求的咨询

关于speech_recognition库的audio对象及recognize_google输入说明

1. audio2的对象类型

r.listen(source2)返回的是speech_recognition.AudioData类的实例,这是该库封装的音频数据对象,直接打印只会显示内存地址,不会展示内部细节。

2. AudioData内部存储的数据

AudioData对象内部存储了三个核心属性:

  • frame_data:字节串类型(bytes),是原始的PCM音频数据(即WAV文件里的采样内容,无文件头)
  • sample_rate:整数,音频的采样率(如16000Hz)
  • sample_width:整数,每个采样的比特宽度(如2字节=16位)

你可以直接访问这些属性查看相关信息,示例代码:

print(audio2.sample_rate)
print(audio2.sample_width)
# 查看前100字节的PCM数据
print(audio2.frame_data[:100])

3. recognize_google()的输入类型

recognize_google()要求的输入就是speech_recognition.AudioData类型的对象,你当前传入audio2完全符合要求,这也是该库的标准用法——用listen()获取AudioData,再传给识别方法。

如果需要将AudioData转成标准WAV格式的字节数据,可以用get_wav_data()方法:

wav_bytes = audio2.get_wav_data()
# 将wav_bytes写入文件得到标准WAV
with open("output.wav", "wb") as f:
    f.write(wav_bytes)

内容的提问来源于stack exchange,提问作者Ariel Makovoz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 20:25:20