赞
踩
有时,在脚本或应用程序中,我们需要执行音频处理任务。例如:
加载和保存不同类型的音频文件。
在片段中拆分或附加音频。
混合来自两个不同音频文件的音频。
更改音频电平或声像设置。
更改音频电平或声像设置。
应用简单的效果,如滤镜。
生成音频音调。
安装
加载和播放音频
的主要类是 AudioSegment。 AudioSegment 充当加载、操作和保存音频的容器。
要创建我们的第一个音频脚本,我们需要一个测试音频文件,它可以是任何支持的格式,例如 WAV、MP3 或 AIFF。出于本教程的目的,我们将使用 urllib.request 下载文件作为脚本的一部分。
结果是这样的:
基本音频操作
现在我们已经加载了一些音频,我们可以进行各种形式的操作:
请注意,在最后一行代码中,我们如何链接fade_in() 和fade_out() 操作。这是因为每个操作都会返回一个 AudioSegment 实例。
分层音频
除了操作单个音频段之外,我们还可以将不同的段与不同的电平和声像设置进行分层和混合。
请注意,在最后一行中,我们使用 Python 的“切片”运算符按长度毫秒对节拍进行切片。
这是因为我们的 beat AudioSegment 是 loop2 的两倍。按长度切片意味着我们将节拍的前半部分与循环 2 混合。
结果是这样的:
另一种方法是向overlay() 提供loop=True 参数。这会根据需要自动循环较短的片段以与较长的片段对齐。
应用效果
在下一个示例中,我们将通过对音频应用平移、过滤和反转效果来将所有内容整合在一起。
在 pan() 方法的参数中,我们提供了一个介于 -1 和 1 之间的值,其中 -1 是左边,1 是右边,0 是中心。
结果是这样的:
最后一步,我们可以将新的音频循环保存到一个新文件中。这可以是任何支持的音频格式:
合成音调
除了加载和处理音频文件,还可以合成新的音调。
这些可以是任何频率的正弦波、方波或锯齿波。它还可以产生白噪声。音调可以转换为 AudioSegment 并像常规音频文件一样组合。
在下面的示例中,我们将使用 Sine 类为谐波系列的前 15 个间隔生成正弦音调。
请注意我们如何使用 += 运算符将每个 200 毫秒的正弦音附加到空段的末尾。
结果是这样的:
本文完整代码
详情参阅 - 亚图跨际
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。