matlab快速入门(18):项目 音频频率
2021/7/30 6:05:59
本文主要是介绍matlab快速入门(18):项目 音频频率,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
介绍:
(1)C 和弦录音存储在一个名为 Cchord.mat
的文件中。此文件包含两个变量:
y
:录音信号fs
:采样频率
此任务使用 numel
函数返回数组中的元素数目。
Cchord.mat
。创建一个名为 n
的变量,表示 y
中的元素数目。然后使用 n
创建等间距向量 t
,该向量以 0
开头,以 n-1
结尾,元素之间的间距为 1
。
(2)t
现在有正确的点数,但它需要表示音频信号的采样时间。您可以使用采样频率 fs
将向量转换为时间(以秒为单位)。
t
除以 fs
。将输出赋给同一个变量 t
。然后绘制 y
对 t
的图。
(3)在绘图中,请注意 y
是周期性的,但它不是简单的正弦波。它由具有不同频率的多个正弦波组成。傅里叶变换将返回信号的频谱信息。主频的位置将显示和弦中包含的音符。
可以使用 fft
函数来计算向量的离散傅里叶变换。
fft(y)
fft
的输出值为复数。您可以使用 abs
函数来获得幅值。
yfft
的变量,表示 y
的离散傅里叶变换的绝对值。
(4)在任务 1 和 2 中,您已计算了信号 y
的时间向量 t
。同样,您需要为您的 FFT 向量 yfft
计算频率向量 f
。
f
,该向量以 0
开头,以 n-1
结尾,元素之间的间距为 1
。
(5)向量 f
现在包含 n
个点。要将这些点转换为频率,您可以将整个向量乘以采样频率 (fs
),然后除以点数 (n
)。f
将包含从 0
到 fs
的频率。主频位于 f
的开头位置。您可以使用 xlim
函数放大所关注的区域。
xlim([xmin xmax])任务:将
f
乘以 fs/n
。将输出赋给同一个变量 f
。使用 x 的限值 0
和 1000
绘制 yfft
对 f
的图
这篇关于matlab快速入门(18):项目 音频频率的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-20RabbitMQ教程:新手入门指南
- 2024-11-20Redis教程:新手入门指南
- 2024-11-20SaToken教程:新手入门指南
- 2024-11-20SpringBoot教程:从入门到实践
- 2024-11-20Java全栈教程:从入门到实战
- 2024-11-20Java微服务系统教程:入门与实践指南
- 2024-11-20Less教程:初学者快速上手指南
- 2024-11-20MyBatis教程:新手快速入门指南
- 2024-11-20QLExpress教程:初学者快速入门指南
- 2024-11-20订单系统教程:从入门到实践的全面指南