带有Python的音频处理(附带源码)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了带有Python的音频处理(附带源码),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2341字,纯文字阅读大概需要4分钟。
内容图文
![带有Python的音频处理(附带源码)](/upload/InfoBanner/zyjiaocheng/606/39e7027fa7eb465e8558fb9ea98833f0.jpg)
由于博客播放不了音频,所以音频将以视频形式展现。公众号也正在进行抽书
往下拉就是文章地址
有时,在进行编程时,我们需要进行一些音频处理。编程中最常用的音频处理任务包括–加载和保存音频文件,将音频文件拆分和追加到片段,使用不同的数据创建混合音频文件,操纵声音级别,应用一些过滤器以及生成音频调整和也许更多。
所有这些东西都可以使用Python
来实现。Python
是一种灵活的语言。它为您听说过的几乎所有任务提供了库。对于音频处理,Python
提供了Pydub
,这是一个非常简单且设计良好的模块。
安装Pydub
就像Python Pydub
中的所有其他模块一样,也可以使用简单的命令– pip install pydub
轻松安装。
音频处理:加载和播放
AudioSegment
是Pydub
中的父类。它起着可以加载,操作和保存音频文件的容器的作用。让我们用python
创建我们的第一个音频。为此,我们将需要一个测试文件,该文件可以采用任何格式,例如WAV,MP3
或任何格式。在本文中,我将下载一个音频文件,就像我们从网络上抓取数据一样:
import urllib.request
from pydub import AudioSegment
from pydub.playback import play
urllib.request.urlretrieve("音频地址", "音频名称")
loop = AudioSegment.from_wav("音频名称")
play(loop)
音频素材请看上面
基本音频处理
加载音频后,现在我们可以执行各种类型的音频处理,让我们从重复音频文件的一些必要步骤开始:
loop2 = loop * 2
length = len(loop2)
fade_time = int(length * 0.5)
faded = loop2.fade_in(fade_time).fade_out(fade_time)
音频素材请看上面
分层音频
上面我们只是简单地重复了音频,现在让我们分层并混合不同级别的音频片段:
urllib.request.urlretrieve("https://tinyurl.com/yx3k5kw5", "beat.wav")
beat = AudioSegment.from_wav("beat.wav")
mixed = beat[:length].overlay(loop2)
音频素材请看上面
音频处理:应用过滤器
现在,让我们通过应用滤镜和反转音频效果,将所有内容融合在一起,以进一步发展:
filtered = beat.low_pass_filter(3000)
loop = loop2.reverse().pan(-0.5).overlay(loop2.pan(0.5))
final = filtered.overlay(loop2 - 3, loop=True)
音频素材请看上面
现在,如果您要保存音频文件,则可以按如下所示轻松进行操作:
final.export("final.mp3", format="mp3")
合成音调
除了处理上面介绍的声音的所有步骤之外,我们还可以合成新的音调。这些音调可以是任何频率的正弦波,方波或操纵波。我们还可以执行白噪声。在下面的示例中,我将显示正弦方法,以谐波的方式为最初的15个间隔产生正弦调谐:
result = AudioSegment.silent(duration=0)
for n in range(15):
gen = Sine(200 * n)
sine = gen.to_audio_segment(duration=200).apply_gain(-3)
sine = sine.fade_in(50).fade_out(100)
result += sine
play(result)
音频素材请看上面
内容总结
以上是互联网集市为您收集整理的带有Python的音频处理(附带源码)全部内容,希望文章能够帮你解决带有Python的音频处理(附带源码)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。