我使用librosa.display.specshow
显示CQT的结果,如下所示:
sr = 22050
cqt = librosa.cqt(y, sr = sr)
librosa.display.specshow(abs(cqt), sr = sr, x_axis = "time", y_axis = "cqt_note")
输出如下:
但是,我希望y轴的范围仅为C4到C5,并且最好显示该八度音阶内的音符,以便更容易地查看正在演奏的音符。查看**documentation**后,我尝试使用:
librosa.display.specshow(abs(cqt), sr = sr, x_axis = "time", y_axis = "cqt_note", fmin = librosa.note_to_hz("C4"), fmax = librosa.note_to_hz("C5"))
但这会打印以下警告:
用户警告:频率轴超过奈奎斯特频率,你是否记得在specshow中设置所有谱图参数?
并且仅示出了从C4开始并到达C11的y偏移图(具有与之前相同的缩放比例):
是否可以缩放y轴,如果可以,我该如何缩放?
1条答案
按热度按时间ukqbszuj1#
我意识到这可以通过添加
bins_per_octave
作为参数来解决,即:输出: