In addition to Weibo, there is also WeChat
Please pay attention
WeChat public account
Shulou
2025-01-19 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Development >
Share
Shulou(Shulou.com)06/01 Report--
这篇文章主要为大家展示了"Python中音频调整音量的示例分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Python中音频调整音量的示例分析"这篇文章吧。
环境依赖
ffmpeg环境安装
ffmpy安装:
pip install ffmpy -i https://pypi.douban.com/simple代码
不废话上代码。
#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2021/11/24 22:45# @Author : 剑客阿良_ALiang# @Site : # @File : raise_audio_volume_tool.py import osimport uuidfrom ffmpy import FFmpeg # 通过倍率提升def raise_by_ratio(audio_path: str, output_dir: str, ratio): ext = os.path.basename(audio_path).strip().split('.')[-1] if ext not in ['wav', 'mp3']: raise Exception('format error') ff = FFmpeg( inputs={ '{}'.format(audio_path): None}, outputs={ os.path.join( output_dir, '{}.{}'.format( uuid.uuid4(), ext)): '-filter:a "volume={}"'.format(ratio)}) print(ff.cmd) ff.run() return os.path.join(output_dir, '{}.{}'.format(uuid.uuid4(), ext)) # 通过分贝数提升def raise_by_decibel(audio_path: str, output_dir: str, decibel): ext = os.path.basename(audio_path).strip().split('.')[-1] if ext not in ['wav', 'mp3']: raise Exception('format error') ff = FFmpeg( inputs={ '{}'.format(audio_path): None}, outputs={ os.path.join( output_dir, '{}.{}'.format( uuid.uuid4(), ext)): '-filter:a "volume={}dB"'.format(decibel)}) print(ff.cmd) ff.run() return os.path.join(output_dir, '{}.{}'.format(uuid.uuid4(), ext))
代码说明
1、raise_by_ratio和raise_by_decibel方法的参数都为音频地址、输出目录地址、倍率(分贝数)。
2、倍率参数可以为浮点型,例如:0.5
3、分贝数可以为负值。
4、为了避免输出文件文件名重复,使用uuid作为文件名。
5、音频后缀格式校验较少,如需添加自行添加。
验证一下
准备音频的音量,这里提供查看音频的分贝数的ffmpeg命令。
ffmpeg -i C:\Users\yi\Desktop\660952057553105332.wav -filter_complex volumedetect -c:v copy -f null C:\Users\yi\Desktop\1.txt
执行代码
if __name__ == '__main__': print( raise_by_ratio( 'C:\\Users\\yi\\Desktop\\660952057553105332.wav', 'C:\\Users\\yi\\Desktop\\', 2)) print( raise_by_decibel( 'C:\\Users\\yi\\Desktop\\660952057553105332.wav', 'C:\\Users\\yi\\Desktop\\', -10))
倍率音量提升效果
增大了一点,不明显,可能跟基础的分贝数有关。
分贝数提升效果
这个数值比较精准。
以上是"Python中音频调整音量的示例分析"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.
Views: 0
*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.
Continue with the installation of the previous hadoop.First, install zookooper1. Decompress zookoope
"Every 5-10 years, there's a rare product, a really special, very unusual product that's the most un
© 2024 shulou.com SLNews company. All rights reserved.