【python】使用python将多个视频合并、延长视频的时间

news2024/10/6 4:05:05

今天做知识分享的时候,最后保存的视频时长是58分钟,那么如何改变视频的时长,将视频时长改为一个小时呢?

下面提供3个方案:

方案1,重新录,很显然,不合理;×
方案2,补录一段视频,和原先录制的进行合并,一个不错的选择;√
方案3,改变现有视频的fps,从而延长视频的时长,听起来这个方法很不错;√

现有的一段视频信息,时长58分钟25秒,帧速率16.25帧/秒:

在这里插入图片描述

补录的视频信息,时长1分钟45秒,帧速率17.23帧/秒:

在这里插入图片描述

使用方案2,将58分钟25秒的视频和1分钟45秒视频合并:

详细代码:

python版本3.6.10以上
moviepy版本1.0.3以上

python环境下先安装moviepy:

pip install moviepy -i https://pypi.tuna.tsinghua.edu.cn/simple

注意修改保存视频的fps值

# -*- coding: utf-8 -*-
"""
Created on Tue Nov 22 10:25:06 2022

@author: zqq
"""

from moviepy.editor import VideoFileClip,concatenate_videoclips
import os

 #参数设置
data_path= r'E:\august'#分散视频路径,两段视频存放的路径
suffix='.mp4' #分散的视频后缀
save_path= r"E:\august\res.mp4" #合并后的视频名称
 
#开始合并
file_names= []
for root, dirs, files in os.walk(data_path):
    # 按文件名排序
    files.sort()
    # 遍历所有文件
    for file in files:
        # 如果后缀名为 .mp4
        if os.path.splitext(file)[1] == suffix:
            # 拼接成完整路径
            filePath = os.path.join(root, file)
            # 载入视频
            video = VideoFileClip(filePath)
            # 添加到数组
            file_names.append(video)
 
# 拼接视频
clip = concatenate_videoclips(file_names)
 
# 生成目标视频文件, 修改fps
clip.to_videofile(save_path, fps=18, remove_temp=False)

使用方案3,将58分钟25秒的视频时长延长:

此处就是先读取视频,然后保存视频的过程,在保存的过程中,主要降低fps值

# -*- coding: utf-8 -*-
"""
Created on Tue Nov 22 10:25:06 2022

@author: zqq
"""

from moviepy.editor import VideoFileClip,concatenate_videoclips
import os

 #参数设置
data_path= r'E:\august1' #58分钟25秒视频存放的路径
suffix='.mp4' #视频后缀
save_path= r"E:\august1\res.mp4" #保存处理后的视频
 
#开始合并
file_names= []
for root, dirs, files in os.walk(data_path):
    # 按文件名排序
    files.sort()
    # 遍历所有文件
    for file in files:
        # 如果后缀名为 .mp4
        if os.path.splitext(file)[1] == suffix:
            # 拼接成完整路径
            filePath = os.path.join(root, file)
            # 载入视频
            video = VideoFileClip(filePath)
            # 添加到数组
            file_names.append(video)
 
# 拼接视频
clip = concatenate_videoclips(file_names)
 
# 生成目标视频文件, 修改fps
clip.to_videofile(save_path, fps=14, remove_temp=False)

亲测有效,两种方案均可以达到延长视频时长目的。

参考资料:

https://blog.csdn.net/qq_23860475/article/details/122732812

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/25699.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

蓝屏page_fault_in_nonpaged_area的解决办法

用户在操作电脑的过程中,难免会遇到蓝屏问题,最近就有用户遇到电脑蓝屏重启无限循环,提示代码page_fault_in_nonpaged_area,这要如何解决呢?下面就来看看详细的解决办法。 page_fault_in_nonpaged_area蓝屏代码解决方法…

【MySQL篇】第一篇——数据库基础

目录 什么是数据库 主流数据库 基本使用 MySQL安装 连接服务器 服务器管理 服务器,数据库,表关系 使用案例 创建数据库 使用数据库 创建数据库表 表中插入数据 查询表中的数据 数据逻辑存储 MySQL架构原理 MySQL整体逻辑架构 MySQL逻辑…

Eureka架构篇 - 服务发现

前言 从客户端与服务端两个角度概述一下Eureka服务发现的原理,如下: 客户端 依赖自动装配机制,客户端启动时就会从Eureka服务端全量获取服务实例的注册信息并缓存到本地。之后每隔30秒向Eureka服务端发起增量获取的请求,如果增…

云原生周刊 | 波音公司允许员工给开源项目做贡献

如果你要问谁对开源项目的贡献最小,那一定是保密等级很高的国防工业机构,但这个魔咒最近被波音公司给打破了。在最近的一次 Linux 基金会成员峰会 keynote 演讲中,波音公司提到他们会在 2022 年成立一个开源办公室,并且从即日起&a…

m基于MATLAB-GUI的GPS数据经纬度高度解析与kalman分析软件设计

目录 1.算法概述 2.仿真效果预览 3.MATLAB部分代码预览 4.完整MATLAB程序 1.算法概述 经度纬度和高度来自GPS信号的中的GPGGA的数据。所以提取这三个信息主要是对GPGGA中的数据进行整理。GPGGA的数据格式如下所示: GPGGA是GPS数据输出格式语句,意思是…

9问502

一、502意味着什么 502 Bad Gateway是指错误网关,无效网关;在互联网中表示一种网络错误。表现在WEB浏览器中给出的页面反馈。它通常并不意味着上游服务器已关闭(无响应网关/代理) ,而是上游服务器和网关/代理使用不一…

latex 模板使用技巧——参考文献篇

参考文献说明: 一、 常用参考文献类型 1、会议 (INPROCEEDINGS) 示例: INPROCEEDINGS{rcnn,title{Rich feature hierarchies for accurate object detection and semantic segmentation},author{Girshick, Ross and Donahue, J…

骨传导耳机是利用什么原理听歌?什么骨传导耳机好用

这几年来骨传导耳机的火热程度不言而喻,很多运动人士手上必有一款骨传导耳机,也随着骨传导耳机的兴起,越来越多小伙伴都加入了运动当中。当然,也有很多小伙伴是不知道骨传导耳机的,更不知道骨传导耳机有什么作用&#…

KESION(.NET版)安装方法

若是windows2008系统,访问xxxxxx.com - xxx sex videos free hd porn 资源和信息。 安装界面没有样式加载,请先编辑web.config 去掉 <defaultDocument> <files> <clear /> <add value"index.aspx" /> </files> </defaultDocume…

Android App开发手机阅读中PDF文件渲染器的讲解及使用(附源码 简单易懂)

需要源码和图片集请点赞关注收藏后评论区留言~~~ 一、PDF文件渲染器 Android集成了PDF的渲染操作&#xff0c;从很大程度上方便了开发者&#xff0c;这个PDF文件渲染器便是PdfRenderer。渲染器允许从存储卡读取PDF文件 打开PDF文件只是第一步&#xff0c;接下来使用PdfRender…

Java FreeMarker模板引擎注入深入分析

0x01 前言 最近和 F1or 大师傅一起挖洞的时候发现一处某 CMS SSTI 的 0day&#xff0c;之前自己在复现 jpress 的一些漏洞的时候也发现了 SSTI 这个洞杀伤力之大。今天来好好系统学习一手。 有三个最重要的模板&#xff0c;其实模板引擎本质上的原理差不多&#xff0c;因为在…

CPT-MNPS/Fe3O4 NPs/Au NPs顺铂偶联磁性纳米粒子/四氧化三铁纳米粒子/金纳米粒子

小编下面整理了CPT-MNPS/Fe3O4 NPs/Au NPs顺铂偶联磁性纳米粒子/四氧化三铁纳米粒子/金纳米粒子&#xff0c;来看&#xff01; CPT-偶联纳米粒子 采用新工艺制备了包载盐酸阿霉素的明胶-泊洛沙姆纳米脂质体&#xff0c;并进行相关性能的表征。采用WW型明胶-泊洛沙姆乳液体系结合…

131. 分割回文串-思路整理

题目 给你一个字符串s&#xff0c;请你将 s分割成一些子串&#xff0c;使每个子串都是回文串。返回 s 所有可能的分割方案。 回文串: 是正着读和反着读都一样的字符串。 输入&#xff1a;s "aab" 输出&#xff1a;[["a","a","b"]…

Advances in Graph Neural Networks笔记4:Heterogeneous Graph Neural Networks

诸神缄默不语-个人CSDN博文目录 本书网址&#xff1a;https://link.springer.com/book/10.1007/978-3-031-16174-2 本文是本书第四章的学习笔记。 感觉这一章写得不怎么样。以研究生组会讲异质图神经网络主题论文作为标准的话&#xff0c;倒是还行&#xff0c;介绍了HGNN的常见…

【面试宝典】吐血整理的100道Java多线程并发面试题

吐血整理的108道Java多线程&并发面试题前言1、Java中实现多线程有几种方法2、继承 Thread 类 流程3、实现 Runnable 接口4、ExecutorService、 Callable、 Future 有返回值线程5、基于线程池的方式6、4 种线程池7、如何停止一个正在运行的线程8、notify()和notifyAll()有什…

Clean-label Backdoor Attack against Deep Hashing based Retrieval论文笔记

论文名称Clean-label Backdoor Attack against Deep Hashing based Retrieval作者Kuofeng Gao &#xff08;Tsinghua University&#xff09;出版社arxiv 2021pdf在线pdf代码无 简介&#xff1a;本文提出了首个针对 hashing 模型的 clean-label backdoor attack。生成 targeted…

图像传统处理算法-边缘检测-分割-增强-降噪

一、边缘检测 边缘检测的几种微分算子&#xff1a; 一阶微分算子&#xff1a;Roberts、Sobel、Prewitt 二阶微分算子&#xff1a;Laplacian、Log/Marr 非微分算子&#xff1a;Canny 一阶微分算子 1.Roberts: 没有经过图像平滑处理&#xff0c;图像噪声无法得到较好的抑制…

Proactive Privacy-preserving Learning for Retrieval 论文笔记

论文名称Proactive Privacy-preserving Learning for Retrieval作者Peng-Fei Zhang (University of Queensland)会议/出版社AAAI 2021pdf&#x1f4c4;在线pdf代码无代码概要&#xff1a; 本文提出了一种针对检索系统隐私保护的方法&#xff0c;称为 PPL。训练一个生成器&#…

SPARKSQL3.0-Optimizer阶段源码剖析

一、前言 阅读本节需要先掌握【SPARKSQL3.0-Analyzer阶段源码剖析】 Optimizer阶段是对Analyzer分析阶段的逻辑计划【logicalPlan】做进一步的优化&#xff0c;将应用各种优化规则对一些低效的逻辑计划进行转换 例如将原本用户不合理的sql进行优化&#xff0c;如谓词下推&am…

PCB设计仿真之探讨源端串联端接

作者&#xff1a;一博科技高速先生成员 孙宜文 上期高速线生简单介绍了反射原理也提到了源端串联端接&#xff0c;笔者借此篇文章再深入探讨下&#xff0c;本文使用Sigrity Topology Explorer 17.4仿真软件。 搭建一个简单的电路模型&#xff0c;给一个上升沿和下降沿均为0.5…