介绍Python音频处理库pydub的使用方法

  • 时间:
  • 9465人关注

这篇文章主要给大家介绍了关于Python中音频处理库pydub的使用教程,pydub是Python中用户处理音频文件的一个库,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面来一起,另外这篇文章主要知识点是关于python、pydub、Python的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子资料:

前言

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获取音频的参数,同时还能修改原始参数。

具体详见:https://github.com/jiaaro/pydub/blob/master/API.markdown

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对码农之家的支持。


上一篇:python3 urllib中urlopen报错的问题解决办法

下一篇:Python通过URL打开图片的具体步骤

相关内容

  • Python如何限制输出日志的大小

    这篇文章主要介绍了Python 限制输出日志的大小方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

    05-06Python限制日志大小

    阅读更多
  • python实现可视化的MD5、sha256哈希加密小工具

    这篇文章主要介绍了详解python实现可视化的MD5、sha256哈希加密小工具,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    04-07python MD5、sha256哈希加密

    阅读更多
  • Python gevent协程切换实现方法

    这篇文章主要介绍了Python gevent协程切换实现详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    04-07Python gevent协程切换

    阅读更多
  • python/golang实现循环链表的代码

    这篇文章主要介绍了python/golang如何实现循环链表,帮助大家更好的理解和学习循环链表的实现方法,感兴趣的朋友可以了解下

    04-07python/golang 循环链表

    阅读更多
  • 2020版Python学习路线图(附学习资料)

    这篇文章主要介绍了Python学习路线图(2020最新版),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    04-07Python学习路线图

    阅读更多
  • Python网络爬虫权威指南

    Python网络爬虫权威指南

    做为这种收集和了解互联网上海量信息的方法,网页页面爬取技术性变得更加关键。而撰写简易的自动化技术程序流程(网络爬虫),多次就能够全自动爬取几百万个网页页面中的信息内容,

    大小:5.54 MBPython爬虫

    点击下载
  • Python数据分析与数据化运营

    Python数据分析与数据化运营

    这书內容从逻辑性上共分成两绝大多数,第壹一部分是相关数据统计分析类的主题风格,其次一部分是相关数字化经营的主题风格。第壹一部分的內容包含1/2/3/4章和附则,关键详细介绍了Pyt

    大小:18 MBPython

    点击下载
  • Python金融实战

    Python金融实战

    本书是Python金融实战类指南,指导金融大数据分析过程,从Python的安装、基础语法,再到一系列简单的编程示例,序渐进地引导读者学习Python

    大小:33 MBPython

    点击下载
  • Python数据科学指南

    Python数据科学指南

    本书是Python数据分析编程入门,详细介绍了Python在数据科学中的应用,60多个实用的开发技巧,帮你探索Python及其强大的数据科学能力

    大小:62.3 MBPython数据分析

    点击下载
  • Python网络爬虫实战

    Python网络爬虫实战

    这书从Python3.6.4的安裝刚开始,详尽解读了Python从简易程序流程拓宽到Python爬虫技术的过程。这书从实战演练来看,依据不一样的要求选择不一样的网络爬虫,有目的性地解读了几类Python爬虫技

    大小:50.9 MBPython爬虫

    点击下载
  • Python文本分析

    Python文本分析

    本书是Intel首席科学家撰写,全面系统阐释Python文本分析的相关基础知识、实用技术及实践,介绍了文本和语言语法、结构和语义的基础概念和高级概念等,欢迎下载

    大小:100.4 MBPython编程

    点击下载
  • 跟老齐学Python:轻松入门

    跟老齐学Python:轻松入门

    本书是数十套结合课件的Python教学代码,本书是Python语言的入门读物,旨在引导初学者能够在轻松的环境中,掌握Python的基础知识

    大小:46.6 MBPython

    点击下载

学习笔记