我发现pydub是用简单的方法和紧凑的代码进行这种音频操作的最简单的工具。
可以使用安装pydubpip install pydub
如果需要,您可能需要安装ffmpeg/avlib。有关详细信息,请参见this link。
这是一个你要求的片段。一些参数,如silence_threshold和target_dBFS可能需要进行一些调整以符合您的需求。
总的来说,我能够分割mp3文件,尽管我必须尝试不同的silence_threshold值。
片段# Import the AudioSegment class for processing audio and the
# split_on_silence function for separating out silent chunks.
from pydub import AudioSegment
from pydub.silence import split_on_silence
# Define a function to normalize a chunk to a target amplitude.
def match_target_amplitude(aChunk, target_dBFS):
''' Normalize given audio chunk '''
change_in_dBFS = target_dBFS - aChunk.dBFS
return aChunk.apply_gain(change_in_dBFS)
# Load your audio.
song = AudioSegment.from_mp3("your_audio.mp3")
# Split track where the