音频文件无法读取为 PCM WAV、AIFF/AIFF-C 或 Native FLAC;检查文件是不是损坏或其他格式
Posted
技术标签:
【中文标题】音频文件无法读取为 PCM WAV、AIFF/AIFF-C 或 Native FLAC;检查文件是不是损坏或其他格式【英文标题】:Audio file could not be read as PCM WAV, AIFF/AIFF-C, or Native FLAC; check if file is corrupted or in another format音频文件无法读取为 PCM WAV、AIFF/AIFF-C 或 Native FLAC;检查文件是否损坏或其他格式 【发布时间】:2021-08-03 06:17:48 【问题描述】:import os
import speech_recognition as sr
command = "ffmpeg -i videototext.mp4 videototext.mp3"
os.system(command)
commandwav = "ffmpeg -i videototext.mp3 videototext.wav"
os.system(commandwav)
AUDIO_FILE = "videototext.wav"
r = sr.Recognizer()
videototext = sr.AudioFile(AUDIO_FILE)
with videototext as source:
audio = r.record(source, duration=100)
print(type(audio))
print(r.recognize_google(audio))
上面是我的代码,那么错误是:音频文件无法读取为 PCM WAV、AIFF/AIFF-C 或 Native FLAC;检查文件是否损坏或其他格式。
【问题讨论】:
您的问题的答案正是在错误消息中。你的ffmpeg
支持mp3吗?
是的,我的文件夹中确实生成了videototext.mkv、videototext.mp3、videototext.wav,但是程序最终会因为这个bug生成的.txt文件一直没有生成:((
恐怕我没有完全得到你的答案。您能否在问题中详细说明您的问题并完整粘贴错误,如您的程序产生的那样?请不要截图和格式化。
我的主要目的是将录屏的word文件(从0到完整的文本)转成文本文件,录屏文件为.mp4文件(无声音)。目前我的程序可以将 .mp4 转换为 mp3、mkv、wav 文件。但由于此错误:“音频文件无法读取为 PCM WAV、AIFF/AIFF-C 或 Native FLAC;检查文件是否损坏或其他格式。”我无法生成最终的文本文件。我该如何解决这个问题:((
当我们要求粘贴错误时,这意味着您应该粘贴带有错误的完整堆栈跟踪,而不仅仅是消息。目前看来您的ffmpeg
不支持mp3。
【参考方案1】:
这也让我发疯了; 路径显然是问题所在。有几种解释,如下面的解释,告诉您修改为 C:\ffmpeg\bin (例如:https://windowsloop.com/install-ffmpeg-windows-10/) 和其他解释相同的人不起作用。
我的解决方案是修改anaconda3路径的路径: C:\Users\YOURPATH\anaconda3\Lib\site-packages\ffmpeg\bin
然后我需要重新启动计算机才能使注册表更改生效!
不要忘记最后一步...
不寻常的是ffmpeg无法创建,使用路径无需用户修改路径(脏)。
【讨论】:
以上是关于音频文件无法读取为 PCM WAV、AIFF/AIFF-C 或 Native FLAC;检查文件是不是损坏或其他格式的主要内容,如果未能解决你的问题,请参考以下文章
如何将wav音频文件格式为pcm转化为ima adpcm格式
wav音频文件解析读取 定点转浮点分析 幅值提取(C语言实现)