用Python剪辑视频?太简单了
创始人
2024-04-01 22:35:10
0

人生苦短,快学Python!

最近我在网上下载一个视频,结果下载到本地是近百个视频片段,为了方便观看只能将这些片段合并为一个视频整体。

不过我并没有搜到能够处理类似情况的小工具,只是发现剪映等软件可以实现视频合并功能。但是为此下载一个视频剪辑软件,再将一百个视频导进去,最后重新渲染视频也要花费不少时间。

那我,还不如干脆写个Python小脚本,让程序自己慢慢跑去。

MoviePy

MoviePy是一个用于视频编辑的Python模块,你可以用它实现一些基本的操作(比如视频剪辑,视频拼接,插入标题),还可以实现视频合成,还有视频处理,抑或用它加入一些自定义的高级的特效。

# 先安装moviepy模块
pip install moviepy

结合我们前文的需求,搭配使用os模块和MoviePy就可以实现视频片段的合并。

在交互式环境中输入如下命令:

from moviepy.editor import *
import os
L = []# Python视频片段存放的文件夹
for root, dirs, files in os.walk(r"D:\视频\Python视频"):files.sort()  # 按文件名排序for file in files: # 遍历所有文件if os.path.splitext(file)[1] == '.mp4': # 筛选后缀名为.mp4的视频文件filePath = os.path.join(root, file)     # 拼接完整文件路径video = VideoFileClip(filePath)   # 载入视频L.append(video) # 添加到数组final_clip = concatenate_videoclips(L)final_clip.to_videofile("合并视频.mp4", fps = 30, remove_temp = False)

由于视频片段比较多,总时长也比较长,因此运行特别慢。

不过最后,还是成功得到了合并后的Python学习视频。

实际上,这只是MoviePy模块最最简单的应用,它还可以用在剪辑视频的方方面面。

更多应用

比如我们可以使用MoviePy模块截取视频的一部分,并对被定格的一帧画面进行处理,从而实现下图一样的定格视频效果。

还可以给视频增加各种特效,比如给MoviePy Logo做一个闪动的阴影效果。

如果我们使用MoviePy模块对视频进行截取GIF,把截取的GIF进行ASCII字符转换。

最后将被ASCII字符转换成的图片合并成新视频,再添加背景音乐,就可以实现B站特别火的字符画视频

其实放开思路,Python在视频剪辑方面的应用也很多。

比如我还发现有人通过音频剪辑的方式,对音频进行二次处理。

这种方式,能够一次性过滤停顿、杂音和静音,得到新的音频文件。

从此以后,人人都是“通辽可汗”!

如果你对Python进行视频剪辑方面感兴趣,记得多多点赞支持一下,点赞数比较多的话,我会继续分享相关案例。

参考资料:

[1]ucsheep: MoviePy实战案例-给MoviePy_Logo做一个闪动的阴影效果

[2]Dragon少年: 见过仙女蹦迪吗?一起用python做个小仙女代码蹦迪视频


最近我花了两年写的新书已经上市,也算是我在CSDN博客分享Python知识3年的一个总结!

《快学Python:自动化办公轻松实战》点击蓝字查看书籍详情,感谢支持

相关内容

热门资讯

前端-session、jwt 目录:   (1)session (2&#x...
linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
<C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...