不同方式获取音频时长 - python 实现

DataBall 助力快速掌握数据集的信息和使用方式,会员享有 百种数据集,持续增加中。

需要更多数据资源和技术解决方案,知识星球: "DataBall - X 数据球(free)"

-------------------------------------------------------------------------------------------------------

方式一:pydub 的 AudioSegment 实现

但是该方式有限制:对于时长长的音频会报以下错误:

python 复制代码
pydub.exceptions.CouldntDecodeError: Unable to process >4GB files

具体实现代码如下:

python 复制代码
#-*-coding:utf-8-*-

from pydub import AudioSegment
audio = AudioSegment.from_file("test.wav")

duration_ms = len(audio)

print("音频总时长:{:.1f} 秒, {:.1f} 分钟,{:.1f} 小时".format(duration_ms/1000,duration_ms/60000,duration_ms/3600000))

方式二:librosa 实现

暂时未发现时长限制

具体实现代码如下:

python 复制代码
#-*-coding:utf-8-*-
import librosa

# 加载音频文件
audio, sr = librosa.load("test.wav")

# 获取音频时长(以秒为单位)
duration_s = librosa.get_duration(y=audio, sr=sr)

print("音频时长为 {} 秒,{:.2f} 小时".format(duration_s,duration_s/60/60))

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

数据可以如此美好!

相关推荐
给算法爸爸上香13 小时前
yolo目标检测线程池高性能视频tensorrt推理(每秒1000+帧)
yolo·目标检测·音视频·线程池·tensorrt
大学生小郑13 小时前
sensor成像的原理
图像处理·音视频·视频
AI浩17 小时前
学习语言驱动的序列级别模态不变表示用于视频可见光-红外行人重识别
学习·音视频
老陈聊架构19 小时前
『AI视频创作』Remotion Skills 完全指南:用自然语言创作视频的革命
人工智能·音视频·skill·remotion
视频技术分享19 小时前
2026年实时音视频服务选型深度解析
音视频·实时音视频·视频
三十_A1 天前
前端技术分享:基于 Canvas 实现视频帧截取与下载方案
前端·音视频
地狱为王1 天前
Unity使用NovaSR将沉闷的16kHz音频升频成清晰的48kHz音频
unity·游戏引擎·音视频·novasr
Dreams°1231 天前
进阶实战:Wan2.2-T2V-A5B 实现可点击跳转的互动式教育视频
算法·microsoft·ai·音视频
Coovally AI模型快速验证2 天前
YOLO26技术详解:原生NMS-Free架构设计与实现原理
人工智能·计算机视觉·开源·音视频·无人机
郭涤生2 天前
高斯滤波从入门到精通
linux·音视频