栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

用 Python 玩视频剪辑 让生活简易化

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

用 Python 玩视频剪辑 让生活简易化

Python 剪辑
  • 自动化剪辑
    • 单视频剪辑
    • 多视频混剪拼接
      • 自动拼接
      • 自定义拼接
    • 视频生成 GIF 动画

自动化剪辑

  平时会遇到一些需要保存视频里的部分片段,而不会使用剪辑软件的朋友或者觉得视频软件剪辑麻烦的朋友,可以使用 Python 代码进行剪辑。Python 代码进行剪辑只需要传入四个基础参数就可以自动进行剪辑。

单视频剪辑
from moviepy.editor import *

"""
org_mov : 原始文件地址 如:D:Code_summaryUserusering视频_音频_剪辑video.mp4

ite: 剪辑参数  [new_mov, start, stop]
new_mov 剪出来的视频文件地址  如:D:Code_summaryUserusering视频_音频_剪辑video_new.mp4 、 video_new.mp4
start 开始的 时间  单位: S		如 00:01:30 开始就需要传入  90
stop  结束的 时间  单位: S		如 00:02:30 结束就传入	150
"""

clip = VideoFileClip(org_mov)	# 初始化 需要剪辑的原始视频对象
new_mov, start, stop = ite		# 需要的剪辑参数
# 命名 , 开始时间 , 结束时间
clop = clip.subclip(start, stop)	# 剪辑的片段规定;需要始末 秒数 S
# 将剪切的片段保存
clop.write_videofile(new_mov)	# 保存 片段 视频

  可以通过上述方法,将其中的一个小片段另存为,方法简单不需要打开任何软件。

多视频混剪拼接 自动拼接

  concatenate_videoclips 这个方法可以直接将剪裁好的片段对象列表进行拼接连接。

def cut_music(org, select, new_file):
    """
    :param org:     原始 视频
    :param select:   需要 截取的 片段时间
    :param new_file:    最终保存的文件名字
    :return:    最终生成一个 需要截取出来的 视频文件
    """
    org_video = VideoFileClip(org)

    clip_video = []
    for item in select:
        start, stop = item		# 这里需要 时间段
        clip_video.append(org_video.subclip(start, stop))
    # 剪辑50-60秒的视频 00:00:50 - 00:00:60

    video = concatenate_videoclips(clip_video)  # 自动拼接合成
    video.write_videofile(new_file)
自定义拼接

  CompositeVideoClip 这个方法可以将片段进行自定义的拼接,也可以加入转场特效等。

# 视频 可以分段定时插入拼接
video = CompositeVideoClip([video1, video2.set_start(5).crossfadein(1)])  # 先播放video1,在第五秒开始video2播放,并以“渐入”的特效显示

# 视频 也可以 通过定位坐标实现多视频 同时显示拼接
video = CompositeVideoClip([video1.set_pos((0, 150), video2.set_pos((100, 150))])

  使用 自定义拼接时需要注意,若不给定任何参数进行拼接时,会导致出现在同一个时间段出现多条声音混合播放,并且后面的视频会覆盖之前的图像。

视频生成 GIF 动画
def creat_gif():
    # 生成 gif 图片
    # 剪辑50-60秒的音乐 00:00:50 - 00:00:60
    video = CompositeVideoClip([VideoFileClip("video.mp4").subclip(50, 60)])

    video.write_gif('test.gif', fps=12)
	通过上述方法就可以完成简易的视频剪辑了,并且剪辑时完全可以去做其他的事情,只需要下载 Python 并且规划好视频的时间与拼接规则即可。
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/931561.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号