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

本文介绍了如何使用Matlab读取mp3文件,并进行节拍和旋律分析。通过audioread函数导入音频数据,时域分析与自相关处理计算节拍,短时FFT提取音乐旋律。总结了Matlab进行音频处理的基本方法。

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



前言

我们


一、读取mp3文件

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

二、节拍分析

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值