使用FFmpeg和IPython

使用FFmpeg和IPython,python,matplotlib,ffmpeg,Python,Matplotlib,Ffmpeg,我对Python比较陌生(我更多地使用了MATLAB)。我基本上希望能够制作和保存动画。所以我去检查了它是怎么做的,发现了这个: 我直接将代码复制/粘贴到IPython笔记本中 我知道必须安装ffmpeg,我想我已经安装了(根据)。路径为C:/ffmpeg。当我在命令提示符下尝试ffmpeg-version时,它确实起作用。它也可以在WinPython的命令提示符下工作。我不知道这是否有帮助,但Ipython的路径是: C:\Users\Sal\WinPython-32bit-3.3.2.3\

我对Python比较陌生(我更多地使用了MATLAB)。我基本上希望能够制作和保存动画。所以我去检查了它是怎么做的,发现了这个:

我直接将代码复制/粘贴到IPython笔记本中

我知道必须安装ffmpeg,我想我已经安装了(根据)。路径为C:/ffmpeg。当我在命令提示符下尝试ffmpeg-version时,它确实起作用。它也可以在WinPython的命令提示符下工作。我不知道这是否有帮助,但Ipython的路径是: C:\Users\Sal\WinPython-32bit-3.3.2.3\python-3.3.2\Scripts/

然而,它仍然不起作用。给出的错误是: AttributeError:“str”对象没有“正在保存”属性 当然,此错误发生在.save命令中。 我甚至试着添加下面的内容。不做任何额外的事。 writer='ffmpeg'

我使用的是Windows7,WinPython3.3


非常感谢

在开始使用完全相同的示例处理动画时,我遇到了完全相同的错误。首先,

我使用的是Windows7、Python 2.7.6、matplotlib 1.3.1

简短回答:试着自己设置FFMpegWriter

mywriter = animation.FFMpegWriter()
anim.save('mymovie.mp4',writer=mywriter)
详细回答:我很确定
matplotblib.animation.save
下面是一行

if is_string_like(writer):
捕捉这样一种情况:用户定义的writer实际上不是writer函数,而是它的名称。然后它实例化该编写器的一个实例(如果可用)

if writer in writers.avail:
     writer = writers[writer](fps, codec, bitrate,
                              extra_args=extra_args,
                              metadata=metadata
但是,如果用户定义的writer不在
writers.avail中,那么这就是错误所在

writer = writers.list()[0]

它本身返回一个包含要使用的编写器名称的字符串。但是,这个字符串并不用于实际实例化writer对象

张贴代码中发生错误的相关部分。您使用的是什么版本的mpl?动画编写器支持是(相对)新的。@Kreger51保存动画成功了吗?我也有同样的问题!!我不知道为什么我不能使用命令
anim.save('mymovie.mp4',writer=mywriter)
生成avi文件,我收到了一条错误消息!谢谢你的简短回答对我很有用。一个小注释:为了与一致,它应该是
animation.FFMpegWriter()
,而不是
animator.FFMpegWriter()
@Sascha。您能指定哪种方法是正确的吗?我尝试在一个程序中保存用Python创建的动画,但没有成功!Thanks@Strömungsmechanik如果正确安装了ffmpeg,那么简短的回答应该可以。然而,在阅读其他关于动画问题的帖子时,您似乎没有在这里讨论这个问题。您尝试过上面的教程示例吗?@Sascha matplotlib github站点上是否列出了此错误?(我查看了一下,没有找到。)如果没有,请报告,以便修复。@Stretch我几个月前报告了该错误,正在修复中。但是,它将在matplotlib版本1.4.0中发布,该版本尚未设置到期日期。发行号为#2651。