Echonest 轨道配置文件请求总是返回一个空的 audio_summary

Posted

技术标签:

【中文标题】Echonest 轨道配置文件请求总是返回一个空的 audio_summary【英文标题】:Echonest track profile requests always return an empty audio_summary 【发布时间】:2016-04-28 17:27:52 【问题描述】:

我正在请求 bucket=audio_summary 获取在 hotttness 中排名靠前的歌曲。 最热门的 100 首歌曲都返回 track.status: 'complete',但音频摘要始终是一个空对象。

如何获取time_signaturetempo 等音频摘要数据? track.status: complete 不是暗示此信息应包含在响应中吗?

Can't Feel My Face 
https://developer.echonest.com/api/v4/track/profile?api_key=*****************&format=json&id=SOMVZDS14DDE5909E7&bucket=audio_summary

  
    "response": 
      "status": 
        "version": "4.2",
        "code": 0,
        "message": "Success"
      ,
      "track": 
        "status": "complete",
        "id": "SOZOIDR14C02B654D4",
        "audio_summary": 
      
    
  

【问题讨论】:

【参考方案1】:

您似乎拥有这首歌曲的 SongId 而不是 TrackId。如果您在查询中将“track”替换为“song”,您将获得预期的结果。

这个: https://developer.echonest.com/api/v4/song/profile?api_key=*****************&format=json&id=SOMVZDS14DDE5909E7&bucket=audio_summary

返回这个:

  
   "response":  
      "status":  
         "version":"4.2",
         "code":0,
         "message":"Success"
      ,
      "songs":[  
           
            "artist_id":"ARYUDWF12F2B89BB33",
            "artist_name":"The Weeknd",
            "id":"SOMVZDS14DDE5909E7",
            "audio_summary":  
               "key":9,
               "analysis_url":"http://echonest-analysis.s3.amazonaws.com/TR/A7NwGAWSmhnc53M8w1rLk-eA_tsN8OUHaqV5C5FTbb9BnCPZVnxWOGld1wLxJJ-xdNV8xKJbbZlCRSKJc%3D/3/full.json?AWSAccessKeyId=AKIAJRDFEY23UEVW42BQ&Expires=1454028841&Signature=HeUxbEJt4f0ncipjD1Gamtuj08E%3D",
               "energy":0.781735,
               "liveness":0.12022,
               "tempo":107.954,
               "speechiness":0.042317,
               "acousticness":0.124391,
               "instrumentalness":0.0,
               "mode":0,
               "time_signature":4,
               "duration":216.46667,
               "loudness":-5.528,
               "audio_md5":"",
               "valence":0.586261,
               "danceability":0.713659
            ,
            "title":"Can't Feel My Face"
         
      ]
   

我能够追踪到这一点的唯一原因是,将任何 ID 放入轨道 API 会返回您看到的存根响应,并且我能够使用 spotify id 获取这首歌的 audio_summary,所以我知道它是可用。

【讨论】:

以上是关于Echonest 轨道配置文件请求总是返回一个空的 audio_summary的主要内容,如果未能解决你的问题,请参考以下文章

对Microsoft Store API的请求始终返回空的产品/订阅列表

为啥检查字符串是不是为空的函数总是返回true? [关闭]

将 EchoNest API 分析器迁移到 Spotify

Spring的存储过程-从过程返回的结果总是空的

Flask:request.view_args 总是返回一个空的字典 [重复]

Android Contact Picker Intent 总是返回空的附加信息