如何用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 14 Python
python中list列表的高级函数
May 17 Python
python 递归遍历文件夹,并打印满足条件的文件路径实例
Aug 30 Python
python+matplotlib实现鼠标移动三角形高亮及索引显示
Jan 15 Python
python实现求最长回文子串长度
Jan 22 Python
Python中创建二维数组
Oct 17 Python
Python实现html转换为pdf报告(生成pdf报告)功能示例
May 04 Python
Python解决pip install时出现的Could not fetch URL问题
Aug 01 Python
Python 操作 ElasticSearch的完整代码
Aug 04 Python
关于Python形参打包与解包小技巧分享
Aug 24 Python
Python绘制热力图示例
Sep 27 Python
Django 解决distinct无法去除重复数据的问题
May 20 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图片上传类带图片显示
2006/11/25 PHP
php 提速工具eAccelerator 配置参数详解
2010/05/16 PHP
php数据库抽象层 PDO
2011/05/07 PHP
php curl_init函数用法
2014/01/31 PHP
PHP数据库处理封装类实例
2016/12/24 PHP
jQuery源码分析-01总体架构分析
2011/11/14 Javascript
js 跳出页面的frameset框架示例介绍
2013/12/23 Javascript
调整小数的格式保留小数点后两位
2014/05/14 Javascript
JavaScript实现添加及删除事件的方法小结
2015/08/04 Javascript
jQuery语法小结(超实用)
2015/12/31 Javascript
属于你的jQuery提示框(Tip)插件
2016/01/20 Javascript
JavaScript中解决多浏览器兼容性23个问题的快速解决方法
2016/05/19 Javascript
每日十条JavaScript经验技巧(二)
2016/06/23 Javascript
使用jquery判断一个元素是否含有一个指定的类(class)实例
2017/02/12 Javascript
Node.js五大应用性能技巧小结(必须收藏)
2017/08/09 Javascript
Element-UI Table组件上添加列拖拽效果实现方法
2018/04/14 Javascript
详解服务端预渲染之Nuxt(介绍篇)
2019/04/07 Javascript
node.js 基于cheerio的爬虫工具的实现(需要登录权限的爬虫工具)
2019/04/10 Javascript
vue路由对不同界面进行传参及跳转的总结
2019/04/20 Javascript
详解使用uni-app开发微信小程序之登录模块
2019/05/09 Javascript
JQuery获取可视区尺寸和文档尺寸及制作悬浮菜单示例
2019/05/14 jQuery
vue-cli4项目开启eslint保存时自动格式问题
2020/07/13 Javascript
解决Vue中的生命周期beforeDestory不触发的问题
2020/07/21 Javascript
Python正规则表达式学习指南
2016/08/02 Python
OpenCV 边缘检测
2019/07/10 Python
django 2.2和mysql使用的常见问题
2019/07/18 Python
python名片管理系统开发
2020/06/18 Python
AmazeUI的下载配置与Helloworld的实现
2020/08/19 HTML / CSS
Mio Skincare中文官网:肌肤和身体护理
2016/10/26 全球购物
毕业生怎样写好自荐信
2013/11/11 职场文书
优秀管理者事迹材料
2014/05/22 职场文书
工作检讨书怎么写
2015/01/23 职场文书
党风廉正建设责任书
2015/01/29 职场文书
Redis6.0搭建集群Redis-cluster的方法
2021/05/08 Redis
Java中使用Filter过滤器的方法
2021/06/28 Java/Android
mysql 子查询的使用
2022/04/28 MySQL