【问题标题】:libspotify API: what is the relationship among the availability of track, album, playlist, image etc.?libspotify API:曲目、专辑、播放列表、图像等的可用性之间的关系是什么?
【发布时间】:2012-05-31 18:33:24
【问题描述】:

需要准备好曲目数据才能播放曲目。是否必须加载专辑才能检索专辑封面图片?艺术家肖像也一样吗?

我正在尝试检索具有可用专辑 URI 的专辑封面图片。我的计划是从专辑 uri 中获取专辑封面图像 id,然后从图像 id 中获取图像数据。如果未加载专辑,则专辑封面艺术图像 ID 似乎不可用。

我的问题是 - 是否可以在不加载整个专辑对象(包括所有曲目)的情况下获取封面图像 ID?

谢谢。

【问题讨论】:

  • 如果加载了曲目的元数据,并且从曲目中获取了专辑处理程序(sp_album*),是否还需要等待专辑信息加载才能获得封面艺术图像 ID?

标签: spotify


【解决方案1】:

每个元数据对象都与任何关联的元数据对象分开——当加载曲目时,它只知道其关联的艺术家和专辑的 ID。如果您还需要艺术家和专辑,则需要单独加载它们。对象的元数据加载是全部或全部——要么已加载,要么未加载。

考虑到这一点,您必须等待专辑对象完全加载,然后才能获取该专辑的封面 ID。

但是,加载专辑并不会加载其所有曲目(这就是 sp_ablumbrowse 的用途)。加载专辑的元数据实际上非常轻量级。

【讨论】:

  • 感谢您的回答。但是我还是不明白专辑和专辑浏览之间的关系。例如,我想检索专辑的封面 ID。我将使用 sp_album_is_loaded 来检查专辑是否已加载。如果已加载,则检索封面 ID,否则请等待。但似乎加载专辑的“等待”不起作用。相反,我必须使用 albumbrowse 回调。这是否意味着使用 albumbrowse 回调是等待专辑元数据加载的唯一方法?
  • albumbrowse 提供艺术家、版权、评论和曲目。你不需要它来做封面。如果相册未加载,请等待metadata_updated 回调,然后重试。
  • 哦,我认为 metadata_updated 回调仅用于轨道元数据。它还有什么用?艺术家?那么它是跟踪元数据的唯一方法吗?
  • metadata_updated 适用于所有元数据——曲目、艺术家、专辑等。
  • 播放列表和图片也可以吗?播放列表和图像有自己的回调。 metadata_updated 回调是否仅在请求时发生 - 例如用户调用 sp_link_as_album(假设没有任何其他更改)?谢谢。
猜你喜欢
  • 1970-01-01
  • 2023-04-11
  • 1970-01-01
  • 1970-01-01
  • 2020-11-22
  • 1970-01-01
  • 2023-03-27
  • 2015-03-28
  • 1970-01-01
相关资源
最近更新 更多