gpt4 book ai didi

python - 为什么在目录中循环访问.wav文件时显示错误,但在不循环时工作正常?

转载 作者:行者123 更新时间:2023-12-03 00:23:09 24 4
gpt4 key购买 nike

以下成功运行:

import speech_recognition as sr

filename = 'audiofiles/myaudiofile.wav'

# initiailse the recognizer
r = sr.Recognizer()

with sr.AudioFile(filename) as source:
# listen for the data (load audio to memory)
audio_data = r.record(source)
# recognize (convert from speech to text)
text = r.recognize_google(audio_data)
print(text)
...并输出.wav文件中说出的单词的文本。
当我运行以下代码时(要检查它是否适用于多个文件,我将很快将其添加到此目录中):
import os

directory = 'audiofiles'

for filename in os.listdir(directory):
with sr.AudioFile(filename) as source:
# listen for the data (load audio to memory)
audio_data = r.record(source)
# recognize (convert from speech to text)
text = r.recognize_google(audio_data)
print(text)
print('---')
...文本输出正确,但随后出现以下错误。为什么?我怎样才能解决这个问题?

ValueError: Audio file could not be read as PCM WAV, AIFF/AIFF-C, or Native FLAC; check if file is corrupted or in another format

最佳答案

有一个不是.wav文件的隐藏文件。所以我添加了if filename.endswith('.wav'):像这样:

for filename in os.listdir(directory):
if filename.endswith('.wav'):
with sr.AudioFile(filename) as source:
# listen for the data (load audio to memory)
audio_data = r.record(source)
# recognize (convert from speech to text)
text = r.recognize_google(audio_data)
print(text)
print('---')
...并且成功运行。

关于python - 为什么在目录中循环访问.wav文件时显示错误,但在不循环时工作正常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64463616/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com