不同方式获取音频时长 - 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))

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

数据可以如此美好!

相关推荐
码农阿树6 小时前
视频解析转换耗时—OpenCV优化摸索路
人工智能·opencv·音视频
sishen41998 小时前
2.4 TF卡
音视频
给大佬递杯卡布奇诺8 小时前
FFmpeg 基本API avformat_alloc_context 函数内部调用流程分析
c++·ffmpeg·音视频
jjjxxxhhh12312 小时前
【招聘】-音视频行业企业的招聘分析
音视频
爬虫程序猿16 小时前
把 1688 商品详情搬进 MySQL:PHP 爬虫全链路实战(2025 版)
爬虫·python·音视频
aqi0019 小时前
FFmpeg开发笔记(八十四)使用国产的librestreaming实现RTMP直播
ffmpeg·音视频·直播·流媒体
筏.k20 小时前
FFmpeg 核心 API 系列:音频重采样 SwrContext 完全指南(新API版本)
ffmpeg·音视频
张晓~1833994812120 小时前
碰一碰发视频 系统源码 /PHP 语言开发方案
开发语言·线性代数·矩阵·aigc·php·音视频·文心一言
雨之小1 天前
RV1106+es8388音频采集和播放调试
音视频·rv1106·es8388