现在,我必须将 mp3 文件分成几个部分。我使用 python 来完成这项工作。但我找不到一个好的图书馆来完成这项工作。我已经尝试过 pymp3cut、echo-nest-remix,但效果不佳。
那么还有更好的选择吗?
您可以将 mp3 转换为原始 .wav 并使用 audiolab 读取它,然后每 N 帧写出文件,然后将它们转换为 mp3。
我一直在使用 VLC 的 python 绑定 http://wiki.videolan.org/Python_bindings 来转换视频并分割成帧。 VLC 支持 MP3,但我必须承认我没有将其用于音频。
好的选择可能是
librosa
,您只需使用采样率和所需秒数分割数组,例如下面的秒数 - 2
import librosa
import soundfile as sf
audio_file = "your_example.mp3"
y, sr = librosa.load(audio_file, sr=None)
# chunk duration 2 seconds
chunk_duration = 2
chunk_samples = int(chunk_duration * sr)
chunks = [y[i:i + chunk_samples] for i in range(0, len(y), chunk_samples)]
for i, chunk in enumerate(chunks):
output_file = f"chunk_{i}.mp3"
sf.write(output_file, chunk, sr)