如何将单个音频文件拆分为多个文件?

How to split a single audio file into multiple files?

我想使用 python 将单个音频文件拆分为多个音频文件并保存,文件中的峰值由静音分隔。 音频文件包含 5 个 A

波形如下:

我已经尝试过 librosa 库和 pydub 代码 我也提到了这个link: https://gist.github.com/kylemcdonald/c8e62ef8cb9515d64df4

但它会将文件切割成 1 秒的等间隔,我不希望这样。我想根据静音拆分文件

import librosa as l
from scipy.io import wavfile
audio = l.load("D:/Downloads/Voice_a.wav")[0]
x = l.effects.trim(audio, top_db = 50)[0]

预期输出是 5 个不同的文件,每个文件都有一个 'A'

我做了一些研究,终于得到了答案

def split(filepath):
    sound = AudioSegment.from_wav(filepath)
    dBFS = sound.dBFS
    chunks = split_on_silence(sound, 
        min_silence_len = 500,
        silence_thresh = dBFS-16)
    return chunks