使用 pydub 的 AudioSegment 获取音频时长 - python 实现

通过使用 pydub 的 AudioSegment 获取音频时长,音频常用格式如 m4a,wav等。

安装 python 库:

python 复制代码
 pip install pydub

获取 m4a 格式的音频时长代码如下,代码如下:

python 复制代码
#-*-coding:utf-8-*-
# date:2024-10
# Author: DataBall - XIAN
# Function: 获取音频时长

from pydub import AudioSegment

file_ = "test.m4a"
audio_type = "m4a"

print("音频路径:{}".format(file_))
print("音频类型:{}".format(audio_type))

audio = AudioSegment.from_file(file_, format=audio_type)

duration_ms = len(audio) # 时长毫秒
duration_seconds = duration_ms / 1000.0 # 转换为秒

print("音频时长: {:.2f} 小时, {:.2f} 分钟, {:.2f} 秒".format(duration_seconds/3600,duration_seconds/60,duration_seconds))

执行程序的log如下:

python 复制代码
音频路径:test.m4a
音频类型:m4a
音频时长: 0.15 小时, 9.14 分钟, 548.59 秒

获取 wav 格式的音频时长代码如下,代码如下:

python 复制代码
#-*-coding:utf-8-*-
# date:2024-10
# Author: DataBall - XIAN
# Function: 获取音频时长

from pydub import AudioSegment

file_ = "test.wav"
audio_type = "wav"

print("音频路径:{}".format(file_))
print("音频类型:{}".format(audio_type))

audio = AudioSegment.from_file(file_, format=audio_type)

duration_ms = len(audio) # 时长毫秒
duration_seconds = duration_ms / 1000.0 # 转换为秒

print("音频时长: {:.2f} 小时, {:.2f} 分钟, {:.2f} 秒".format(duration_seconds/3600,duration_seconds/60,duration_seconds))

执行程序的log如下:

python 复制代码
音频路径:test.wav
音频类型:wav
音频时长: 0.00 小时, 0.04 分钟, 2.49 秒

​​

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

数据可以如此美好!

相关推荐
BBB努力学习程序设计15 小时前
Python面向对象编程:从代码搬运工到架构师
python·pycharm
傻啦嘿哟15 小时前
物流爬虫实战:某丰快递信息实时追踪技术全解析
java·开发语言·数据库
rising start15 小时前
五、python正则表达式
python·正则表达式
码力码力我爱你15 小时前
Harmony OS C++实战
开发语言·c++
茄子凉心15 小时前
android 开机启动App
android·java·开发语言
低客的黑调15 小时前
了解JVM 结构和运行机制,从小白编程Java 大佬
java·linux·开发语言
想唱rap15 小时前
C++ map和set
linux·运维·服务器·开发语言·c++·算法
FuckPatience15 小时前
C# 实现元素索引由1开始的链表
开发语言·链表·c#
BBB努力学习程序设计15 小时前
Python错误处理艺术:从崩溃到优雅恢复的蜕变
python·pycharm
Halo_tjn16 小时前
Java 相关资料
java·开发语言·计算机