编程python如何制作动画_python – 如何为matplotlib.animation正确启用ffmpeg?

到目前为止,我已经在堆栈上覆盖了大量的内容,试图让ffmpeg继续下去,这样我就可以制作一个间隔拍摄视频.

我在CentOS 7机器上,运行python3.7.0a0.

python3

>>> import numpy as np

>>> np.__version__

'1.12.0'

>>> import matplotlib as mpl

>>> mpl.__version__

'2.0.0'

>>> import mpl_toolkits.basemap as base

>>> base.__version__

'1.0.7'

我在安装ffmpeg时找到了this github gist.我使用了铬源,并且没有使用前缀选项安装(使用默认值).

我已经确认安装了ffmpeg,虽然我不知道测试它是否有效.

which ffmpeg

/usr/local/bin/ffmpeg

ffmpeg -version

ffmpeg version N-83533-gada281d Copyright (c) 2000-2017 the FFmpeg dev elopers

built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-11

configuration:

libavutil 55. 47.100 / 55. 47.100

libavcodec 57. 80.100 / 57. 80.100

libavformat 57. 66.102 / 57. 66.102

libavdevice 57. 2.100 / 57. 2.100

libavfilter 6. 73.100 / 6. 73.100

libswscale 4. 3.101 / 4. 3.101

libswresample 2. 4.100 / 2. 4.100

我尝试运行一些我在网上找到的示例:

一切正常,直到我尝试保存动画文件.

[1]

anim.save('basic_animation.mp4',writer = FFwriter,fps=30,extra_args=['-vcodec','libx264'])

[2]

im_ani.save('im.mp4',writer=writer)

我发现here明确地设置ffmpeg的路径可能是必要的,所以我将它添加到测试脚本的顶部:

plt.rcParams['animation.ffmpeg_path'] = '/usr/local/bin/ffmpeg'

我在代码中尝试了一些调整,但总是得到相同的响应,我不知道如何开始解密:

Traceback (most recent call last):

File "testanim.py",line 27,in

我的配置是否存在格式错误的内容?我搜索谷歌这个错误已经有一段时间了,但从未找到任何与动画/ ffmpeg相关的内容.任何帮助将不胜感激.

更新:

我遇到了安装x264编码依赖项的问题. libavcodec / * .c中的一些文件(在make输出中)报告了对几个函数的未定义引用.经过一场野鹅追逐后发现:https://mailman.videolan.org/pipermail/x264-devel/2015-February/010971.html

要修复x264安装,我只需添加一些配置标志:

./configure --enable-static --enable-shared --extra-ldflags="-lswresample -llzma"

更新:

所以在修复libx264问题后一切安装正常.我继续将ffmpeg_build文件夹中的ffmpeg二进制文件复制到/usr/local/bin / ffmpeg中.

运行脚本后,我遇到了ffmpeg无法找到libx264共享对象的问题.我想我将不得不使用不同的前缀重新编译所有内容.我的直觉告诉我,在我搞乱了所有东西之后,有一些旧文件存在,使用了一些破坏的配置.

所以我决定也许我应该尝试使用NUX:http://linoxide.com/linux-how-to/install-ffmpeg-centos-7/

我使用新的rpm安装了ffmpeg,但无济于事.由于缺少共享对象,我仍然无法运行ffmpeg.

最后,我没有将usiong文件复制到我的/usr/local/bin文件夹中,而是直接从build bin目录运行ffmpeg.事实证明这确实有效!

所以从本质上讲,如果我想在系统范围内安装ffmpeg,我需要再次从源手动编译,但使用非本地前缀.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Pythonmatplotlib库中有一个模块叫做animation,可以用来制作动画。它可以用于创建各种类型的动画,比如线性动画、散点图动画、曲线动画等等。 要用matplotlib.animation制作动画,首先需要导入相关的模块。然后创建一个画布和子图,并在子图中添加要展示的数据。接下来创建一个动画函数,用于更新画布中的数据。最后使用FuncAnimation函数来创建动画,指定动画函数、更新频率等参数。 具体来说,可以通过以下步骤来画一个简单的动画:首先导入相关的模块和数据;然后创建一个画布和子图,并在子图中添加要展示的数据;接下来创建一个动画函数,用于在每帧中更新画布中的数据;最后使用FuncAnimation函数来创建动画,指定动画函数、更新频率等参数。 在动画函数中,可以使用matplotlib提供的各种绘图函数来更新画布中的数据,比如plot函数、scatter函数、set_data函数等。同时,可以通过设置动画函数的参数来控制动画的帧数、间隔时间等。最后调用show函数来展示动画。 总之,使用matplotlib.animation制作动画非常简单,只需要几行代码就可以实现各种类型的动画效果。而且matplotlib库本身提供了丰富的绘图函数,可以轻松实现各种动画效果。因此,python matplotlib.animation是一个非常强大的工具,适用于数据可视化、科学计算等各种领域。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值