使用 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 秒

​​

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

数据可以如此美好!

相关推荐
坚持就完事了3 分钟前
Java的OOP
java·开发语言
计算机毕业编程指导师7 分钟前
大数据可视化毕设:Hadoop+Spark交通分析系统从零到上线 毕业设计 选题推荐 毕设选题 数据分析 机器学习 数据挖掘
大数据·hadoop·python·计算机·spark·毕业设计·城市交通
jllllyuz7 分钟前
基于MATLAB的锂电池物理对象建模实现
开发语言·matlab
MyBFuture11 分钟前
C#数组详解:一维二维与交错数组
开发语言·windows·c#·visual studio·vision pro
计算机毕业编程指导师15 分钟前
【计算机毕设选题】基于Spark的车辆排放分析:2026年热门大数据项目 毕业设计 选题推荐 毕设选题 数据分析 机器学习 数据挖掘
大数据·hadoop·python·计算机·spark·毕业设计·车辆排放
浔川python社20 分钟前
浔川社团关于产品数据情况的官方通告
python
生活很暖很治愈22 分钟前
GUI自动化测试[3]——控件&数鼠标操作
windows·python·功能测试·测试工具
等风来不如迎风去28 分钟前
【UniVA】1:统一的视频agent:智能体系统,专门用于处理复杂的视频生成、编辑和理解任务
音视频
程序 代码狂人28 分钟前
CentOS7初始化配置操作
linux·运维·开发语言·php
从此不归路30 分钟前
Qt5 进阶【13】桌面 Qt 项目架构设计:从 MVC/MVVM 到模块划分
开发语言·c++·qt·架构·mvc