合并当前目录下的视频和音频文件

合并当前目录下的视频和音频文件。

要求:同一文件夹个,只能放置1个音频文件和1个视频文件,并且音频是给视频配音的等时间长度的。

import  osprint(os.getcwd()) # 获取当前工作目录路径dirpath=os.getcwd()import moviepy
from moviepy.editor import VideoFileClip
from moviepy.editor import AudioFileClip################################################探测 文件夹下  后缀为mp4的文件的个数
#为了不进行二级文件夹探测,删除了else:   eachFile(newDir)  
def eachFile2(filepath):pathDir2 = os.listdir(filepath)list_temp2=[]for s2 in pathDir2:newDir2=os.path.join(filepath,s2)if os.path.isfile(newDir2) :  if os.path.splitext(newDir2)[1]==".mp4": list_temp2.append(newDir2) passelse:eachFile2(newDir2)return list_temp2###############################################list_temp_mp4=eachFile2(dirpath)print('发现了mp4文件:'+str(list_temp_mp4))print(list_temp_mp4[0])
print(list_temp_mp4[1])#对比文件的大小,视频文件更大,音频文件更小。
stats1 = os.stat(list_temp_mp4[0])
print(stats1.st_size)stats2 = os.stat(list_temp_mp4[1])
print(stats2.st_size)if stats1>stats2:video = VideoFileClip(list_temp_mp4[0])   #读视频audio = AudioFileClip(list_temp_mp4[1])   #读音频文件 video_merge = video.set_audio(audio) #准备合并filename_1=list_temp_mp4[0].split('.mp4')[0]filename_1=filename_1+'合并.mp4'video_merge.write_videofile(filename_1)  #开始合并else:video = VideoFileClip(list_temp_mp4[1])   #读视频audio = AudioFileClip(list_temp_mp4[0])   #读音频文件 video_merge = video.set_audio(audio) #准备合并filename_1=list_temp_mp4[1].split('.mp4')[1]filename_1=filename_1+'合并.mp4'video_merge.write_videofile(filename_1)  #开始合并#安装  #  pip3 install moviepy -i https://mirrors.aliyun.com/pypi/simple/
#  pip3 install numpy -i https://mirrors.aliyun.com/pypi/simple/
#  pip3 install imageio -i https://mirrors.aliyun.com/pypi/simple/
#  pip3 install imageio_ffmpeg -i https://mirrors.aliyun.com/pypi/simple/#当影像遇上Python:用MoviePy库轻松搞定视频编辑  #1. 阿里云镜像:https://mirrors.aliyun.com/pypi/simple/
#2. 清华大学镜像:https://pypi.tuna.tsinghua.edu.cn/simple
#3. 豆瓣镜像:https://pypi.doubanio.com/simple/
#4. 中科大镜像:https://pypi.mirrors.ustc.edu.cn/simple/
#5. 华为云镜像:https://mirrors.huaweicloud.com/repository/pypi/simple/
#6. 腾讯云镜像:https://mirrors.cloud.tencent.com/pypi/simple/
#7. 网易镜像:http://mirrors.163.com/pypi/simple/
#8. 中国科学技术大学镜像:https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/

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

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

相关文章

Less语言

Less是一门预编译语言,它扩展了CSS语言,增加了变量、Mixin、函数等特性,使CSS更易维护和扩展 Less也扩充了CSS语言,增加了诸如变量、混合运算、函数等功能。Less既可以运行在服务端(Node.js和Rhino平台)也可以运行在客户端(浏览器…

前端面试项目细节重难点(已工作|做分享)

面试官提问:需求场景:页面上有一个单选框,有是否两个选项:当用户选择是,出现一个输入框,用户可以输入内容,给后端的保存接口传入参数radio和content这两个字段,值分别是用户选项和输…

[前端] 爷孙组件隔代组件的通信 (笔记,持续更新)

参考文献 记一次爷孙组件隔代组件的通信之emit与on

热点不等人!运营必须掌握的4大技巧

作为运营,抓住热点是吸引读者关注和增加曝光率的有效手段。但是,你知道怎么样才能更好地追热点吗? 今天,就分享四个追热点的技巧,帮助你更好地利用热点话题来提高账号热度。 1、短期内求快 对于运营者来说&#xff…

数据集005:螺丝螺母目标检测数据集(含数据集下载链接)

数据集简介 背景干净的目标检测数据集。 里面仅仅包含螺丝和螺母两种类别的目标,背景为干净的培养皿。图片数量约420张,train.txt 文件描述每个图片中的目标,label_list 文件描述类别 另附一个验证集合,有10张图片,e…

【二分查找 位运算】3145. 大数组元素的乘积

本文涉及知识点 二分查找算法合集 位运算、状态压缩、枚举子集汇总 LeetCode3145. 大数组元素的乘积 一个整数 x 的 强数组 指的是满足和为 x 的二的幂的最短有序数组。比方说,11 的强数组为 [1, 2, 8] 。 我们将每一个正整数 i (即1,2&am…

Cocos Creator 声音播放与管理详解

Cocos Creator 是一款非常流行的游戏开发引擎,它提供了丰富的功能和工具,让开发者可以轻松构建出高质量的游戏。在游戏开发中,声音是一个非常重要的元素,可以为游戏增添氛围和趣味性。在本文中,我们将详细介绍Cocos Cr…

React hooks - useState

useState 用法特点注意事项 在hooks出现之前,react的函数式组件也叫做无状态组件(函数里面无法创建属于自己的状态,只能使用props接收) 用法 一个管理状态的 hooks,能让函数组件拥有自己的状态,实现状态的…

Lookin高效调试iOS App的UI

Lookin是一款iOS开发时常用的调试软件,由腾讯微信读书团队QMUI开发。 它可以查看和修改iOS App里的UI对象的软件,展示App UI图层,类似于Xcode自带的UI Inspector工具,或另一款叫做Reveal的软件。 此外,虽然Lookin主体…

内存泄漏案例分享4-异步任务流内存泄漏

案例4——异步任务内存泄漏 异步任务,代指起子线程异步完成一些数据操作、网络接口请求等,通常会使用以下API: Runnbale,Thread,线程池RxJavaHandlerThread 而这些异步任务很有可能操作内存泄漏,下面我们以Rxjava为…

【实战JVM】-基础篇-02-类的声明周期-加载器

【实战JVM】-基础篇-02-类的声明周期-加载器 3 类的生命周期3.1 生命周期的概述3.2 加载阶段3.2.1 查看内存中的对象 3.3 连接阶段3.3.1 验证阶段3.3.1.1 验证是否符合jvm规范3.3.1.2 元信息验证3.3.1.3 验证语义3.3.1.4 符号引用验证 3.3.2 准备阶段3.3.3 解析阶段 3.4 初始化…

使用OpenCV计算滑块缺口(2)

上一篇 openCV 计算滑块缺口,执行可能出现问题,这一篇文章,是上一版本的补充(https://blog.csdn.net/weixin_42883164/article/details/137604965) 实现计算滑块缺口的步骤: 接口部分参照上述文章&#xf…

创新营销之路:探索订单排队模式的无限可能

随着市场竞争的日益激烈,企业家们都在寻找新的营销策略来脱颖而出。在这里,我想向大家介绍一种充满活力和创新性的营销新模式——订单排队模式。它不仅能够有效提升用户黏性,还能为企业带来持续的增长动力。 一、订单排队模式的魅力 订单排队…

为什么建议大家加快拥抱Kotlin,说点不一样的

本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点 Kotlin自2017年起被Google正式宣布为Android的编程语言之一,随后在2019年进一步宣布Kotlin为Android的首选语言,普及速度…

京东商品API接口:电商数据自动化的钥匙

在电子商务的蓬勃发展中,京东作为中国领先的电商平台之一,提供了丰富的API接口,使得开发者能够访问和利用其庞大的商品数据。京东商品API接口不仅为商家提供了便捷的商品管理工具,也为数据分析和电商自动化提供了强大支持。 一、…

上下文视觉提示实现zero-shot分割检测及多visual-prompt改造

文章目录 一、Closed-Set VS Open-set二、DINOv2.1 论文和代码2.2 内容2.3 安装部署2.4 使用效果 三、多visual prompt 改造3.1 获取示例图mask3.2 修改函数参数3.3 推理代码3.4 效果的提升! 四、总结 本文主要介绍visual prompt模型DINOv,该模型可输入八…

使用selenium实现网页的自动化登录

1.jdk版本(jdk11) 2.检查->元素->查看输入框Id 3.代码 import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.edge.EdgeDriver; import org.openqa.selen…

深度解析:医院管理全面数字化转型的技术实现与优势

随着科技的飞速发展,信息技术的应用已经渗透到社会的各个角落,医疗行业作为关乎人民群众生命健康的重要领域,更是急需借助科技的力量实现转型升级。在这样的时代背景下,全面数字化转型成为了医院管理创新的必由之路。 北京XXX医院…

untiy tmp textmeshPro text 代码设置对齐方式

TipText.alignment TextAlignmentOptions.Left;

linux下宝塔负载100%解决方法

今天发现服务器宝塔面板负载居然是100% 但是cpu 和内存其实并不高 通过命令查看主机 uptime 中load average 居然高达18.23 看来负载是真的高了 通过vmstat 看看具体问题 procs: ​ r 表示运行和等待CPU时间片的进程数,这个值如果长期大于系统CPU个数…