python给视频添加背景音乐并改变音量的具体方法


Posted in Python onJuly 19, 2020

用到给视频添加背景音乐,并改变音量。记录一下,与碰到同样问题的朋友共享。

import subprocess

inmp4='E:/PycharmProjects/untitled2/hecheng/191030_232_xs.mp4'
inmp3='E:/PycharmProjects/untitled2/hecheng/bg.mp3'
inmp32='E:/PycharmProjects/untitled2/hecheng/bg2.mp3'
outmp3='E:/PycharmProjects/untitled2/hecheng/bg_out.mp3'
outmp4='E:/PycharmProjects/untitled2/hecheng/191030_232_xs_bg.mp4'


cmd='ffmpeg -y -i '+ inmp4 +' -i '+ inmp3 +' -filter_complex \
"[0:a]volume=10dB[a0]; \
[1:a]volume=-10dB[a1]; \
[a0][a1]amix=inputs=2[a]" \
-map 0:v -map "[a]" -c:v copy -c:a aac -shortest '+ outmp4

p = subprocess.call(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)

# 查看音轨信息
print('*'*80)
cmd='ffmpeg -i '+ outmp3 +' -filter_complex volumedetect -c:v copy -f null /dev/null'
P = subprocess.call(cmd)

记录几个cmd

# 分别降低音量后叠加
cmd='ffmpeg -y -i '+ inmp4 +' -i '+ inmp3 +' -filter_complex \
"[0:a]volume=10dB[a0]; \
[1:a]volume=-30dB[a1]; \
[a0][a1]amix=inputs=2[a]" \
-map 0:v -map "[a]" -c:v copy -c:a aac -shortest '+ outmp4

# 纯音频,叠加,可控制音量,并且设置一个循环,并按照第一个截取时间
cmd='ffmpeg -y -i '+ mp4p3 +' -i '+ inmp3 +' -filter_complex \
"[0:a]volume=10dB[a0]; \
[1:a]aloop=loop=-1:size=2e+09[a1]; \
[a1]volume=-15dB[a12]; \
[a0][a12]amix=inputs=2:duration=first:dropout_transition=2" ' + outmp4mp3

# 视频添加循环音乐
cmd='ffmpeg -y -i '+ inmp4 +' -i '+ inmp3 +' -filter_complex \
"[0:a]volume=10dB[a0]; \
[1:a]aloop=loop=-1:size=2e+09[a1]; \
[a1]volume=-15dB[a12]; \
[a0][a12]amix=inputs=2:duration=first:dropout_transition=2[a]" \
-map 0:v -map "[a]" -c:v copy -c:a aac -shortest '+ outmp4

ffmpeg 隐藏调试信息

-loglevel quiet

资料参考:

https://stackoverflow.com/questions/13780736/ffmpeg-unable-to-find-a-suitable-output-format-for-i

https://stackoverflow.com/questions/44712868/ffmpeg-set-volume-in-amix

到此这篇关于python给视频添加背景音乐并改变音量的具体方法的文章就介绍到这了,更多相关python给视频添加背景音乐并改变音量内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python获取文件后缀名及批量更新目录下文件后缀名的方法
Nov 11 Python
用Python创建声明性迷你语言的教程
Apr 13 Python
python网络编程之数据传输UDP实例分析
May 20 Python
python自动翻译实现方法
May 28 Python
Python脚本实现Web漏洞扫描工具
Oct 25 Python
再谈Python中的字符串与字符编码(推荐)
Dec 14 Python
解决python super()调用多重继承函数的问题
Jun 26 Python
PyCharm使用之配置SSH Interpreter的方法步骤
Dec 26 Python
Python 随机生成测试数据的模块:faker基本使用方法详解
Apr 09 Python
keras 多任务多loss实例
Jun 22 Python
python如何实现读取并显示图片(不需要图形界面)
Jul 08 Python
Python基于execjs运行js过程解析
Nov 27 Python
python中加背景音乐如何操作
Jul 19 #Python
python实现最短路径的实例方法
Jul 19 #Python
python等待10秒执行下一命令的方法
Jul 19 #Python
python怎么删除缓存文件
Jul 19 #Python
python实现从ftp上下载文件的实例方法
Jul 19 #Python
python中关于数据类型的学习笔记
Jul 19 #Python
Python趣味实例,实现一个简单的抽奖刮刮卡
Jul 18 #Python
You might like
ThinkPHP之R方法实例详解
2014/06/20 PHP
2014最热门的24个php类库汇总
2014/12/18 PHP
php微信公众号开发(2)百度BAE搭建和数据库使用
2016/12/15 PHP
js 延迟加载 改变JS的位置加快网页加载速度
2012/12/11 Javascript
使用jQuery validate 验证注册表单实例演示
2013/03/25 Javascript
javascript不可用的问题探究
2013/10/01 Javascript
JavaScript设计模式之单例模式实例
2014/09/24 Javascript
jquery制作 随机弹跳的小球特效
2015/02/01 Javascript
自定义函数实现IE7与IE8不兼容js中trim函数的问题
2015/02/03 Javascript
javascript函数式编程程序员的工具集
2015/10/11 Javascript
javascript生成随机数方法汇总
2015/11/12 Javascript
JS构造函数与原型prototype的区别介绍
2016/07/04 Javascript
JS实现遍历不规则多维数组的方法
2018/03/21 Javascript
微信小程序实现指定显示行数多余文字去掉用省略号代替
2018/07/25 Javascript
vue如何截取字符串
2019/05/06 Javascript
JavaScript图像放大镜效果实现方法详解
2020/06/28 Javascript
javascript+css实现俄罗斯方块小游戏
2020/06/28 Javascript
vue中echarts引入中国地图的案例
2020/07/28 Javascript
[46:21]Liquid vs LGD 2018国际邀请赛淘汰赛BO3 第一场 8.23
2018/08/24 DOTA
Python基础之函数用法实例详解
2014/09/10 Python
详解Django的model查询操作与查询性能优化
2018/10/16 Python
PyPDF2读取PDF文件内容保存到本地TXT实例
2020/05/12 Python
HTML5实现文件断点续传的方法
2017/01/04 HTML / CSS
canvas 绘图时位置偏离的问题解决
2020/09/16 HTML / CSS
施华洛世奇澳大利亚官网:SWAROVSKI澳大利亚
2017/01/06 全球购物
高档奢华时装在线目的地:FORWARD by elyse walker
2017/10/16 全球购物
企划主管岗位职责
2013/12/12 职场文书
公司成本主管岗位责任制
2014/02/21 职场文书
历史专业学生的自我评价
2014/02/28 职场文书
学生安全责任书
2014/04/15 职场文书
促销活动总结报告
2014/04/26 职场文书
计划生育宣传标语
2014/06/21 职场文书
2014向国旗敬礼网上签名活动总结
2014/09/27 职场文书
2014年高校辅导员工作总结
2014/12/09 职场文书
解决python3安装pandas出错的问题
2021/05/20 Python
HTML中的表单Form实现居中效果
2021/05/25 HTML / CSS