69

在Linux下,我一直在检查matplotlib的动画类,它似乎可以工作,只是我无法初始化电影作者来写出电影。

使用任一示例:

导致错误“ RuntimeError: No MovieWriters available!

我使用 matplotlib 1.3.x 版并安装(希望)所有编解码器。

有人可以建议我为什么会收到此错误吗?如果是编解码器问题,我应该安装哪些编解码器(+版本)?如果它的其他东西坏了,是否有在 python 中创建动画的替代方法?

4

9 回答 9

104

对于使用 Anaconda 的谷歌同事,请安装ffmpeg包:

conda install -c conda-forge ffmpeg

这也适用于 Windows。

(原始答案使用menpo包所有者,但正如@harsh 所提到的,他们的版本在撰写本文时有点落后)

于 2017-06-11T11:05:59.313 回答
54

有同样的问题....设法让它在一段时间后工作。

要做的是按照安装 FFmpeg 的说明进行操作 - 这是(至少在 Windows 上)您需要在环境变量中设置路径的可执行文件包

http://www.wikihow.com/Install-FFmpeg-on-Windows

从 ffmpeg.org 下载

希望这对某人有所帮助 - 即使在问题之后一段时间 - 祝你好运

于 2013-01-29T02:53:47.307 回答
30

我知道这个问题是关于 Linux 的,但如果有人像我在这里所做的那样在 Mac 上偶然发现这个问题,那就是解决方案。我在 Mac 上遇到了完全相同的问题,因为ffmpeg默认情况下显然没有安装,所以我可以使用以下方法解决它:

brew install yasm
brew install ffmpeg
于 2016-10-20T13:05:37.013 回答
14

在Linux下也有同样的问题。默认情况下, animate.save 方法使用的是 ffmpeg,但它似乎已被弃用。 https://askubuntu.com/questions/432542/is-ffmpeg-missing-from-the-official-repositories-in-14-04

解决方案:安装一些编码器,如 avconv 或 mencoder。在调用中提供替代编码器:

ani.save('the_movie.mp4', writer = 'mencoder', fps=15)
于 2014-09-05T08:12:57.813 回答
7

如果您使用的是 Ubuntu 14.04 ffmpeg,则不可用。您可以使用https://www.ffmpeg.org/download.html中的说明直接安装它。

简而言之,您必须:

sudo add-apt-repository ppa:mc3man/trusty-media
sudo apt-get update
sudo apt-get install ffmpeg gstreamer0.10-ffmpeg

如果这不起作用,可以尝试使用sudo apt-get dist-upgrade,但这可能会破坏系统中的东西。

于 2016-08-13T17:34:57.510 回答
3

运行单元时出现以下错误。 在此处输入图像描述

这可能是由于ffmpeg您的系统中没有。在终端中尝试以下命令。

sudo apt install ffmpeg

这对我有用。我希望它也适合你。

于 2020-05-24T07:31:36.670 回答
1

我正在运行 Ubuntu 20,我遇到了类似的问题

安装了ffmpeg

pip install ffmpeg

然后

sudo apt install ffmpeg

于 2020-10-11T20:16:13.593 回答
0

(请务必遵循上面关于正确 ffmpeg 下载的 JPH 反馈)不知道为什么,但在我的情况下,这是一个有效的方法(在我的情况下是在 Windows 上)。

初始化一个作家:

import matplotlib.pyplot as plt
import matplotlib.animation as animation
Writer = animation.FFMpegWriter(fps=30, codec='libx264')  #or 
Writer = animation.FFMpegWriter(fps=20, metadata=dict(artist='Me'), bitrate=1800) ==> This is WORKED FINE ^_^

Writer = animation.writers['ffmpeg'] ==> GIVES ERROR ""RuntimeError: Requested MovieWriter (ffmpeg) not available""

于 2019-04-18T22:55:32.227 回答
0

如果出现错误“MovieWriter imagemagick 不可用;请改用 Pillow。” 弹出,尝试通过以下方式显式导入 PillowWriter 以另存为 mp4-File:

from matplotlib.animation import FuncAnimation, PillowWriter
于 2021-12-06T16:11:16.147 回答