我试图将生成器放入模型中,但出现了以下错误:AssertionError: Cannot find installation of real FFmpeg (which comes with ffprobe).
我看过GitHub上的许多解决方案和Stack Overflow上的其他问题,但没有一个对我有效
这是我运行的命令之一:
sudo add-apt-repository ppa:mc3man/trusty-media
sudo apt-get update
sudo apt-get install ffmpeg
sudo apt-get install frei0r-plugins
pip list
还指示ffmpeg-1.4
的存在
此外,我尝试强制重新安装和更新ffmpeg,以防任何依赖项安装不正确。
我还手动设置了ffmpeg的skvideo路径:
skvideo.setFFmpegPath('/usr/local/lib/python3.6/dist-packages/ffmpeg/')
返回:/usr/local/lib/python3.6/dist-packages/skvideo/__init__.py:306: UserWarning: ffmpeg/ffprobe not found in path: /usr/local/lib/python3.6/dist-packages/ffmpeg/
warnings.warn("ffmpeg/ffprobe not found in path: " + str(path), UserWarning)
顺便说一句,当我尝试安装时,它也会返回这个错误,我不知道该怎么办:
Get:127 http://archive.ubuntu.com/ubuntu bionic/main amd64 vdpau-driver-all amd64 1.1.1-3ubuntu1 [4,674 B]
Fetched 60.4 MB in 7s (8,769 kB/s)
E: Failed to fetch http://security.ubuntu.com/ubuntu/pool/main/w/wavpack/libwavpack1_5.1.0-2ubuntu1.1_amd64.deb 404 Not Found [IP: 91.189.88.149 80]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
我运行了apt-get update --fix-missing
,但这并没有让任何事情变得更好。
有解决办法吗?
仅供参考,最好共享一个最小的笔记本,它可以复制您看到的整个问题,以澄清您到底想做什么以及它是如何出错的。在这种情况下,您可能正在寻找以下内容:
!apt-get install --no-install-recommends ffmpeg && pip install ffmpeg scikit-video
import skvideo.io
import skvideo.datasets
bbb = skvideo.datasets.bigbuckbunny()
print('bigbuckbunny is in: {}'.format(bbb))
v = skvideo.io.vread(filename)
print('shape is: {}'.format(v.shape))
(如果你已经安装了很多apt/pip,特别是如果你已经"强制"安装了各种软件包,你可能想在colab中"重置所有运行时",以获得一个干净的VM来运行上面的程序(
对于windows10用户
import skvideo
skvideo.setFFmpegPath('C:ProgramDataAnaconda3Libsite-packagesskvideoio')
快捷方式
ffmpeg链接和解压缩您可以在代码中执行此操作。确保你把解压缩文件的bin路径
import skvideo
skvideo.setFFmpegPath("D:/ffmpeg-20170125-2080bc3-win64-static/ffmpeg-
20170125-2080bc3-win64-static/bin")
永久方式
原因之一可能是ffmpeg配置不正确(并非总是如此(。
步骤1:
检查ffmpeg是否可以从cmd
访问,在命令行中键入ffmpeg
,看看它是否能识别该命令,如果不能,请下载链接并解压缩并将其添加到环境变量路径例如:
D:ffmpeg-20170125-2080bc3-win64-staticffmpeg-20170125-2080bc3-win64-staticbin
步骤2:
在命令行中使用where ffmpeg
有时可能指向错误的文件,在我的案例中,安装了imageMagick
,系统引用了
C:Program FilesImageMagick-7.0.8-Q16ffmpeg.exe
,
删除imageMagick
路径或将其放在之后
路径环境变量中的D:ffmpeg-20170125-2080bc3-win64-staticffmpeg-20170125-2080bc3-win64-staticbin
步骤3.
关闭终端,重新打开并检查where ffmpeg
,如果它显示两条路径,不要担心,但第一条路径应该是我们安装的
ffmpeg-20170125-2080bc3-win64-staticffmpeg-20170125-2080bc3-win64-staticbin
如果可以的话,你可以去
执行以下操作:
-
导入skvideo
-
skvideo.setFFmpegPath('your_environment/bin/'(
-
导入skvideo.io
-
videodata=skvideo.io.vread('your_video'(
在不混合步骤的情况下遵循顺序是很重要的。
在脚本顶部添加以下内容:
import skvideo
skvideo.setFFmpegPath('/usr/local/lib/python3.6/dist-packages/ffmpeg/')
在导入skvideo.io之前,必须设置FFmpeg路径,否则它将被忽略。
对于windows,必须指定ffmpeg路径。从这里下载适用于windows的ffmpeg:https://ffmpeg.zeranoe.com/builds/
确保下载共享版本
(如果这个链接在你看到这个时消失了,只需搜索"ffmpeg窗口",你就会找到下载(
将其提取到任何位置(例如C:\ffmpeg
(,然后指向skvideo,如下所示:
import skvideo
skvideo.setFFmpegPath("C:\ffmpeg") # you need this before the import
import skvideo.io
vid_data = skvideo.io.vread("data/mp4/train.mp4") # example path
print(vid_data.shape)
对于窗口:
1.下载ffmpeg--共享
https://ffmpeg.zeranoe.com/builds/
2.设置到/bin 的路径
import skvideo
skvideo.setFFmpegPath('D:\ProgramData\ffmpeg\ffmpeg-20190814-8fcc5d9-win64-shared\bin')
对于windows用户,此命令适用于
conda install ffmpeg -c mrinaljain17