簡體   English   中英

如何使用musicbrainz獲取專輯圖像

[英]how to get album image using musicbrainz

我不知道我是否可以在這里提出這樣的問題。 我的問題如下。

我自己制作音樂播放器,我想下載那些沒有專輯圖片的歌曲的專輯圖片。 就像N7Music Player正在做的那樣。 我自己做了一些搜索,我發現使用MusicBrainz我們可以下載圖像。

我尋找它的API,但我沒有清楚地了解它。 我有疑慮。

  1. 如何獲得其API密鑰?
  2. 它是免費的嗎?
  3. 如果已知藝術家和歌曲名稱為該歌曲獲取專輯圖像,如何調用API?

我在等你的寶貴回應。

提前感謝你。

您需要做的第一件事是找出要從中獲取圖像的相冊的版本標識符(版本MBID),您可以使用搜索API執行此操作,例如:

http://www.musicbrainz.org/ws/2/recording/?query=artist:nikes+recording:ftg2

因為它是一個搜索,你會得到很多結果,其中一些將是錯誤的。 在這種情況下,第一個結果是正確的,只匹配一個版本,它具有以下MBID:“c04730ea-87cb-478b-a256-08c0561d20e6”。

現在你有了一個標識符,你可以在coverartarchive上進行查找:

http://coverartarchive.org/release/c04730ea-87cb-478b-a256-08c0561d20e6/

這將為您提供一個json響應,其中包含可用圖像列表(如果該版本在coverartarchive中沒有封面,則為404)。

然而,coverartarchive是相當新的,可能並不總是有封面藝術。 MusicBrainz有時會有一個涵蓋藝術的鏈接,您可以通過在Web服務請求中包含“url-rels”來查找,例如發布MBID“fdfdb3c0-8820-4c22-94e6-6aa136e36c31”您可以執行此請求:

http://musicbrainz.org/ws/2/release/fdfdb3c0-8820-4c22-94e6-6aa136e36c31?inc=url-rels

在輸出中,您將看到圖像的URL:

<relation type="cover art link">
    <target>http://liveweb.archive.org/http://www.8bitpeoples.com/images/albums/large/8BP049.gif</target>
</relation>

根據您感興趣的語言,這可能已經為您完成。 這里有一個C / C ++庫:

http://musicbrainz.org/doc/libcoverart

安迪

我寫了一個類似問題的答案。

現在有一些可以在Android上使用的庫:

Last.fm的CoverArtArchiveClient是封面藝術Web服務的Java數據綁定, musicbrainzws2-java是當前MusicBrainz Web服務(WS / 2 =“NGS”)的Java綁定。

如果您知道相冊名稱和藝術家姓名,則下面的鏈接將非常有用。它將為您提供圖像。

http://www.radiodj.ro/community/index.php?topic=1895.0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM