当前位置: 首页 > article >正文

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

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

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

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

方式一:pydub 的 AudioSegment 实现

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

pydub.exceptions.CouldntDecodeError: Unable to process >4GB files

具体实现代码如下:

#-*-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 实现

暂时未发现时长限制

具体实现代码如下:

#-*-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))

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

数据可以如此美好!


http://www.kler.cn/a/499930.html

相关文章:

  • 嵌入式C语言:二维数组
  • C++ Json库的使用
  • 代码随想录算法训练营第三十二天|509.斐波那契数、70.爬楼梯、746.使用最小花费爬楼梯
  • HarmonyOS开发:传参方式
  • 利用obs studio制作(人像+屏幕)录制影像
  • React 元素渲染
  • Selenium python爬虫 是否需要设置浏览器窗口大小 ,有些按钮显示 不全会导致无法正常与这些元素进行交互
  • webpack03
  • 数据结构初阶---排序
  • 【机器学习篇】 科技异次元的超强 “魔杖”,开启奇幻新程
  • 金融项目实战 01|功能测试分析与设计
  • c++ 预备
  • 计算机基础知识复习1.5
  • cmake 编译ffmpeg的Android 的 so文件的cmake内容
  • 深度解析:语言模型的推理能力与强化学习优化
  • 人工智能与物联网:智慧城市的未来
  • 25/1/11 嵌入式笔记<esp32> 初入esp32
  • C语言二级考试
  • “负载均衡”出站的功能、原理与场景案例
  • 投机解码论文阅读:Falcon
  • C#语言的语法糖
  • 【算法与数据结构】—— 回文问题
  • Unity 的 Vector3 与 Babylon.js 的 Vector3:使用上的异同
  • 前端学习-事件监听以及案例(二十四)
  • fastadmin插件wanlshop使用方法
  • C++语言的文件操作