获取带有 MusicBrainz ID 的专辑曲目列表
Posted
技术标签:
【中文标题】获取带有 MusicBrainz ID 的专辑曲目列表【英文标题】:Get tracklist of album with MusicBrainz ID 【发布时间】:2015-02-20 20:00:33 【问题描述】:我目前正在使用 mikealmond/MusicBrainz 类从美妙的 MusicBrainz 数据库中获取我需要的信息。
但我有一个问题,我需要从发行版中获取录音,我已经通过以下网址在浏览器中的 Web API 上找到了如何做到这一点:musicbrainz(dot)org/ws/2/release/ 61bf0388-b8a9-48f4-81d1-7eb02706dfb0?inc=录音
但是在我使用的类中,他们要求我在添加版本 ID 之前添加一个实体,但我不知道要添加什么。如果我试图把它拿走,我最终会得到一个这样的网址: musicbrainz(dot)org/ws/2/release/?=61bf0388-b8a9-48f4-81d1-7eb02706dfb0?inc=recordings 这不起作用。 有没有我可以添加的实体说我正在发布 mbid?
或者也许有人可以帮助我改变我用来完成这项工作的课程,我自己尝试过但失败了。
编辑:我尝试联系作者,但没有成功。
我已经尝试过上面提到的类中的这段代码:
$includes = array('recordings');
try
$details = $brainz->browseRelease('61bf0388-b8a9-48f4-81d1-7eb02706dfb0', $includes, 2);
print_r($details);
catch (Exception $e)
print $e->getMessage();
print "\n\n";
【问题讨论】:
你试过什么代码? @Mr.Concolato 在我的问题中添加了代码。 这似乎已经在forums.musicbrainz.org/viewtopic.php?id=5424解决了 【参考方案1】:我是图书馆的作者。我刚刚在 GitHub 上回答了这个问题,但我想我也会在这里分享答案。
您要做的是查找。
$details = $brainz->lookup('release', '61bf0388-b8a9-48f4-81d1-7eb02706dfb0', array('recordings'));
另一种方法是根据版本浏览录音。
$details = $brainz->browseRecording('release', 'aad08360-f5cd-4e3b-9df6-88dae1b3e3f2', $includes, 2);
【讨论】:
以上是关于获取带有 MusicBrainz ID 的专辑曲目列表的主要内容,如果未能解决你的问题,请参考以下文章
Use MusicBrainz in iOS查询专辑的完整信息
在套接字上发送包含曲目编号,标题,艺术家,专辑,流派和持续时间的歌曲列表?
如何对 MusicBrainz 搜索 API 的结果进行排序
如何在 Spotify 上播放专辑中的曲目,以便之后使用 Spotify App Remote SDK for Android 播放专辑的下一首曲目?