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

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

安装 python 库:

 pip install pydub

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

#-*-coding:utf-8-*-
# date:2024-10
# Author: DataBall - XIAN
# Function: 获取音频时长from pydub import AudioSegmentfile_ = "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如下:

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

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

#-*-coding:utf-8-*-
# date:2024-10
# Author: DataBall - XIAN
# Function: 获取音频时长from pydub import AudioSegmentfile_ = "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如下:

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

​​

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

数据可以如此美好!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/56647.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024软考网络工程师笔记 - 第10章.组网技术

文章目录 交换机基础1️⃣交换机分类2️⃣其他分类方式3️⃣级联和堆叠4️⃣堆叠优劣势5️⃣交换机性能参数 🕑路由器基础1️⃣路由器接口2️⃣交换机路由器管理方式2️⃣交换机路由器管理方式 交换机基础 1️⃣交换机分类 1.根据交换方式分 存储转发式交换(Store…

Java生死簿管理小系统(简单实现)

学习总结 1、掌握 JAVA入门到进阶知识(持续写作中……) 2、学会Oracle数据库入门到入土用法(创作中……) 3、手把手教你开发炫酷的vbs脚本制作(完善中……) 4、牛逼哄哄的 IDEA编程利器技巧(编写中……) 5、面经吐血整理的 面试技…

精益生产现场管理和改善的实施技巧有哪些?

精益生产现场管理和改善,是企业追求高效、高质量生产的关键所在。这一管理策略强调在现场通过一系列工具和方法,对生产流程、物料流动、设备利用、人员配置等进行持续优化,旨在消除浪费、提升效率、保障质量、增强灵活性,最终实现…

npm、yarn、pnpm的workspaces使用

示例项目中总会遇到npm的packages中出现的workspaces键值对,自己的项目中没接触过这个东西,到底是什么?怎么用的?简单研究记录一下: abbrev是一个npm包,提供缩写展开功能。‌ 当你定义一个缩写后&#xff0…

PoissonRecon学习笔记

1. Screened Poisson Reconstruction (SPR) 源码:https://github.com/mkazhdan/PoissonRecon However, as noted by several researchers, it suffers from a tendency to over-smooth the data. 泊松重建存在过度平滑的现象。 方法:position and gradi…

Python:背景知识及环境安装

一、计算机的基础概念 1.1 什么是计算机? 最早我们有计算器,但是他只能完成算数运算的功能 而计算机能完成的工作有: (1)算术运算 (2)逻辑判断 (3)数据存储 &#xff08…

VUE中文本域默认展示最底部内容

文本域内容 <textarea ref"textareaRef" style"width: 100%; resize: none;" readonly v-model"errorLog" rows"15"></textarea> 样式展示 this.$nextTick(() > { // 使用$refs获取文本域的DOM元素 const textareaInfo…

重生之“我打数据结构,真的假的?”--3.栈和队列(无习题)

栈和队列 C语言中的栈和队列总结 在C语言中&#xff0c;**栈&#xff08;Stack&#xff09;和队列&#xff08;Queue&#xff09;**是两种非常重要的数据结构。它们广泛用于各种应用中&#xff0c;比如内存管理、任务调度、表达式求值等。本文将对这两种数据结构进行详细的介…

智能汽车制造:海康NVR管理平台/工具EasyNVR多品牌NVR管理工具/设备实现无插件视频监控直播方案

一、背景介绍 近年来&#xff0c;随着网络在我国的普及和深化发展&#xff0c;企业的信息化建设不断深入&#xff0c;各行各业都加快了信息网络平台的建设&#xff0c;大多数单位已经或者正在铺设企业内部的计算机局域网。与此同时&#xff0c;网络也成为先进的新兴应用提供了…

详细尝鲜flutter

flutter 161由于官方的汉化文档感觉还是有很多没有汉化的地方 &#xff0c;所以自己打一遍的同时写下了以下笔记 社区生态 官方文档 所有的控件:Widget 目录 | Flutter 中文文档 - Flutter 中文开发者网站 - Flutter 官方论坛的教程 Flutter Widget框架概述 - Flutter中文网…

7款视频转换器大测评!哪款是最适合你的视频格式转换器?

视频已成为我们生活中不可或缺的一部分&#xff0c;但不同的设备、平台和软件往往支持不同的视频格式&#xff0c;这给我们的视频分享、编辑和播放带来了不少困扰。因此&#xff0c;一款高效、易用的视频格式转换器成为了许多人的必备工具。本文将从软件界面、功能特性、难易程…

不推荐使用Scilab作为MATLAB的开源替代

安装了Scilab2024.1.0&#xff0c;随便试了几分钟就发现有严重影响使用的Bug(也可能是就是这样设计的&#xff0c;有一个所谓的“暂停模式”)&#xff0c;复现步骤&#xff1a;主界面上点击“Scilab示例”按钮&#xff0c;打开“演示”窗口&#xff0c;点击左侧列表中的“多项式…

JSON Web Token (JWT)的简单介绍、验证过程及令牌刷新思路

目录 一、JWT 1、什么是Jwt 2、为什么要使用Jwt 3、应用场景 4.Jwt的组成 4.1、Header 4.2、Payload 4.3、signature 二、Jwt验证过程 1、生成Jwt令牌 2、解析旧的Jwt 3、复制Jwt 4、Jwt有效时间测试 三、Jwt令牌刷新思路 1、配置JwtFilter过滤器 2、登录生成Jwt令…

R语言机器学习遥感数据处理与模型空间预测技术及实际项目案例分析

随机森林作为一种集成学习方法&#xff0c;在处理复杂数据分析任务中特别是遥感数据分析中表现出色。通过构建大量的决策树并引入随机性&#xff0c;随机森林在降低模型方差和过拟合风险方面具有显著优势。在训练过程中&#xff0c;使用Bootstrap抽样生成不同的训练集&#xff…

【案例75】全表扫描导致系统崩溃

问题现象 顾问反馈系统审批单据时&#xff0c;系统出现整体卡顿。操作审批单据本身比较长&#xff0c;在数据库中出现了死锁&#xff0c;死锁处理后&#xff0c;一审批单据就又会整体卡顿。 问题分析 开始怀疑有事务锁未释放导致的&#xff0c;先排查数据库当时的状态。发现…

AI写PPT工具:四款人工智能软件全面解析!!

嘿&#xff0c;小伙伴们&#xff01;今天咱们来聊聊那些能帮我们搞定PPT的神器——四款人工智能软件。有了它们&#xff0c;咱们再也不用为做PPT而头疼啦&#xff01; 第一款&#xff1a;笔灵AIPPT 直通车&#xff08;粘贴复制到网站打开&#xff09;&#xff1a;ibiling.c…

C++第八讲:STL--stack和queue的使用及模拟实现

C第八讲&#xff1a;STL--stack和queue的使用及模拟实现 1.stack的使用2.queue的使用3.栈和队列OJ题3.1题目1&#xff1a;最小栈3.2题目2&#xff1a;栈的压入、弹出序列3.3题目3&#xff1a;逆波兰表达式求值3.4题目4&#xff1a;用栈实现队列 4.栈的模拟实现5.队列的模拟实现…

103、QT搭建Excel表环境-使用Qtxlsx库

环境搭建 文件下载 下载QtXlsx源码&#xff1a;https://github.com/dbzhang800/QtXlsxWriter 下载的内容里面的目录结构如下&#xff1a; 搭建perl环境 官网链接: https://strawberryperl.com/ 下载后并安装 检验是否有perl环境的方法&#xff1a; perl --version安装前检…

Go语言基础教程:闭包

在这篇教程中&#xff0c;我们将通过一段简单的 Go 语言代码来理解闭包的概念。闭包是编程中非常强大且常用的工具&#xff0c;尤其适合实现像计数器这样的逻辑。我们将逐行讲解代码&#xff0c;并理解如何在 Go 中利用闭包来保存函数状态。 package mainimport "fmt&quo…

使用QT绘图控件QCustomPlot绘制波形图

使用QT绘图控件QCustomPlot绘制波形图 下载QCustomPlot 下载QCustomPlot,链接路径 解压之后就能看到源代码了 在Qt中添加QCustomPlot的帮助文档 在Qt Creator的菜单:工具–>选项–>帮助–>文档–>添加qcustomplot\documentation\qcustomplot.qch文件。