如何用python批量调整视频声音


Posted in Python onDecember 22, 2020

今天来研究python中moviepy模块的用途

近来有大量处理视频的需求,

常会碰到一个问题是下载的视频音量过小,

会需要将它调大声,

虽然有在线工具VideoLouder可以免费调整视频音量大小,

但毕竟若量很大的话一个一个上传视频也是挺麻烦的事情,

因此决定再用程序帮忙解决。

使用教学

基础程序

调整一个视频音量的代码如下:

from moviepy.editor import VideoFileClip,concatenate_videoclips

clip = VideoFileClip(“1.mp4”)#获取视频1.mp4(视频需与程序置于同一文件夹)

newclip = clip.volumex(5)#将音量调整为5倍

newclip.write_videofile(“out.mp4”)#输出影片名为out.mp4

但实测会出现错误AttributeError: 'NoneType' object has no attribute 'stdout',

经研究后,似乎是moviepy版本的问题,

最新的版本为1.0.1,

可以于anaconda prompt中下指令pip list查看自己所有已安装的模块版本。

实测要安装moviepy版本1.0.0才可正常使用,

在anaconda prompt使用pip install moviepy==1.0.0指令即可运作上述代码。

批量修改视频音量

想要一次修改多个视频的音量,

小马的代码如下,

首先我将所有欲修改的视频放入当前程序路径下的music文件夹中,

这边关键会用到python内置模块os,

  • os.getcwd()是取得当前程序的工作路径
  • os.chdir()可以改变当前程序的工作路径
  • os.listdir()可以取得指定路径下的所有档案名称
import os
from moviepy.editor import VideoFileClip, concatenate_videoclips
    
def batch_volumex(path, x):
  # 函数功能:在指定路径下,将该文件夹的视频声音调为x倍
  origin_path = os.getcwd()
  os.chdir(path)
  for fname in os.listdir():
    clip = VideoFileClip(fname)
    newclip = clip.volumex(x)
    newclip.write_videofile("new_"+fname)
  os.chdir(origin_path)

path = './music'
batch_volumex(path, 5)

这支程序可以将music文件夹下的所有影片的音量调为5倍,

并将影片名称前加“new_”字串输出 

(注:若原视频声音很小,实测音量大概要调3~5倍才会有感)

以上就是如何用python批量调整视频声音的详细内容,更多关于python批量调整视频声音的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python 图片验证码代码分享
Jul 04 Python
在Python程序中操作MySQL的基本方法
Jul 29 Python
Python命令行解析模块详解
Feb 01 Python
Python爬虫框架scrapy实现的文件下载功能示例
Aug 04 Python
对numpy中数组转置的求解以及向量内积计算方法
Oct 31 Python
python实现RabbitMQ的消息队列的示例代码
Nov 08 Python
使用python实现mqtt的发布和订阅
May 05 Python
Django 1.10以上版本 url 配置注意事项详解
Aug 05 Python
Django项目之Elasticsearch搜索引擎的实例
Aug 21 Python
Python BeautifulReport可视化报告代码实例
Apr 13 Python
Python如何实现后端自定义认证并实现多条件登陆
Jun 22 Python
python判断字符串以什么结尾的实例方法
Sep 18 Python
分享一个python的aes加密代码
Dec 22 #Python
解决PyCharm无法使用lxml库的问题(图解)
Dec 22 #Python
去除python中的字符串空格的简单方法
Dec 22 #Python
Python lxml库的简单介绍及基本使用讲解
Dec 22 #Python
Python中过滤字符串列表的方法
Dec 22 #Python
python中@property的作用和getter setter的解释
Dec 22 #Python
地图可视化神器kepler.gl python接口的使用方法
Dec 22 #Python
You might like
PHP的异常处理类Exception的使用及说明
2012/06/13 PHP
PHP调用MsSQL Server 2012存储过程获取多结果集(包含output参数)的详解
2013/07/03 PHP
php多文件上传下载示例分享
2014/02/20 PHP
php版微信开发之接收消息,自动判断及回复相应消息的方法
2016/09/23 PHP
PHP面向对象程序设计之对象生成方法详解
2016/12/02 PHP
php 多继承的几种常见实现方法示例
2019/11/18 PHP
jQuery(1.6.3) 中css方法对浮动的实现缺陷分析
2011/09/09 Javascript
javascript 树形导航菜单实例代码
2013/08/13 Javascript
JavaScript获取路径设计源码
2014/05/22 Javascript
javascript倒计时效果实现
2015/11/12 Javascript
基于nodejs 的多页面爬虫实例代码
2017/05/31 NodeJs
jQuery选择器之子元素过滤选择器
2017/09/28 jQuery
浅谈ES6 模板字符串的具体使用方法
2017/11/07 Javascript
纯JS实现的读取excel文件内容功能示例【支持所有浏览器】
2018/06/23 Javascript
vue用递归组件写树形控件的实例代码
2018/07/19 Javascript
Vue.js 父子组件通信的十种方式
2018/10/30 Javascript
基于Vue-cli快速搭建项目的完整步骤
2018/11/03 Javascript
小白教程|一小时上手最流行的前端框架vue(推荐)
2019/04/10 Javascript
vue router动态路由设置参数可选问题
2019/08/21 Javascript
js实现抽奖的两种方法
2020/03/19 Javascript
原生js实现弹幕效果
2020/11/29 Javascript
[43:18]NB vs Infamous 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.22
2019/09/05 DOTA
linux下python抓屏实现方法
2015/05/22 Python
Python文件及目录操作实例详解
2015/06/04 Python
python利用插值法对折线进行平滑曲线处理
2018/12/25 Python
利用pyshp包给shapefile文件添加字段的实例
2019/12/06 Python
HTML5仿微信聊天界面、微信朋友圈实例代码
2018/01/29 HTML / CSS
Diesel美国网上商店:意大利牛仔时装品牌
2020/12/10 全球购物
前处理班长职位说明书
2014/03/01 职场文书
出生证明公证书
2014/04/09 职场文书
团日活动总结书
2014/05/08 职场文书
2014年最新个人对照检查材料范文
2014/09/25 职场文书
大学生迟到检讨书500字
2014/10/17 职场文书
工作推荐信模板
2015/03/25 职场文书
JavaScript实现贪吃蛇游戏
2021/06/16 Javascript
解决Oracle数据库用户密码过期
2022/05/11 Oracle