ffmpeg:文件未找到,但显然可以访问

ffmpeg:文件未找到,但显然可以访问

要么是我犯了一个非常愚蠢的错误,要么是我在这里偶然发现了一个非常奇怪的错误。我在 bash 中,我想使用 ffmpeg 将 .flac 转换为 .mp3。运行

ffmpeg -i 3\ -\ Thirty\ Seconds\ to\ Mars\ -\ Rescue\ Me.flac 3\ -\ Thirty\ Seconds\ to\ Mars\ -\ Rescue\ Me.mp3

结果是3 - Thirty Seconds to Mars - Rescue Me.flac: No such file or directory,尽管statls都显示该文件对当前用户具有读取权限,但我甚至可以使用来查看其内容less

我怀疑文件名有问题,所以我将文件重命名为asdf.flac,这有效,但ffmpeg -i asdf.flac asdf.mp3仍然给我asdf.flac: No such file or directory

为了排除权限问题,我已经chmod -R 777 .使目录和所有文件都是全世界可读和可写的,但仍然没有机会。

尽管该文件显然存在,但有什么原因可能导致 ffmpeg 找不到它?

答案1

@kamil-maciorowski 为我指明了正确的方向。

lukas@Server:~$ type ffmpeg
ffmpeg ist /usr/local/bin/ffmpeg

这让我想起了一个firejail设置。

lukas@Server:~$ file /usr/local/bin/ffmpeg
/usr/local/bin/ffmpeg: symbolic link to /usr/bin/firejail

确认了这一点。所以显然ffmpeg是在监狱中运行。我不知道我firejail在那台机器上设置了什么,但/usr/bin/ffmpeg直接运行是有效的。所以监狱有一个限制,即不将输入文件列入白名单。

相关内容