如何用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中用pycurl监控http响应时间脚本分享
Feb 02 Python
Python中生成器和yield语句的用法详解
Apr 17 Python
Python中统计函数运行耗时的方法
May 05 Python
Python脚本文件打包成可执行文件的方法
Jun 02 Python
CentOS6.5设置Django开发环境
Oct 13 Python
python字典快速保存于读取的方法
Mar 23 Python
Python利用matplotlib做图中图及次坐标轴的实例
Jul 08 Python
pytorch自定义二值化网络层方式
Jan 07 Python
如何基于Python实现数字类型转换
Feb 07 Python
利用pandas向一个csv文件追加写入数据的实现示例
Apr 23 Python
pycharm中如何自定义设置通过“ctrl+滚轮”进行放大和缩小实现方法
Sep 16 Python
Python日志器使用方法及原理解析
Sep 27 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
一台收音机,让一家人都笑逐颜开!
2020/08/21 无线电
用php解析html的实现代码
2011/08/08 PHP
PHP Session 变量的使用方法详解与实例代码
2013/09/11 PHP
在php和MySql中计算时间差的方法详解
2015/03/27 PHP
discuz图片顺序混乱解决方案
2015/07/29 PHP
Yii2中设置与获取别名的函数(setAlias和getAlias)用法分析
2016/07/25 PHP
微信公众平台开发教程③ PHP实现微信公众号支付功能图文详解
2019/04/10 PHP
JavaScript中:表达式和语句的区别[译]
2012/09/17 Javascript
收集json解析的四种方法分享
2014/01/17 Javascript
js实现的复制兼容chrome和IE
2014/04/03 Javascript
JQuery控制radio选中和不选中方法总结
2015/04/15 Javascript
jquery实现可自动判断位置的弹出层效果代码
2015/10/12 Javascript
把多个JavaScript函数绑定到onload事件处理函数上的方法
2016/09/04 Javascript
vue.js从安装到搭建过程详解
2017/03/17 Javascript
vuejs+element-ui+laravel5.4上传文件的示例代码
2017/08/12 Javascript
浅谈node模块与npm包管理工具
2018/01/03 Javascript
JS声明对象时属性名加引号与不加引号的问题及解决方法
2018/02/16 Javascript
js验证身份证号码记录的方法
2019/04/26 Javascript
Vue 利用指令实现禁止反复发送请求的两种方法
2019/09/15 Javascript
Node.js API详解之 vm模块用法实例分析
2020/05/27 Javascript
Python开发中爬虫使用代理proxy抓取网页的方法示例
2017/09/26 Python
Python cookbook(数据结构与算法)从序列中移除重复项且保持元素间顺序不变的方法
2018/03/13 Python
利用Python进行数据可视化常见的9种方法!超实用!
2018/07/11 Python
Python 隐藏输入密码时屏幕回显的实例
2019/02/19 Python
python解压TAR文件至指定文件夹的实例
2019/06/10 Python
AVI-8手表美国官方商店:AVI-8 USA
2019/04/10 全球购物
远程学习的教学用品和家庭学习资源:Really Good Stuff
2020/04/27 全球购物
abstract class和interface有什么区别?
2012/01/03 面试题
linux面试题参考答案(10)
2013/11/04 面试题
《珍珠泉》教学反思
2014/02/20 职场文书
人力资源部经理助理岗位职责
2014/03/04 职场文书
中学生英语演讲稿
2014/04/26 职场文书
团日活动总结书格式
2014/05/08 职场文书
六一晚会主持词开场白
2015/05/28 职场文书
个人催款函范文
2015/06/24 职场文书
婚庆答谢词大全
2015/09/29 职场文书