python 模块 moviepy 视频剪辑
原创
©著作权归作者所有:来自51CTO博客作者ghostwritten的原创作品,请联系作者获取转载授权,否则将追究法律责任
文章目录
- 1. 安装 moviepy
- 2. 视频剪辑
- 3. 视频拼接
- 4. 逐帧变化
- 5. 导出GIF
- python 3.10.0源码编译安装
- python pip 安装
打开新世界大门了,视频剪辑还能这样玩,我真tm奥特了。
1. 安装 moviepy
2. 视频剪辑
from moviepy.editor import*
# 剪辑50-60秒的音乐 00:01:20 - 01:07:10
video =CompositeVideoClip([VideoFileClip("E:\视频\美剧\边缘世界\边缘世界第一季01集.mp4").subclip(70,80)])
# 写入剪辑完成的音乐
video.write_videofile("E:\视频\美剧\边缘世界\边缘世界第一季01集_1.mp4")
3. 视频拼接
from moviepy.editor importVideoFileClip, concatenate_videoclips
clip1 =VideoFileClip("myvideo.mp4")
# 结合剪辑,你甚至能够完全自动化剪辑拼接视频的操作
clip2 =VideoFileClip("myvideo2.mp4").subclip(50,60)
clip3 =VideoFileClip("myvideo3.mp4")
final_clip = concatenate_videoclips([clip1,clip2,clip3])
final_clip.write_videofile("my_concatenation.mp4")
4. 逐帧变化
那你能完成针对每一帧图像的快速图像处理吗?PR 可是做得到的哦”
那当然可以,教你如何反转视频每一帧的绿色和蓝色通道:
from moviepy.editor importVideoFileClip
my_clip =VideoFileClip("videoplayback.mp4")
def scroll(get_frame, t):
"""
处理每一帧图像
"""
frame = get_frame(t)
frame_region = frame[:,:,[0,2,1]]
return frame_region
modifiedClip = my_clip.fl(scroll)
modifiedClip.write_videofile("test.mp4")
5. 导出GIF
from moviepy.editor import*
# 剪辑50-60秒的音乐 00:00:50 - 00:00:60
video = CompositeVideoClip([VideoFileClip("videoplayback.mp4").subclip(50,60)])
my_clip.write_gif('test.gif', fps=12)
参考: