音频分割:长语音音频 分割为 短语音音频 - python 实现

在做语音任务时,有是会用到的语音音频是长音频,这就需要我们将长音频分割为短音频。

该示例将声音的音量和静默时间结合作为语音的分割条件。

使用音量和静默时间结合的分割条件,能够比较好的进行自然断句,不会话语没有说完就切断音频。

按照 python 库:

python 复制代码
pip install pydub

具体实现代码如下:

python 复制代码
#-*-coding:utf-8-*-
# date:2024-10
# Author: DataBall - XIAN
# Function: 长音频分割为短音频

from pydub import AudioSegment
from pydub.silence import split_on_silence
import os
import wave
import shutil
# 初始化
chunks_path = "./short_audio/" # 保存分割段音频的保存路径
audiopath = "audio/test_long.wav"
audiotype = 'wav' # 音频类型
print("audiopath:",audiopath)
# 读入音频
sound = AudioSegment.from_file(audiopath, format=audiotype)
'''
    根据 音量 和 静默 时间长度 条件进行音频分割
    示例:音量阈值 -25 dB , 静默阈值:300ms
'''
chunks = split_on_silence(sound,min_silence_len=300,silence_thresh=-25)

# 保存分割后的短音频
print('开始保存')
for i in range(len(chunks)):
    new = chunks[i]
    save_name = "{}{}.{}".format(chunks_path,i,audiotype)
    new.export(save_name, format=audiotype)

​​

助力快速掌握数据集的信息和使用方式。

数据可以如此美好

相关推荐
数智化管理手记1 小时前
手工统计指标误差大、效率低?指标管理系统如何告别人工算数痛点?
大数据·运维·数据库·人工智能·云计算
fthux4 小时前
RenoPit 能为普通业主做什么?看懂图纸、审查合同,提前发现装修坑
javascript·人工智能·ai·开源·github·chrome扩展·open source·edge扩展·firefox扩展
火山引擎开发者社区7 小时前
火山引擎混合云 veStack 智算平台 Day0 适配 Kimi K3
人工智能
RSABLOCKCHAIN7 小时前
AI Agents in LangGraph-2
人工智能·python
cd_949217217 小时前
哪些AI工具适合生成游戏开发用的3D道具模型?从道具草稿到引擎测试的选择方法
人工智能·3d
FII工业富联科技服务8 小时前
工业设备运维如何Agentic化?拆解Factory Brain的设备运维架构
大数据·运维·人工智能·架构·制造
WA内核拾荒者8 小时前
WhatsApp 账号异常检测的自动化告警系统设计
数据库·python·自动化
糖果店的幽灵8 小时前
人已经用 WorkBuddy 找工作拿了面试,你还在一份份手工改简历
人工智能·面试·职场和发展·langgraph
qq29539 小时前
2026 财搭子决策模拟器:多智能体投研架构能力拆解
大数据·人工智能·架构
码流怪侠9 小时前
【GitHub】Bend:让 GPU 并行编程像写 Python 一样简单
python·github