如何用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 相关文章推荐
10款最好的Web开发的 Python 框架
Mar 18 Python
python实现爬取图书封面
Jul 05 Python
[原创]Python入门教程5. 字典基本操作【定义、运算、常用函数】
Nov 01 Python
django项目登录中使用图片验证码的实现方法
Aug 15 Python
使用Rasterio读取栅格数据的实例讲解
Nov 26 Python
python打印异常信息的两种实现方式
Dec 24 Python
python3爬取torrent种子链接实例
Jan 16 Python
jupyter notebook中美观显示矩阵实例
Apr 17 Python
Django实现celery定时任务过程解析
Apr 21 Python
python dict如何定义
Sep 02 Python
Python-split()函数实例用法讲解
Dec 18 Python
Python实现FTP文件定时自动下载的步骤
Dec 19 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页面转UTF-8中文编码乱码的解决办法
2015/10/20 PHP
微信公众号支付之坑:调用支付jsapi缺少参数 timeStamp等错误解决方法
2016/01/12 PHP
php中file_get_contents()函数用法实例
2019/02/21 PHP
PHP实现一个按钮点击上传多个图片操作示例
2020/01/23 PHP
用Laravel轻松处理千万级数据的方法实现
2020/12/25 PHP
JavaScript实现多维数组的方法
2013/11/20 Javascript
BooStrap对导航条的改造实践小结
2016/09/21 Javascript
ajax图片上传,图片异步上传,更新实例
2016/12/30 Javascript
Vue 创建组件的两种方法小结(必看)
2018/02/23 Javascript
原生nodejs使用websocket代码分享
2018/04/07 NodeJs
vue实现验证码按钮倒计时功能
2018/04/10 Javascript
Webpack path与publicPath的区别详解
2018/05/03 Javascript
vue中created和mounted的区别浅析
2019/08/13 Javascript
[05:13]2018DOTA2亚洲邀请赛主赛事第二日战况回顾 LGD、VG双雄携手晋级
2018/04/05 DOTA
Python中Class类用法实例分析
2015/11/12 Python
python实现搜索本地文件信息写入文件的方法
2016/02/22 Python
浅谈Python爬取网页的编码处理
2016/11/04 Python
Python 3.x读写csv文件中数字的方法示例
2017/08/29 Python
Python使用matplotlib简单绘图示例
2018/02/01 Python
Python即时网络爬虫项目启动说明详解
2018/02/23 Python
python之从文件读取数据到list的实例讲解
2018/04/19 Python
解决win64 Python下安装PIL出错问题(图解)
2018/09/03 Python
python多线程扫描端口(线程池)
2019/09/04 Python
python 实现查询Neo4j多节点的多层关系
2019/12/23 Python
通过python检测字符串的字母
2020/02/18 Python
python绘制趋势图的示例
2020/09/17 Python
Styleonme中文网:韩国高档人气品牌
2017/06/21 全球购物
捷克建筑材料网上商店:DEK.cz
2021/03/06 全球购物
UNIX操作系统结构由哪几部分组成
2016/02/17 面试题
水产养殖学应届生求职信
2013/09/29 职场文书
违反交通安全法检讨书
2014/10/24 职场文书
兴趣班停课通知
2015/04/24 职场文书
2016大学迎新欢迎词
2015/09/29 职场文书
搞笑婚礼主持词开场白
2015/11/24 职场文书
应届生们该怎么书写求职信?
2019/07/05 职场文书
教你使用vscode 搭建react-native开发环境
2021/07/07 Javascript