1

我正在阅读 Matlab 中的 .wav 文件。然后我以指定的采样频率 44100Hz 播放读取的文件。但是当我尝试播放以低采样频率采样的文件时,它会像我在快进模式中播放一样播放,这是因为我正在播放的采样频率高于文件的采样频率。

所以我的问题是如何找到我在 Matlab 中使用 wavread() 读取的文件的采样频率。我试图在频谱中转换读取信号,然后传递 fft() 信号的幅度,但它没有用。

有什么建议么?

4

2 回答 2

4

观察wavread可以返回采样频率Fs如下:

[y, Fs] = wavread(filename)
于 2012-11-28T15:24:10.827 回答
0

首先,您可以使用此函数找到采样频率:

def read_samplepoints(file_name):

    sampFreq, snd1 = wavfile.read(file_name)

    samp_points = len(snd1)

    data_type = snd1.dtype

    return samp_points, data_type, sampFreq

使用 'folder_name'.'class_name'.read_samplepoints(file_name) 在终端中执行。返回序列中的最后一个数字将是采样频率。

要增强歌曲的低音,您需要使用低频段滤波器来仅捕获较低频率并保留较高频率。但是,这会使您文件中的所有频率出现您可能不想要的情况。另一种方法是将您的文件放入 audacity(或类似程序)并转到效果部分并调整低音和高音级别(类似于 iTunes 上的均衡器)。这是两个选项,可能还有更多选项,但请先尝试这些选项,看看它们会引导你到哪里。

于 2015-07-28T15:20:42.797 回答