当前位置: 首页 > news >正文

mp4视频批量截取!!!

mp4视频批量截取!!!

问题:如果我们想截取一个mp4视频中的多个片段,一个一个截会很麻烦!

  • 可以将想要截取的开始时间结束时间保存到 excel表 中,进行批量截取。
1、对一个视频,记录想要截取的时间段

如下,一共3列,start_time(开始时间)、end_time(结束时间)、name(视频名);时间单位为s(秒)

在这里插入图片描述

2、运行以下python代码

from moviepy.editor import VideoFileClip
import pandas as pd
import osdef cut_mp4(input_video, input_excel, output_path):# 检查文件夹是否存在,如果不存在则创建if not os.path.exists(output_path):os.makedirs(output_path)# 打开输入视频video_clip = VideoFileClip(input_video)# 读取Excel文件df = pd.read_excel(input_excel)# 提取前两列数据到int数组start_times = df['start_time'].tolist()end_times = df['end_time'].tolist()# 提取最后一列数据到string数组names = df['name'].tolist()i = 0while i < len(start_times):# 剪辑的开始时间(以秒为单位)start = start_times[i]# 剪辑的结束时间(以秒为单位)end = end_times[i]name = names[i] + '.mp4'# 拼接新的文件路径output_video  = os.path.join(output_path, name)# 剪辑视频clipped_video = video_clip.subclip(start, end)# 指定输出视频的编解码器和格式clipped_video.write_videofile(output_video, codec="libx264", audio_codec="aac")i += 1print("剪辑完成!!!")if __name__ == "__main__":# 输入视频文件名input_video = "D:\\image_data\\target_tracking\\example_video_sot\\2023-10-21-14-54-14.mp4"# 输入excel文件名input_excel = "D:\\image_data\\target_tracking\\example_video_excel\\2023-10-21-14-54-14.xlsx"# 输出视频文件夹output_path = "D:\\image_data\\target_tracking\\example_videos\\2023-10-21-14-54-14\\"cut_mp4(input_video, input_excel, output_path)

3、剪辑完成如下:
在这里插入图片描述

注:仅供学习参考,如有不足欢迎指正!

相关文章:

mp4视频批量截取!!!

mp4视频批量截取&#xff01;&#xff01;&#xff01; 问题&#xff1a;如果我们想截取一个mp4视频中的多个片段&#xff0c;一个一个截会很麻烦&#xff01; 可以将想要截取的开始时间和结束时间保存到 excel表 中&#xff0c;进行批量截取。 1、对一个视频&#xff0c;记…...

jQuery - AJAX get() 和 post() 方法

jQuery - AJAX get() 和 post() 方法 jQuery get() 和 post() 方法用于通过 HTTP GET 或 POST 请求从服务器请求数据。 HTTP 请求&#xff1a;GET vs POST 两种在客户端和服务器端进行请求-响应的常用方法是&#xff1a;GET 和 POST。 GET - 从指定的资源请求数据 POST - 向…...

设计模式(4)-行为型模式

行为型模式 行为型模式用于描述程序在运行时复杂的流程控制&#xff0c;即描述多个类或对象之间怎样相互协作共同完成单个对象都无法单独完成的任务&#xff0c;它涉及算法与对象间职责的分配。 行为型模式分为类行为模式和对象行为模式&#xff0c;前者采用继承机制来在类间…...

JavaScript概述

一、JavaScript简介&#xff1a; JavaScript是互联网上流行的脚本语言&#xff0c;可用于HTML和web&#xff0c;可广泛应用于服务器、PC、笔记本、平板电脑和智能手机等设备。 JavaScript是一种轻量级的编程语言&#xff0c;可插入HTML页面的编程代码&#xff0c;插入HTML页面后…...

Solidity案例详解(四)投票智能合约

该合约为原创合约&#xff0c;功能要求如下 在⼀定时间能进⾏投票超过时间投票截⽌&#xff0c;并投赞同票超过50%则为通过。 使⽤safeMath库&#xff0c;使⽤Owner 第三⽅库拥有参与投票权的⽤户在创建合约时确定Voter 结构 要有时间戳、投票是否同意等&#xff1b;struct 结构…...

Linux系统编程——进程中vfork函数

函数原型 pid_t vfork(void);//pid_t是无符号整型 所需头文件 #include <sys/types.h> #include <unistd.h> 功能 vfork() 函数和 fork() 函数一样都是在已有的进程中创建一个新的进程&#xff0c;但它们创建的子进程是有区别的。 返回值 成功子进程中返回 …...

敏感数据是什么?包含哪些?如何保障安全?

最近看到不少小伙伴在问&#xff0c;敏感数据是什么&#xff1f;包含哪些&#xff1f;如何保障安全&#xff1f;这里我们小编就给大家一一解答一下&#xff0c;仅供参考哦&#xff01; 敏感数据是什么&#xff1f; 敏感数据&#xff0c;是指泄漏后可能会给社会或个人带来严重危…...

Leadshop开源商城小程序源码 – 支持公众号H5

Leadshop是一款出色的开源电商系统&#xff0c;具备轻量级、高性能的特点&#xff0c;并提供持续更新和迭代服务。该系统采用前后端分离架构&#xff08;uniappyii2.0&#xff09;&#xff0c;以实现最佳用户体验为目标。 前端部分采用了uni-app、ES6、Vue、Vuex、Vue Router、…...

Scala---方法与函数

一、Scala方法的定义 有参方法&无参方法 def fun (a: Int , b: Int) : Unit {println(ab) } fun(1,1)def fun1 (a: Int , b: Int) ab println(fun1(1,2)) 注意点&#xff1a; 方法定义语法 用def来定义可以定义传入的参数&#xff0c;要指定传入参数的类型方法可以写返…...

【C++】泛型编程 ④ ( 函数模板 与 普通函数 调用规则 | 类型自动转换 | 类型自动转换 + 显式指定泛型类型 )

文章目录 一、普通函数 与 函数模板 的调用规则 - 类型自动转换1、函数模板和重载函数2、类型自动转换3、代码示例 - 类型自动转换 二、普通函数 与 函数模板 的调用规则 - 类型自动转换 显式指定泛型类型1、类型自动转换 显式指定泛型类型2、代码示例 - 类型自动转换 显式指…...

基于ChatGPT的文本生成艺术框架—WordArt Designer

WordArt Designer是一个基于gpt-3.5 turbo的艺术字生成框架&#xff0c;包含四个关键模块:LLM引擎、SemTypo、Styltypo和TextTypo模块。由gpt-3.5 turbo驱动的LLM引擎可以解释用户输入&#xff0c;从而将抽象概念转化为具体的设计。 SemTypo模块使用语义概念优化字体设计&…...

服务名无效。 请键入 NET HELPMSG 2185以获得更多的帮助

遇到的问题是MySQL服务没有。 因为net start 服务名&#xff0c;启动的是win下注册的服务。此时&#xff0c;我系统中并没有注册mysql到服务中。即下面没有mysql服务。 mysqld --install net start mysql...

UE5——C++编译MSB3073报错

报错&#xff1a; C:\Program Files\Microsoft Visual Studio\2022\Professional\MSBuild\Microsoft\VC\v170\Microsoft.MakeFile.Targets(50,5): error MSB3073: 命令“D:\0_Game\EpicGame\UE_5.1\Engine\Build\BatchFiles\Rebuild.bat DigitalVisualizationEditor Win64 Deve…...

自己动手实现一个深度学习算法——六、与学习相关的技巧

文章目录 1.参数的更新1&#xff09;SGD2&#xff09;Momentum3&#xff09;AdaGrad4&#xff09;Adam5&#xff09;最优化方法的比较6&#xff09;基于MNIST数据集的更新方法的比较 2.权重的初始值1&#xff09;权重初始值不能为02&#xff09;隐藏层的激活值的分布3&#xff…...

Maven间接依赖

目录 背景 依赖标签 依赖的作用域 Maven仲裁机制 场景示例 多个pom树合并打包...

Java架构师分布式搜索数据准确性解决方案

目录 1 Elasticsearch内置分词器1.1 Standard(标准分词器)1.2 Simple(简单分词器)1.3 Whitespace(空格分词器)1.4 Stop(停止分词器)1.5 Keyword(关键字分词器)1.6 Pattern(模板分词器)1.7 Language(语言分词器)1.8 Fingerprint(指纹分词器)2 Es 模糊查询 match…...

Clickhouse学习笔记

学习内容参考&#xff1a;一套上手ClickHouse-OLAP分析引擎&#xff0c;囊括Prometheus与Grafana_哔哩哔哩_bilibili 下为笔记链接&#xff0c;以及全套笔记pdf版本 Clickhouse学习笔记&#xff08;1&#xff09;—— ClickHouse的安装启动_clickhouse后台启动_THE WHY的博客-C…...

vim——“Linux”

各位CSDN的uu们好呀&#xff0c;今天&#xff0c;小雅兰的内容是Linux的开发工具——vim。下面&#xff0c;我们一起进入Linux的世界吧&#xff01;&#xff01;&#xff01; Linux编辑器-vim使用 vim的基本概念 vim的基本操作 vim正常模式命令集 vim末行模式命令集 vim操…...

【QT深入理解】QT中的几种常用的排序函数

第一章&#xff1a;排序函数的概述 排序函数是一种在编程中常用的函数&#xff0c;它可以对一个序列&#xff08;如数组&#xff0c;列表&#xff0c;向量等&#xff09;中的元素进行排序&#xff0c;使其按照一定的顺序排列。排序函数可以根据不同的排序算法&#xff0c;如冒…...

自压缩llm 为 超长记忆

自压缩llm 为 超长记忆 解释数据处理实际例子解释 # 自压缩llm 为 超长记忆 # prompt 格式 # <|细颗粒词表|><|粗颗粒词表|><|细颗粒词表|> # 细颗粒词表 = 词1,词2,词3,词4,词5,词6,词7,词8,词9,词10, # 组颗粒词表id1, 组颗粒词表id2, 组颗粒…...

太方便了!农村自建房设计新神器,二三维设计 + 扫码看模型

还在为农村自建房设计发愁&#xff1f;手绘图纸看不懂、修改慢、施工易出错&#xff1f;飞扬集成设计系统&#xff0c;专为农村自建房打造&#xff0c;一键实现二三维一体化设计&#xff0c;还能扫码查看轻量化 3D 模型&#xff0c;让建房更高效、更直观、更省心&#xff01;一…...

17种智能体(Agent)架构全景解析:演进逻辑、工程价值与落地实践

17种智能体&#xff08;Agent&#xff09;架构按“单体→增强→工具→多智能体→操作系统级”的演进路径&#xff0c;分为5大类&#xff0c;核心逻辑是从简单到复杂、从基础到前沿&#xff0c;兼顾工程落地性和理论完整性。以下将对每一种架构模式进行详细拆解&#xff0c;结合…...

ESP32-S3 PSRAM实战:PlatformIO Arduino配置与内存分配优化指南

1. ESP32-S3 PSRAM基础配置与验证 最近在折腾ESP32-S3的PSRAM配置时&#xff0c;发现PlatformIO Arduino环境下有些坑需要特别注意。先说说我的硬件配置&#xff1a;ESP32-S3-DevKitC-1开发板&#xff0c;搭载8MB PSRAM和16MB FLASH。这种配置非常适合需要大内存的应用场景&…...

串口通信与Modbus协议:工业自动化中的黄金搭档

1. 工业自动化的通信基石&#xff1a;串口与Modbus为何成为黄金组合 在工厂车间的控制柜里&#xff0c;PLC正以每秒数十次的频率采集着温度传感器的数据&#xff1b;在自动化生产线上&#xff0c;机械臂的每个动作都精准同步着传送带的节奏。这些看似神奇的工业魔法&#xff0c…...

LangChain实战避坑:我的RAG项目为什么召回结果不准?从向量化到混合检索的调优全记录

LangChain实战调优&#xff1a;从召回失败到精准检索的完整解决方案 当你的RAG系统在回答"夏天旅行推荐"时&#xff0c;返回了撒哈拉沙漠海滩和新疆火山口这类荒谬结果&#xff0c;问题可能出在文本分割、嵌入模型或混合检索策略上。本文将分享一套经过实战验证的调优…...

C语言开发者视角:Kandinsky-5.0-I2V-Lite-5s高性能推理引擎调用

C语言开发者视角&#xff1a;Kandinsky-5.0-I2V-Lite-5s高性能推理引擎调用 1. 引言&#xff1a;当静态告警遇上动态生成 想象一下这样的场景&#xff1a;工业监控系统捕捉到设备异常&#xff0c;触发静态告警图片。传统方案中&#xff0c;这张图片需要人工介入分析&#xff…...

go-pry配置文件详解:自定义导入包和调试选项

go-pry配置文件详解&#xff1a;自定义导入包和调试选项 【免费下载链接】go-pry An interactive REPL for Go that allows you to drop into your code at any point. 项目地址: https://gitcode.com/gh_mirrors/go/go-pry go-pry是一款强大的Go语言交互式REPL工具&…...

为什么LivePortrait能吊打Diffusion模型?揭秘快手69M训练数据背后的技术取舍

LivePortrait为何能突破扩散模型瓶颈&#xff1f;解析69M训练数据驱动的工业级优化策略 当开源社区还在为扩散模型的生成质量惊叹时&#xff0c;快手LivePortrait团队已经用12.8ms/帧的推理速度和6.5K GitHub星标证明&#xff1a;在工业级人像动画领域&#xff0c;隐式关键点框…...

Ostrakon-VL扫描终端实战教程:像素特工式零售图像识别部署指南

Ostrakon-VL扫描终端实战教程&#xff1a;像素特工式零售图像识别部署指南 1. 像素特工终端介绍 想象你是一位未来世界的零售侦探&#xff0c;手持高科技扫描仪在商店里穿梭。Ostrakon-VL扫描终端就是你的数字助手&#xff0c;它能帮你"看"懂货架上的每一个细节。这…...

如何用Reset Windows Update Tool一键解决Windows更新故障的终极指南

如何用Reset Windows Update Tool一键解决Windows更新故障的终极指南 【免费下载链接】Reset-Windows-Update-Tool Troubleshooting Tool with Windows Updates (Developed in Dev-C). 项目地址: https://gitcode.com/gh_mirrors/re/Reset-Windows-Update-Tool 你是否曾…...