MoviePy,利用Python自动剪辑tiktok视频

ops/2025/2/12 15:44:49/

Python剪辑视频是非常强大的,而且能流水线批量操作,可以使用MoviePy库实现。

最近看到一个Github项目,作者利用Python写了一个自动生成tiktok视频的脚本,受到热捧。

现在像抖音、tiktok上有很多流水线生产的视频,不少视频博主靠这个赚了很多,我觉得蛮有意思,这里分享给大家。

仔细看了下该项目,作者主要从游戏视频网站中爬取视频素材,然后从reddit论坛中截取有意思的问答,最后利用Python的MoviePy库剪辑视频,把收集来的素材拼接到一起。

这种视频生产方式几乎不需要人工参与,一天可以剪辑上百个视频,可以先看看作者给出的案例视频效果。

00:59

其实国内的抖音、快手平台也适合这种自动化视频的模式,靠量取胜,有兴趣的小伙伴可以试试。

下面来讲讲作者用到的视频编辑库-MoviePy,一个非常经典的视频工具。

MoviePy是一个用于视频编辑的Python模块,它可被用于一些基本操作(如剪切、拼接、插入标题)、视频合成(即非线性编辑)、视频处理和创建高级特效。它可对大多数常见视频格式进行读写,包括MP4、GIF等。

比如说打开一个视频:

安装MoviePy可以通过PIP来实现,当然会需要一些依赖库,比如Numpy, imageio, Decorator, tqdm等,还有FFMPEG 软件。

pip install moviepy

MoviePy的使用也非常简单,它的核心对象是剪辑,提供了多种函数实现对视频的复杂操作。

具体的编辑功能可以去MoviePy官网去查阅,非常的详细。

https://zulko.github.io/moviepy/

有趣的是MoviePy可以结合Matplotlib,制作动态的图表。

import matplotlib.pyplot as plt
import numpy as np
from moviepy.editor import VideoClip
from moviepy.video.io.bindings import mplfig_to_npimagex = np.linspace(-2, 2, 200)duration = 2fig, ax = plt.subplots()
def make_frame(t):ax.clear()ax.plot(x, np.sinc(x**2) + np.sin(x + 2*np.pi/duration * t), lw=3)ax.set_ylim(-1.5, 2.5)return mplfig_to_npimage(fig)animation = VideoClip(make_frame, duration=duration)
animation.write_gif('matplotlib.gif', fps=20)

动图封面

最后,你可以去研究下Github上自动化视频的代码,自己配合有趣的素材,就可以批量生产视频,说不定有很大的商机。


http://www.ppmy.cn/ops/157122.html

相关文章

如何打开vscode系统用户全局配置的settings.json

📌 settings.json 的作用 settings.json 是 Visual Studio Code(VS Code) 的用户配置文件,它存储了 编辑器的个性化设置,包括界面布局、代码格式化、扩展插件、快捷键等,是用户全局配置(影响所有…

apisix的real-ip插件使用说明

k8s集群入口一般都需要过负载均衡,然后再到apisix。 这时候如果后台业务需要获取客户端ip,可能拿到的是lb或者网关的内网ip。 这里一般要获取真实ip需要做几个处理。 1. 负载均衡上,一般支持配置获取真实ip参数,需要配置上。然…

第八届大数据与应用统计国际学术研讨会(ISBDAS 2025)

重要信息 官网:www.is-bdas.org 时间:2025年2月28-3月2日 地点:中国 广州 主办单位:广东省高等教育学会人工智能与高等教育研究分会 协办单位:北京师范大学人工智能与未来网络研究院、人工智能与大数据科研基地 …

微信小程序案例1——制作猫眼电影底部标签导航栏

文章目录 一、项目步骤1 新建一个无AppID的movie项目2将准备好的底部标签导航图标拷贝到movie项目下面(将图标文件夹image放到项目文件夹里)3 打开App.json配置文件,在pages数组里添加4个页面路径:电影“pages/movie/movie”、影院“pages/cinema/cinema…

USB枚举过程及Linux下U盘识别流程

USB枚举过程及Linux下U盘识别流程 USB枚举过程Linux 内核U盘识别流程打开内核动态输出时候的U盘插拔log内核工作队列检测HUB端口变化hub_event() 函数hub_port_connectUSB连接去抖枚举USB设备hub_port_initUSB接口与USB设备匹配USB接口驱动USB-STORAGE 接口驱动中USB 识别并添加…

【Python实战练习】Python类中的方法:形式与作用详解

文章目录 Python类中的方法:形式与作用详解1. 实例方法 (Instance Method)定义与使用作用2. 类方法 (Class Method)定义与使用作用3. 静态方法 (Static Method)定义与使用作用4. 特殊方法 (Magic/Dunder Methods)常见的特殊方法定义与使用作用5. 抽象方法 (Abstract Method)定…

.net一些知识点5

1.dot Net带out的参数如何使用 string name;//假设这个参数带out TestMethod(1,out name);//一定要有out 方法体中,一定要有out参数的赋值,并且能输出 2.参数的传递方式有哪些 a.值传递 b.引用传递 ref c.输出传递 out 3.设计模式知道哪些 3.us…

《机器学习数学基础》补充资料:矩阵基本子空间

秩-零化度定理是线性代数中第一个基本定理,本文介绍的“矩阵基本子空间”,是第二定理。 定理2:矩阵基本子空间 对于 m n m\times n mn 的矩阵 A \pmb{A} A (仅讨论实数矩阵),用线性变换表示 A : R n …