pydub-使用简单易用的高级界面处理音频的python库

pydub是一个简单易用的,用于处理音频的python库。

快速开始

打开一个WAV文件:

from pydub import AudioSegmentsong = AudioSegment.from_wav("never_gonna_give_you_up.wav")

也可以是mp3:

song = AudioSegment.from_mp3("never_gonna_give_you_up.mp3")

同样,ogg格式或者flv格式或者任何ffmpeg支持的文件格式都是可以的:

ogg_version = AudioSegment.from_ogg("never_gonna_give_you_up.ogg")flv_version = AudioSegment.from_flv("never_gonna_give_you_up.flv")mp4_version = AudioSegment.from_file("never_gonna_give_you_up.mp4", "mp4")wma_version = AudioSegment.from_file("never_gonna_give_you_up.wma", "wma")aac_version = AudioSegment.from_file("never_gonna_give_you_up.aiff", "aac")

切片音频:

# pydub does things in millisecondsten_seconds = 10 * 1000first_10_seconds = song[:ten_seconds]last_5_seconds = song[-5000:]

处理音频使得开始的时候声音更大,结束的时候声音更小:

# boost volume by 6dBbeginning = first_10_seconds + 6# reduce volume by 3dBend = last_5_seconds - 3

连接音频(将一个文件添加到另一个文件的末尾)

without_the_middle = beginning + end

How long is it?

without_the_middle.duration_seconds == 15.0

音频间隔是不变的:

# song is not modifiedbackwards = song.reverse()

交叉淡入淡出(重复,开始和结束均未修改)

# 1.5 second crossfadewith_style = beginning.append(end, crossfade=1500)

重复

# repeat the clip twicedo_it_over = with_style * 2

淡入淡出(请注意,您可以链接操作,因为一切都会返回AudioSegment)

# 2 sec fade in, 3 sec fade outawesome = do_it_over.fade_in(2000).fade_out(3000)

保存结果(同样,ffmpeg支持)

awesome.export("mashup.mp3", format="mp3")

使用标签保存结果(元数据)

awesome.export("mashup.mp3", format="mp3", tags={'artist': 'Various artists', 'album': 'Best of 2011', 'comments': 'This album is awesome!'})

您可以使用ffmpeg支持的任何语法传递可选的bitrate参数以导出:

awesome.export("mashup.mp3", format="mp3", bitrate="192k")

ffmpeg支持的其他任何参数都可以作为列表传递到“ parameters”参数中,其中开关优先,参数第二。请注意,不会对这些参数进行验证,并且您可能会受到特定的ffmpeg / avlib构建支持的限制。

# Use preset mp3 quality 0 (equivalent to lame V0)awesome.export("mashup.mp3", format="mp3", parameters=["-q:a", "0"])# Mix down to two channels and set hard output volumeawesome.export("mashup.mp3", format="mp3", parameters=["-ac", "2", "-vol", "150"])

安装

安装pydub非常简单,但是请不要忘记安装ffmpeg / avlib,

pip install pydub

或从网盘安装我们保存的pydub压缩包文件。

例子

假设您有一个包含mp4和flv视频的目录,并且想要将它们全部转换为mp3,以便可以在mp3播放器上收听它们。

(0)

相关推荐