Matplotlib-Animation"没有MovieWriters可用"

Ove*_*lex 42 python linux animation runtime-error matplotlib

在Linux下,我一直在检查matplotlib的动画类,它似乎工作,除了我不能初始化电影作家写出电影.

使用以下任一示例:

导致错误" RuntimeError:没有MovieWrite可用! "

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

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

fia*_*iat 49

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

conda install -c conda-forge ffmpeg
Run Code Online (Sandbox Code Playgroud)

这也适用于Windows.

(原始答案使用了menpo包老板,但正如@harsh所提到的那样,他们的版本在撰写时略显落后)

  • 这是金子!如果不起作用,请尝试 `plt.rcParams['animation.ffmpeg_path'] = 'yourhomepath/anaconda2/envs/yourenv/bin/ffmpeg' `! (2认同)

JPH*_*JPH 42

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

要做的是遵循安装FFmpeg的说明 - 这是(至少在Windows上)一组可执行文件,您需要在环境变量中设置路径

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

从这里下载exes.

http://ffmpeg.zeranoe.com/builds/

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

  • Windows的ImageMagick安装程序将提供ffmpeg,并且它更容易安装. (2认同)

pat*_*_ai 23

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

brew install yasm
brew install ffmpeg
Run Code Online (Sandbox Code Playgroud)


小智 13

在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)
Run Code Online (Sandbox Code Playgroud)

  • 只是让人们不必在Ubuntu的后续版本中跳转ffmpeg又回来了(真是一团糟) (3认同)

Ram*_*nez 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
Run Code Online (Sandbox Code Playgroud)

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


小智 6

我在运行单元时遇到以下错误。 在此输入图像描述

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

sudo apt install ffmpeg
Run Code Online (Sandbox Code Playgroud)

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