You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AudioSegment拆分后拼接异常:生成超时长音频文件求助

问题分析与解决

核心问题

你的代码中song.dice(2)的参数理解错误——pydub的dice()方法默认以毫秒为单位,所以你实际是把音频拆成了2毫秒的极小片段,而非预期的2秒片段。这导致拆分出的片段数量极其庞大,拼接后总时长自然异常夸张。

解决方案

将拆分代码修改为:

songsegs = song.dice(2000)  # 2000毫秒 = 2秒,按2秒拆分

验证步骤

可以在拆分后添加代码,确认每个片段的时长是否符合预期:

for seg in songsegs:
    print(f"片段时长:{seg.duration_seconds} 秒")

补充说明

你尝试的numpy数组拼接方案同样出问题,本质原因也是拆分时的单位错误——拆分出的海量2毫秒片段,无论用哪种方式拼接,总时长都会是原音频时长的1000倍(因为把2秒拆成2毫秒,片段数量是原来的1000倍),最终导致生成的音频文件时长异常。

内容的提问来源于stack exchange,提问作者F P

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 09:20:23