moviepy 视频剪辑,拼接,合成

在视频处理中常会遇见需要将两段视频剪切拼接的问题。怎样用moviepy解决呢?

目录

一、视频剪辑

二、 视频拼接

三、视频合成


一、视频剪辑

1.subclip

from moviepy.editor import *

aviFileName1 = r'待处理视频1.mp4'
aviFileName2 = r'待处理视频2.mp4'
aviFileNameResult = r'D:\录屏视频\合成、带字幕.mp4'

video1 = VideoFileClip(aviFileName1).subclip(t_start=3,
                                             t_end=(8,30))
#将第一个视频从第3秒剪到8分30秒。时分秒用,隔开。比如一小时24分钟30秒,写成(1,24,30)

2.subclip
video2 = VideoFileClip(aviFileName2).cutout(0, 5) # 剪掉0到5秒

二、 视频拼接

finalclip = concatenate_videoclips([video1, video2])
finalclip.write_videofile("my_concatenate.mp4")

效果:先播放video1,在播放video2

三、视频合成

CompositeVideoClip将视频合成。

final = CompositeVideoClip([video1, video2])  #video2会覆盖在video1之上
final = CompositeVideoClip([video1, video2.set_start(5).crossfadein(1)])  #先播放video1,在第五秒开始video2播放,并以“渐入”的特效显示
指定位置,将两个视频在同一画面播放。假设我们已经选用了合适的尺寸的两个视频,计算尺寸使视频不会覆盖。
video = CompositeVideoClip([
                            video1.set_pos((0,150),
                            video2.set_pos((100,150))
                            ])

位置座标系:

 

 CompositeVideoClip通常用于版权(logo)添加,字幕合成等。

logo添加:使用python的moviepy做视频版权、logo添加

字幕添加:使用moviepy为视频添加字幕

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章