Jupyter Notebook 中的 FileNotFoundError,即使文件存在

FileNotFoundError in Jupyter Notebook, even though the file is there

这一切都是用 Jupyter Notebook 在线编写的。应该发生的是,代码的第一行是一个命令,它将标记为 "capstone" 的文件夹中的某些文件转换为 mp4。这工作正常,但是我 运行 遇到的问题是 "FileNotFoundError",我不确定为什么会这样,因为我检查文件是否存在,实际上是那里。

!ffmpeg -i recording1.mov -q:v 0 output.mp4

import librosa
audio_path = '/home/gentry/capstone/output1.mp4'
x , sr = librosa.load(audio_path)
print(type(x), type(sr))

import matplotlib.pyplot as plt
import librosa.display
plt.figure(figsize=(14, 5))

librosa.display.waveplot(x, sr=sr)

X = librosa.stft(x)
Xdb = librosa.amplitude_to_db(abs(X))
plt.figure(figsize=(14, 5))

librosa.display.specshow(Xdb, sr=sr, x_axis='time', y_axis='hz') 

librosa.display.specshow(Xdb, sr=sr, x_axis='time', y_axis='log')

输出应该是声音的可视化波形,以及随后的两个傅立叶变换图。 我可以根据要求提供更多详细信息

好的,我将对您的代码进行小幅修改,使所有路径成为相对路径,因此错误可能不是您编写的错误的手动字符串路径。

首先我运行这个命令是:

!ffmpeg -i recording1.mov -q:v 0 output.mp4

然后确保我的输出正确

!ls | grep output

应该给你

output.mp4

然后我知道这个文件和我的notebook在同一个目录下,我将加载命令如下

import librosa
audio_path = './output.mp4'
x , sr = librosa.load(audio_path)
print(type(x), type(sr))

这完美地工作并加载了音频组件,我的无花果可能与你的完全不同,因为我使用的是一些 运行dom 视频而不是你的输入视频,因为它没有提供

这实际上只是路径不同的一个简单错误,因为这是一位教授提供给我的,所以 audio_path = '/home/gentry/capstone/output1.mp4' 实际上应该只是 audio_path = './output1.mp4'