Pydub 按样本切片音频段

jip*_*oe4 6 python audio sample-rate python-3.x pydub

假设我有两个相同采样率的音频段,它们是从 Pydub 中的 .wav 文件导入的,并假设我知道哪个更短。现在假设我想将较长的音频文件分成两段,以便第一段与较短的音频文件具有完全相同的长度(下降到完全相同的样本数!)并将这两个段中的每一个分配给新的音频段. 我怎样才能在 Pydub 中做到这一点? 如果我不能使用 Pydub 达到这种精度水平,你能给我一个同样有效的替代方案吗?

基本上我只想在样本完美级别将较长的音频片段分成两部分。这是我想要的插图: 在此处输入图片说明

Jia*_*aro 4

您可以使用 AudioSegment().get_array_of_samples() ,然后使用所需的精确样本数构造新片段:

samples = sound.get_array_of_samples()  
shorter = sound._spawn(samples[:20000])
Run Code Online (Sandbox Code Playgroud)

注意:此代码未经测试 - 我在我的 iPhone 上编写了它:)