python - pyechonest - 如何解释 "key"和 "mode"属性?

标签 python echonest

我在 PC (Win 8.1) 上将 pyechonest (v9.0.0) 与 Python (v2.7.9) 一起使用,并且在解释与“key”和“mode”属性有关的返回数据时遇到问题。 “Key”应该返回 Echonest 认为要录制的音乐轨道的音调,而“mode”将确定它是大调还是小调。然而,当使用 Track 方法时,有矛盾的方式来解释这一点......

在pyechonest文档中,“key”是一个0-11的整数,其中0代表C调,11代表B调。 “Mode”为 0-1,其中 0 表示“主要”,1 表示“次要”: http://echonest.github.io/pyechonest/track.html

然而,Echonest 文档与此相矛盾; key==0 是“C”,key==11 是“B”(不是按照 pyechonest 文档的 B 调),mode==0 是小调,mode==1 是大调(0/1 大调/小调关系是切换): http://developer.echonest.com/docs/v4/song.html

有谁知道哪一个才是真正的解释吗?我能想出的唯一方法是上传一个我知道调和模式的音乐样本,然后看看 Echonest 返回什么。

最佳答案

显然 key == 11 对应于 B,而不是 Bb,因为否则数字不起作用:

0 1  2 3  4 5 6  7 8  9 10 11
C Db D Eb E F Gb G Ab A Bb B

对于模式,如果不深入研究源代码,我无法判断哪个是正确的;我建议您在 pyechonest's GitHub repo 上提出问题要求开发人员审查和澄清,但基于其他错误,我倾向于首先信任 API 文档!

关于python - pyechonest - 如何解释 "key"和 "mode"属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32202589/

相关文章:

python - 尝试定义删除功能,用户在其中输入名称并单击按钮,然后删除该行

python - 返回 Python 中最低有效位的索引

python - Pandas to_sql 使用错误的数据类型,可以更改吗?

python - 如何从列表列表中获取最小的重复项列表?

javascript - $.getJSON 尽管成功但不返回任何内容

python - Echonest::歌曲时长

python - 如何使用 opencv - python 识别图像的形状是对称的还是不对称的?

python - pyechonest(Echo Nest python 库)如何在本地收集当前艺术家的数据?

spotify - 将 EchoNest API 分析器迁移到 Spotify

api - Spotify API 根据轨道名称获取轨道信息?