美文网首页
使用 python 剪辑/合成 短视频

使用 python 剪辑/合成 短视频

作者: 清风徐来_简 | 来源:发表于2019-04-13 23:52 被阅读0次

    工具准备

    """
    pip install natsort (视频按序号排序)
    pip install moviepy(核心)
    ffmpeg工具(必须)
    ImageMagick工具(可选)
    """

    MoviePy依赖于Python模块NumpyimageioDecoratortqdm,它们将在MoviePy的安装过程中自动安装。首次使用MoviePy时,应自动下载/安装软件FFMPEG(可通过imageio方式安装)。

    示例1:合成视频

    # 主要是需要moviepy这个库
    from moviepy.editor import *
    import os
    from natsort import natsorted
    # 定义一个数组
    L = []
    
    # 访问 video 文件夹 (假设视频都放在这里面)
    for root, dirs, files in os.walk(r"C:\Users\hao\Downloads"):
        # 按文件名排序
        files = natsorted(files)
        # 遍历所有文件
        for file in files:
            # 如果后缀名为 .ts
            if os.path.splitext(file)[1] == '.ts':
                # 拼接成完整路径
                filePath = os.path.join(root, file)
                # 载入视频
                video = VideoFileClip(filePath)
                # 添加到数组
                L.append(video)
    
    # 拼接视频
    final_clip = concatenate_videoclips(L)
    
    # 生成目标视频文件
    final_clip.to_videofile(r"C:\Users\hao\Desktop\video.mp4", fps=24, remove_temp=False)
    

    示例2:视频剪辑,选择50s和60s之间的子剪辑

    from moviepy.editor import *
    
    video = VideoFileClip("E:\励志小熊.mp4").subclip(50,60)
    # 从10秒开始到视频结尾前12秒 .subclip(10, video.duration-12)
    result = CompositeVideoClip([video, ]) 
    result.write_videofile("E:\励志小熊1.mp4",fps=25) 
    

    用 cmd 命令行合成 ts 视频,相当快

    相关文章

      网友评论

          本文标题:使用 python 剪辑/合成 短视频

          本文链接:https://www.haomeiwen.com/subject/yzmdwqtx.html