python根据时间段拆分视频并且合并(高效快速)

复制代码
# coding=utf-8
__author__ = 'Administrator'

import time
from moviepy.editor import VideoFileClip, concatenate_videoclips

"""
def print_time():
    now = time.time()
    r = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(now))
    print(r)

path1 =r'D:/1/biaoqing/video.mp4'
path2 =r'D:/1/biaoqing/video_0002.mp4'
desc_path=r"D:/1/biaoqing/my_concatenation.mp4"
print_time()
clip1 =VideoFileClip(path1).subclip(11,15)
print_time()
clip2 =VideoFileClip(path2)
print_time()
# 结合剪辑,你甚至能够完全自动化剪辑拼接视频的操作
# clip2 =VideoFileClip("myvideo2.mp4").subclip(50,60)
final_clip = concatenate_videoclips([clip1,clip2])
print_time()
# final_clip = concatenate_videoclips([clip1,clip2,clip3])
final_clip.write_videofile(desc_path)
print_time()
"""
def combine_list_video(time_list, source_path, out_path):

    clip_list = []
    for i in time_list:
        clip = VideoFileClip(source_path).subclip(i[0], i[1])
        clip_list.append(clip)
    # clip1 = VideoFileClip(path1)
    # clip2 = VideoFileClip(path2)
    # 结合剪辑,你甚至能够完全自动化剪辑拼接视频的操作
    # clip2 =VideoFileClip("myvideo2.mp4").subclip(50,60)

    final_clip = concatenate_videoclips(clip_list)
    # final_clip = concatenate_videoclips([clip1,clip2,clip3])
    final_clip.write_videofile(out_path)


if __name__ == '__main__':
    source_path = r'D:/1/biaoqing/video.mp4'
    out_file = r'D:/1/biaoqing/result.mp4'
    # time_list=[(1260,1275),(1140,1320)]
    # time_list=[(1850,1870),(1790,1997)]
    time_list=[(0,16),(37,45),(66,71)]
    combine_list_video(time_list,source_path,out_file)
相关推荐
懒大王爱吃狼20 分钟前
Python教程:python枚举类定义和使用
开发语言·前端·javascript·python·python基础·python编程·python书籍
秃头佛爷1 小时前
Python学习大纲总结及注意事项
开发语言·python·学习
待磨的钝刨1 小时前
【格式化查看JSON文件】coco的json文件内容都在一行如何按照json格式查看
开发语言·javascript·json
深度学习lover2 小时前
<项目代码>YOLOv8 苹果腐烂识别<目标检测>
人工智能·python·yolo·目标检测·计算机视觉·苹果腐烂识别
XiaoLeisj3 小时前
【JavaEE初阶 — 多线程】单例模式 & 指令重排序问题
java·开发语言·java-ee
API快乐传递者3 小时前
淘宝反爬虫机制的主要手段有哪些?
爬虫·python
励志成为嵌入式工程师4 小时前
c语言简单编程练习9
c语言·开发语言·算法·vim
捕鲸叉5 小时前
创建线程时传递参数给线程
开发语言·c++·算法
A charmer5 小时前
【C++】vector 类深度解析:探索动态数组的奥秘
开发语言·c++·算法
Peter_chq5 小时前
【操作系统】基于环形队列的生产消费模型
linux·c语言·开发语言·c++·后端