下面是一个使用Python编程语言实现的示例代码,用于遍历目录中的音频文件,并将其拆分为60秒的音频文件。
import os
from pydub import AudioSegment
def split_audio_file(input_file, output_directory):
audio = AudioSegment.from_file(input_file)
duration = len(audio)
start_time = 0
end_time = 60 * 1000
while start_time < duration:
if end_time > duration:
end_time = duration
split_audio = audio[start_time:end_time]
output_file = os.path.join(output_directory, f"{start_time}-{end_time}.mp3")
split_audio.export(output_file, format="mp3")
start_time += 60 * 1000
end_time += 60 * 1000
def traverse_directory(directory):
for root, dirs, files in os.walk(directory):
for file in files:
if file.endswith(".mp3"):
file_path = os.path.join(root, file)
split_audio_file(file_path, root)
# 用法示例
traverse_directory("/path/to/directory")
这个例子使用了os.walk()
方法来遍历目录中的文件。对于每个找到的MP3文件,它将调用split_audio_file()
函数来拆分文件,并将拆分后的音频保存到同一目录中。
在split_audio_file()
函数中,它首先使用AudioSegment.from_file()
方法加载音频文件。然后,它使用循环来拆分音频文件,并将每个拆分后的音频保存为单独的文件。
请确保在运行此代码之前已安装pydub
库。可以使用pip install pydub
命令来安装它。