我使用matplotlib创建了一个动画,并尝试使用本教程中描述的方法将其保存到文件中:http://matplotlib.org/1.4.2/examples/animation/basic_example_writer.html。一切似乎都很好。动画在我的pyplot图中按预期显示,并按预期创建.mp4文件。但是,当我尝试打开文件时,Windows Media Player立即崩溃。我可以使用WMP播放其他.mp4文件,当我检查我的文件时,我发现它包含了我预期的所有元数据。我也试过逐字运行示例,结果文件也有同样的问题。
相关软件包的版本号如下: Windows 7的 Python 2.7.9 Matplotlib 1.4.2 ffmpeg N-68625-G1728659
这是我的代码的删节版本。我并不想发布整个代码,因为它包含在更大的内容中,只会让读者感到困惑。
def simulate(self):
fig = plt.figure()
ims = []
Writer = animation.writers['ffmpeg']
writer = Writer(fps=15, metadata=dict(artist="me",title="test"))
for i in range(looplen):
#####code omitted: computing imdata
im = plt.imshow(imdata)
ims.append([im])
anim = animation.ArtistAnimation(fig,ims,interval=3)
anim.save('Simulation.mp4',writer=writer)
plt.show()
return anim