Matlab读取音频文件并进行分析


文章目录

  • Matlab读取音频文件并进行分析
  • 前言
  • 一、读取mp3文件
  • 二、节拍分析
  • 三、旋律分析
  • 总结

前言

我们


一、读取mp3文件

对音频处理的前提是将音频数据导入到Matlab中,这里使用audioread函数进行实现
将需要处理的音频文件放在m文件的路径下,进行如下调用即可
输出的data1根据mp3文件的详细格式有所变化,双声道音频为2维矩阵,单声道则为1维列表
fs为mp3文件的采样率,在后续的处理中需要用到。

获取的音频信号如下:

二、节拍分析

在对音乐的旋律进行分析之前,需要先获取音乐的节拍,即每个音的长度对应的时间,由于音乐的节拍通常不会改变,具有一定的规律,下面有2种方法对节拍进行计算。
1.时域分析,通过观察时域图像可以发现节拍的间隔。

2.自相关处理,由于音乐的节拍具有规律,在一定的时间间隔上的信号具有较高的相关性,通过自相关处理,可以在相关系数的曲线中获取信号的最小时间间隔,通常这就是节拍。

三、旋律分析

当我们希望从音频文件中获取音乐的主旋律时,我们可以通过短时FFT将音乐中的频率提取出来,为此我们需要音阶对应的频率列表,列表如下图所示,也可以在其他的网站上搜到对应的数据。

根据得到的节拍,对音频进行切分,对切片进行fft处理,得到频谱后,对能量较高的频率分量进行查值得到音频存在的旋律。


总结

以上是Matlab对于音频文件的通用处理方法,不同的音频内容处理效果存在差异。要实现更加复杂的处理效果,最好使用专业的音频处理软件或用神经网络进行研究。

Matlab读取音频文件并进行分析相关推荐

  1. matlab读取wav文件

    matlab读取wav文件 wavread audioread [y,Fs,bits]=wavread('1.wav'); [y,Fs]=audioread('1.wav'); wavread mat ...

  2. MATLAB读取.c3d文件

    MATLAB读取.c3d文件 目录 MATLAB读取.c3d文件 一..c3d文件介绍 二.MATLAB如何读取c3d文件 一..c3d文件介绍 C3D格式是一种公用的文件格式,自1980年代中期以来 ...

  3. Matlab 读取excel文件提示服务器出现意外情况或无法读取问题解决

    Matlab 读取excel文件提示服务器出现意外情况或无法读取问题解决 参考文章: (1)Matlab 读取excel文件提示服务器出现意外情况或无法读取问题解决 (2)https://www.cn ...

  4. matlab将txt数据分类,MATLAB读取txt文件,txt里面有字符串和数值两种类型

    MATLAB读取txt文件,txt里面有字符串和数值两种类型 mip版  关注:96  答案:4  悬赏:30 解决时间 2021-01-29 08:48 已解决 2021-01-28 15:04 M ...

  5. matlab引用csv文件,如何用MATLAB读取csv文件

    如何使用Matlab读取csv文件 在Matlab中,有专门读取csv文件的函数:csvread().在Matlab的帮助文档中,有对这个函数的详细解释. csvread()函数有三种使用方法: 1. ...

  6. matlab 读取dbf文件

    前言 前几天需要对很多个ArcGIS输出的dbf文件做字段计算,但是!用模型构建器ArcGIS老是甭!崩得人心态都要都要崩了!后来师姐点醒了我!把它当作单纯的表格,在数组里算不就好了?! 一.直接用x ...

  7. matlab网页视频流,使用Matlab读取视频流文件

    Matlab中对图像和视频流的读取还是很方便的,但是由于不常用Matlab读取视频流(这家伙处理能力较OpenCV还是慢些)偶有小忘,这次有在工作中遇到特此记录一下,Matlab的help文档关于视频 ...

  8. matlab读取cvs文件的几种方法

    matlab读取CVS文件的几种方法: 1,实用csvread()函数 csvread()函数有三种使用方法: 1.M = csvread('filename') 2.M = csvread('fil ...

  9. matlab excel操作,Matlab读取excel文件里数据的操作流程

    亲们入手Matlab软件过程里会读取excel文件里数据吗?下面小编就提供了Matlab读取excel文件里数据的操作流程,有需要的朋友一起来看看吧. 读取sheet1中的所有数据 以03版excel ...

  10. ncl批量处理多个nc文件_利用MATLAB读取NC文件并绘图

    最近需要对很多NC 文件进行绘图,通常情况下,我一直用GMT,不过不知道为什么,笔记本上的GMT 用不了了,可能是版本的问题,但是我下了很多版本都无法使用,画出来的图都有问题.由于笔记本安装硬盘也就2 ...

最新文章

  1. 移动磁盘格式化了的资料寻回方法
  2. CentOS Linux 7.3 1611 (Core) 配置静态IP地址
  3. python 匿名函数捕获变量值 (执行时的值)
  4. Codeforces Global Round 14 E. Phoenix and Computers 思维 + dp
  5. selenide_使用Selenide进行有效的UI测试
  6. 二十九、PHP框架Laravel学习笔记——Debugbar 调试器
  7. Storm精华问答 | 最火的流式处理框架——Storm
  8. Vue报错:sockjs.js?9be2:1627 GET http://192.168.43.88:8080/sockjs-node/info?t=1631603986586 net::ERR_CO
  9. 前端必会!四步带你吃透浏览器渲染基本原理
  10. pgpool-II的master-slave模式的分析
  11. Android MTK 6763 User 版本默认打开usb调试
  12. PR曲线与ROC曲线
  13. QT系列之曲线图绘制(推荐QCustomPlot)
  14. 华为android内存扩大,安卓手机运行内存越来越不够用,华为却放出了这一招来解决!...
  15. 世界经典咖啡@配制方法
  16. ReactiveUI 入门
  17. HTML网页设计基础期末作业——仿Coco线上订奶茶饮料网站设计与实现6个页面(HTML+CSS+JavaScript)...
  18. 家庭财务管理系统(C++面向对象课程设计附课设报告)
  19. 陕西省计算机考研学校,陕西省有哪些考研院校?哪些高校考研比较容易,性价比高?...
  20. 我不想关注你了,饭否

热门文章

  1. 探索App保活黑科技
  2. java文件删除失败
  3. 我的世界java版种子多村庄_我的世界:粉丝推荐新版种子,出生附近就有11个村庄2个沙漠神殿...
  4. python比java_对比java和python对比
  5. Swift 接入LinkedIn登录
  6. python查询手机号码归属地
  7. SoberGGG对针式PKM的初次测评
  8. 陪集编码(Coset coding)
  9. 直播app源代码,单例模式
  10. oracle not like优化,oracle的like优化,对比了一下,效果确实比like好些。