GitHub精选 | 用于处理视频的 Python 库

《GitHub精选》是我们分享Github中优质项目的栏目,包括技术、学习、实用与各种有趣的内容。本期推荐的是 MoviePy一个用于视频编辑的 Python 库:剪切、串联、标题插入、视频合成(又名非线性编辑)、视频处理和创建自定义效果。

举例

这个例子中,我们打开一个视频文件,选择 t=50s 和 t=60s 之间的子剪辑,在屏幕中央添加一个标题,并将结果写入一个新文件:

from moviepy import *

video = VideoFileClip("myHolidays.mp4").subclip(50,60)

# Make the text. Many more options are available.
txt_clip = ( TextClip("My Holidays 2013",fontsize=70,color='white')
             .with_position('center')
             .with_duration(10) )

result = CompositeVideoClip([video, txt_clip]) # Overlay text on video
result.write_videofile("myHolidays_edited.webm",fps=25) # Many options...

安装

MoviePy 依赖于 Python 模块NumPyImageioDecoratorProglog,它们将在 MoviePy 安装期间自动安装。在您第一次使用 MoviePy 时,FFMPEG 软件应该会自动下载/安装(通过 imageio)(安装需要几秒钟)。如果要使用特定版本的 FFMPEG,请按照 中的说明进行操作config_defaults.py。

手动安装

$ (sudo) python setup.py install

使用 pip 安装

$ (sudo) pip install moviepy

如果你既没有setuptools也没有ez_setup安装,上面的命令就会失败。在这种情况下,在安装之前输入:

$ (sudo) pip install setuptools

对于高级图像处理,您将需要以下一个或多个软件包

  • Python Imaging Library (PIL) 或者更好的是它的分支Pillow。
  • 如果未安装 PIL 和 OpenCV,Scipy(用于跟踪、分割等)可用于调整视频剪辑的大小。
  • 一些高级图像处理可能需要Scikit Image。
  • cv2某些高级图像处理可能需要OpenCV 2.4.6或更新版本(提供包的版本)。
  • Matplotlib

文档

构建文档具有需要安装的其他依赖项。

$ (sudo) pip install moviepy[doc]

可以通过以下方式生成和查看文档:

$ python setup.py build_docs

您可以将其他参数传递给文档构建,例如干净构建:

$ python setup.py build_docs -E

更多信息:https://www.sphinx-doc.org/en/master/usage/advanced/setuptools.html

新功能:Proglog 的进度条和消息

在 1.0.0 中引入了非向后兼容的更改,以使用Proglog管理进度条和消息 ,这可以在控制台以及 Jupyter 笔记本或任何用户界面(如网站)中显示漂亮的进度条。

要显示笔记本友好的进度条,首先安装 IPyWidgets:

sudo pip install ipywidgets
sudo jupyter nbextension enable --py --sys-prefix widgetsnbextension

然后在笔记本的开头输入:

import proglog
proglog.notebook()

完整文档:https://zulko.github.io/moviepy/

相关文章

Python基础合集:Python下载安装 python下载安装教程最新

下载访问Python官网:https://www.python.org/,悬浮鼠标至Downloads,按自己的计算机系统类型选择对应的选项,我的电脑是Windows,所以按下图选择。通过官网可以看到...

全网最详细的Python自动化测试+邮件推送+企业微信推送+Jenkins

目录1. 概述1.1 python自动化1.2 邮件推送1.3 企业微信推送1.4 Jenkins自动化部署2. 项目实现2.1 python脚本2.2 运行脚本2.3 邮件推送2.4 企业微信推送2...

《Python3官方手册中文版》高清PDF免费下载!内容简直如开挂

Python 是一种易于学习又功能强大的编程语言。它提供了高效的高级数据结构,还能简单有效地面向对象编程。Python 优雅的语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应...

如何下载并安装Python 如何下载并安装小米运动APP?

之前我教你们编了很多小游戏,但是,Python该怎么下载和安装,我却没教你们。这篇文章,我要教你们如何下载并安装Python。1. 下载python进入python官网下载(链接https://www...

Python 3.12安装包下载安装教程 python3.10下载安装教程

软件简介Python 3.12是一种编程语言,知识兔使用对象,类和清晰的语法语言来帮助您创建,编辑和生成自己的应用程序。Python编程语言是为学术或商业目的而开发的许多软件应用程序的支柱,它包括一个...

Esp32安装micropython和配置webrepl记录备忘

因为之前学习Arduino编程,不可避免要不断的修改程序,每修改一次程序,都要编译一遍才能下载到esp32,太浪费时间了,也不利于调试。所以决定先用micropython做个原型,后面再用C/C++...