0

Echonest API を使用して、いくつかの mp3 の曲のプロファイルを取得しようとしています。/song/identify エンドポイントが削除されたので (誰も理由を知っていますか? いつから?) 私は/track/upload/track/profileエンドポイントを正常に使用しています。

ただし、私が試したすべての mp3 で、応答に song_id フィールドが含まれていませんでした。また、track_id パラメータを使用して/song/profileにアクセスしようとすると、「指定された識別子が存在しません」というメッセージが表示されて失敗します。

なぜこれが起こっているのかわかりません。/track/upload と /song/profile の組み合わせは、/song/identify を置き換えるものではありませんか? または、API の使用方法に誤りがありますか?

サンプルセッション

/トラック/アップロード:

$ 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
}}}

/トラック/プロフィール:

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
}}}

/曲/プロフィール:

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
}}}
4

1 に答える 1

0

API リクエストに問題はありません。ただし、API の Track/Profile ヘッダーの下に注記があります: Analysis Statusは、トラックが EchoNest の曲に解決されないという事実を示しているようです。以下を参照してください。

トラック/アップロードで分析されたトラックの曲レベル情報は使用できないことに注意してください。

できることは、track:id を使用してテイスト プロファイルを作成することであり、EchoNest:song:id に解決されます。

アイテムが適切に解決されると、Echo Nest の曲 ID がアイテムに添付されます。

しかし、これは長い道のりであり、レート制限が現在 20/分に下がっていることを考えると、気にするかどうかはわかりません。EchoNest が Spotify に買収された後、公共サービスは非推奨になり、制限されています。

于 2016-02-22T16:43:06.647 に答える