python音频处理库_Python中音频处理库pydub的使用教程
前言
pydub是Python中用户处理音频文件的一个库。本文主要介绍了关于Python音频处理库pydub使用的相关内容,分享出来供大家参考学习,下面来看看详细的介绍:
安装:
1、安装pip工具:sudo apt-get install python-pip
2、安装pydub:sudo pip install pydub
3、pydub依赖于ffmpeg,所以还需要安装ffmpeg,由于Ubunbtu14.04官方源移除了ffmpeg,因此通过ppa源安装:
sudo apt-add-repository ppa:mc3man/trusty-media
sudo apt-get update
sudo apt-get install ffmpeg
使用:
AudioSegment方法能够将一个音频文件打开成AudioSegment示例,并使用各种方法处理音频,使用前先调用from pydub import AudioSegment
打开音频:
sound1 = AudioSegment.from_file("/path/to/sound.wav", format="wav") //默认mp3格式
sound2 = AudioSegment.from_file("/path/to/another_sound.mp3", format="mp3")等价于sound1
= AudioSegment.from_mp3("/path/to/sound.mp3")
音量处理:
louder = sound1 + 6 //sound1 声音提高6dB
quieter = sound1 - 6 //sound1 声音降低6dB
combined = sound1 + sound2 //sound1 和sound2叠加
duration_in_milliseconds = len(sound1) //获取sound的时长
beginning = sound1[:5000] //获取sound1的前5秒音频数据
end = sound1[-5000:] //获取sound1的后5秒音频数据
注意:
1、对于多个音频的计算,需要多个音频之间的通道数、帧数、采样率以及比特数都一样,否则低质量的音频会向高质量的转换,单声道会向立体声转换,低帧数向高帧数转换。
2、AudioSegment原生就支持wav和raw,如果其他文件需要安装ffmpeg。raw还需要,sample_width,frame_rate,channels三个参数。
生成文件:
export()方法可以使一个AudioSegment对象转化成一个文件。
sound = AudioSegment.from_file("/path/to/sound.wav", format="wav")
file_handle = sound.export("/path/to/output.mp3", format="mp3") //简单输出
file_handle = sound.export("/path/to/output.mp3",
format="mp3",
bitrate="192k",
tags={"album": "The Bends", "artist": "Radiohead"}) //复杂输出
AudioSegment.empty():
AudioSegment.empty()用于生成一个长度为0的AudioSegment对象,一般用于多个音频的合并。
sounds = [
AudioSegment.from_wav("sound1.wav"),
AudioSegment.from_wav("sound2.wav"),
AudioSegment.from_wav("sound3.wav"),
]
playlist = AudioSegment.empty()
for sound in sounds:
playlist += sound
AudioSegment.silent():
ten_second_silence = AudioSegment.silent(duration=10000) //产生一个持续时间为10s的无声AudioSegment对象
获取参数:
此外,还能通过AudioSegment获取音频的参数,同时还能修改原始参数。
python音频处理库_Python中音频处理库pydub的使用教程相关推荐
- python处理音频的库_Python中音频处理库pydub的使用教程
前言 pydub是Python中用户处理音频文件的一个库.本文主要介绍了关于Python音频处理库pydub使用的相关内容,分享出来供大家参考学习,下面来看看详细的介绍: 安装: 1.安装pip工具: ...
- python网络爬虫的第三方库_Python常用第三方库_网络爬虫、数据分析与WEB开发、机器学习...
Python语言有超过12万个第三方库,覆盖信息技术几乎所有领域.下面简单介绍下网络爬虫.自动化.数据分析与可视化.WEB开发.机器学习和其他常用的一些第三方库,如果有你感兴趣的库,不妨去试试它的功能 ...
- python加密库_python基于pyDes库实现des加密的方法
本文实例讲述了python基于pyDes库实现des加密的方法.分享给大家供大家参考,具体如下: 下载及简介地址:https://twhiteman.netfirms.com/des.html 如需要 ...
- time库是python中处理时间的标准库_python语言time库和datetime库基本使用详解
今天是边复习边创作博客的第三天,我今年大二,我们专业开的有这门课程,因为喜欢所以更加认真学习,本以为没人看呢,看了后台浏览量让我更加认真创作,这篇博客花了2个半小时的时间,结合自己所学,所思,所想写作 ...
- python怎么用第三方库_python中第三方库的下载方法
1.最常用:在命令行中输入 pip install "库名称" 例如 pip install gensim 查看pip的命令集: pip uninstall "库名& ...
- python requests下载图片_Python使用urllib库、requests库下载图片的方法比较
我们知道,使用Python制作一个爬虫程序,requests库是一个不错的选择,requests发送网络请求非常简单,比较使用urllib库,使用requests库可以大大减少代码量,它还可以定制请求 ...
- python微信加人_Python 基于wxpy库实现微信添加好友功能(简洁)
Python 基于wxpy库实现微信添加好友功能(简洁) 更新时间:2019年11月29日 10:21:29 作者:帅鸽水煮鱼 这篇文章主要介绍了Python 基于wxpy库实现微信添加好友功能,本文 ...
- python 3d库_python的3d库
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 我正在寻找一个3d数学库在python或python绑定. 它需要处理旋转,平移 ...
- python好用的内置库_Python开发哪些库好?老男孩Python学习班
近年来,伴随着人工智能时代的到来,也促使Python编程语言发展,因此Python成为公认的人工智能编程语言.之所以Python受欢迎,得益于其内置大量的库,那么Python开发有哪些基本库呢?这六大 ...
最新文章
- AJAX 跨域请求 - JSONP获取JSON数据
- vmware添加新硬盘 挂载新硬盘 硬盘扩容
- 给字母保密的c语言,C语言练习题
- 联想计算机如何设置用户名和密码,联想电脑怎样设密码?联想电脑设置密码方法步骤【图文】...
- Java并发编程-线程的状态
- C++ vector所有操作,你真的掌握vector了吗?两万总结带你干穿vector
- 获取今日、本周、本月至今日的所有日期
- jfinal分页时使用like
- 深度学习在图像语义分割中的应用
- [unity3d]插件2d toolskit
- 转换azw3到epub
- Linux的vx开头的文件,微博 Qzone 微信 Linux文件及目录常用命令,进来瞅瞅
- 使用 HBuilderX 打包IOS 和 安卓
- 安卓 linux服务器文件夹,Android系统下根目录下文件
- 五种常见的加密方式及常用的加解密工具
- CAD日照分析之如何创建日照模型?
- 2021年3月云南一级计算机等级报名时间丨报名入口
- Java调用接口获取json数据解析后保存到数据库
- 哲学在语文写作教学中的作用
- 职高学生计算机学情分析,精选中职计算机说课稿三篇
热门文章
- 修改本地网络映射文件
- centos安装duf
- babel到底将代码转换成什么鸟样?
- 红旗桌面4.0版最新使用方法和问题解答245例(转)
- 阿迪达斯双11成交额创新高,成为天猫第一运动品牌
- [艾兰岛][Ylands]从0开始学游戏开发_11.翅膀特效
- 华为手机鸿蒙系统手机_华为鸿蒙系统不会用于手机?快来看看
- 小米机械键盘测试软件,网友吐槽小米悦米机械键盘“有文化”:“独创”ATL按键...
- manjaro独显无法调节亮度(N卡)
- springboot 中MongoDB查询、条件查询、分页