首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过track_id访问Echonest /song/profile API时出现问题

通过track_id访问Echonest /song/profile API时出现问题
EN

Stack Overflow用户
提问于 2016-02-15 18:53:12
回答 1查看 78关注 0票数 0

我正试着通过不诚实的应用程序接口获取一些mp3的歌曲档案。删除了/song/identify端点(有人知道为什么吗?从什么时候开始的?)我成功地使用了/track/upload/track/profile端点。

然而,对于我尝试过的所有mp3s,我从未在响应中得到song_id字段。尝试使用track_id参数访问/song/profile会失败,并显示消息“指定的标识符不存在”。

我不知道为什么会发生这样的事情。/track/upload和/song/profile组合不是应该替换/song/identify吗?或者是我的API用法有误?

示例会话

/track/upload:

代码语言:javascript
复制
$ curl -X POST -H "Content-Type:application/octet-stream" "http://developer.echonest.com/api/v4/track/upload?api_key={API_KEY}&filetype=mp3" --data-binary "@some.mp3"
{"response" : {
  "track" : {
     "bitrate" : 128,
     "status" : "pending",
     "samplerate" : 44100,
     "release" : "",
     "audio_md5" : "a778192f46b14aff8b77fd90ff3674bb",
     "artist" : "Michael Jackson",
     "analyzer_version" : "3.2.2",
     "title" : "Billie Jean",
     "id" : "TRAWIST152E4579002",
     "md5" : "b231bfa7d4ee4102e52b4495b10f4769"
  },
  "status" : {
     "version" : "4.2",
     "message" : "Success",
     "code" : 0
}}}

/track/profile:

代码语言:javascript
复制
curl http://developer.echonest.com/api/v4/track/profile\?api_key\={API_KEY}\&format\=json\&id\=TRAWIST152E4579002\&bucket\=audio_summary
{"response" : {
  "track" : {
     "bitrate" : 128,
     "status" : "complete",
     "samplerate" : 44100,
     "audio_summary" : {
        "speechiness" : 0.0425334097439946,
        "energy" : 0.591133932705891,
        "instrumentalness" : 0.0294479646761868,
        "valence" : 0.869460920263482,
        "danceability" : 0.928799121110435,
        "mode" : 0,
        "tempo" : 117.099,
        "duration" : 294.06041,
        "loudness" : -6.027,
        "key" : 11,
        "time_signature" : 4,
        "liveness" : 0.038297571421371,
        "acousticness" : 0.0121077539216603,
        "analysis_url" : "http://echonest-analysis.s3.amazonaws.com/TR/TRAWIST152E4579002/3/full.json?AWSAccessKeyId=AKI...&Expires=1455532971&Signature=ooy..."
     },
     "audio_md5" : "a778192f46b14aff8b77fd90ff3674bb",
     "artist" : "Michael Jackson",
     "analyzer_version" : "3.2.2",
     "title" : "Billie Jean",
     "id" : "TRAWIST152E4579002",
     "md5" : "b231bfa7d4ee4102e52b4495b10f4769"
  },
  "status" : {
     "version" : "4.2",
     "message" : "Success",
     "code" : 0
}}}

/歌曲/配置文件:

代码语言:javascript
复制
curl http://developer.echonest.com/api/v4/song/profile\?api_key\={API_KEY}\&format\=json\&track_id\=TRAWIST152E4579002\&bucket\=audio_summary
{"response" : {
  "status" : {
     "version" : "4.2",
     "message" : "The Identifier specified does not exist: TRAWIST152E4579002",
     "code" : 5
}}}
EN

回答 1

Stack Overflow用户

发布于 2016-02-23 00:43:07

我发现您的API请求没有任何问题。然而,在曲目/配置文件标题下有一条注释:分析状态,它似乎指出了曲目无法解析为EchoNest歌曲的事实,请参见下面的内容。

请注意,曲目级别信息对于已使用曲目/上传进行分析的曲目不可用。

你能做的就是用Taste Profile:id创建一个曲目,然后它就会被解析成一个EchoNest:song:id。

正确解析项目后,会将回声嵌套歌曲ID附加到该项目。

但这是一个很长的路要走,考虑到速率限制现在降到了20/分钟,我不知道我是否会费心。在EchoNest被Spotify收购后,公共服务正变得过时和有限。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35407455

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档