DataBall 助力快速掌握数据集的信息和使用方式,会员享有 百种数据集,持续增加中。
需要更多数据资源和技术解决方案,知识星球: “DataBall - X 数据球(free)”
-----------------------------------------------------------------------------------------
AudioSegment 将音频切割为指定长度时间片段。
# -*-coding:utf-8-*-
# date:2024-12
# Author: DataBall - XIAN
# Function:将音频切割为指定长度时间片段
from pydub import AudioSegment
audio_path = 'audio/test.mp3'
# 加载音频文件
audio = AudioSegment.from_file(audio_path)
# 确定每个音频切割音频片段的长度(秒)
chunk_length_seconds = 20 # 假设每段音频长度为20秒
# 计算需要切割的片段数量
num_chunks = int(len(audio) / 1000 / chunk_length_seconds) # len(audio)返回的是毫秒数
# 切割音频并保存每个片段
for i in range(num_chunks):
start_ms = i * chunk_length_seconds * 1000 # 将秒转换为毫秒
chunk = audio[start_ms:start_ms + chunk_length_seconds * 1000] # 切割音频片段
chunk.export(f'clip_audio/chunk_{i+1}.mp3', format='mp3') # 导出音频片段
# 如果音频的总长度不是chunk_length_seconds的整数倍,会剩下一部分音频没有被切割
# 处理剩余的音频
remaining_ms = len(audio) - num_chunks * chunk_length_seconds * 1000
if remaining_ms > 0:
remaining_chunk = audio[(-remaining_ms):]
remaining_chunk.export(f'clip_audio/chunk_{num_chunks + 1}.mp3', format='mp3')
助力快速掌握数据集的信息和使用方式。
数据可以如此美好!