【Python】带有Python的音频处理

带有Python的音频处理

CoXie带你学编程发布于 23 分钟前

音频素材请点击这里进行观看

往下拉就是文章地址

有时,在进行编程时,我们需要进行一些音频处理。编程中最常用的音频处理任务包括–加载和保存音频文件,将音频文件拆分和追加到片段,使用不同的数据创建混合音频文件,操纵声音级别,应用一些过滤器以及生成音频调整和也许更多。

所有这些东西都可以使用Python来实现。Python是一种灵活的语言。它为您听说过的几乎所有任务提供了库。对于音频处理,Python提供了Pydub,这是一个非常简单且设计良好的模块。

安装Pydub

就像Python Pydub中的所有其他模块一样,也可以使用简单的命令– pip install pydub轻松安装。

音频处理:加载和播放

AudioSegmentPydub中的父类。它起着可以加载,操作和保存音频文件的容器的作用。让我们用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

阅读 12发布于 23 分钟前

本作品系原创,采用《署名-非商业性使用-禁止演绎 4.0 国际》许可协议


Python0基础

针对0基础的小伙伴的专栏

avatar

CoXie带你学编程

186 声望

11 粉丝

0 条评论

得票时间

avatar

CoXie带你学编程

186 声望

11 粉丝

宣传栏

音频素材请点击这里进行观看

往下拉就是文章地址

有时,在进行编程时,我们需要进行一些音频处理。编程中最常用的音频处理任务包括–加载和保存音频文件,将音频文件拆分和追加到片段,使用不同的数据创建混合音频文件,操纵声音级别,应用一些过滤器以及生成音频调整和也许更多。

所有这些东西都可以使用Python来实现。Python是一种灵活的语言。它为您听说过的几乎所有任务提供了库。对于音频处理,Python提供了Pydub,这是一个非常简单且设计良好的模块。

安装Pydub

就像Python Pydub中的所有其他模块一样,也可以使用简单的命令– pip install pydub轻松安装。

音频处理:加载和播放

AudioSegmentPydub中的父类。它起着可以加载,操作和保存音频文件的容器的作用。让我们用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的音频处理 的全部内容, 来源链接: www.h5w3.com/114451.html

回到顶部