Commit ab7c22aa authored by Wieland Hoffmann's avatar Wieland Hoffmann Committed by Jean-Baptiste Kempf

musicbrainz.lua: Support coverartarchive.org

If the Cover Art Archive has artwork for this album, use the 500x500px
version of it.
Signed-off-by: default avatarJean-Baptiste Kempf <jb@videolan.org>
parent f18236ee
--[[ --[[
Gets an artwork from amazon Gets an artwork from the Cover Art Archive or Amazon
$Id$ $Id$
Copyright © 2007-2010 the VideoLAN team Copyright © 2007-2010 the VideoLAN team
...@@ -19,17 +19,22 @@ ...@@ -19,17 +19,22 @@
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
--]] --]]
function try_query(query) function try_query(mbid)
local s = vlc.stream( query ) local relquery = "http://mb.videolan.org/ws/2/release/" .. mbid
local s = vlc.stream( relquery )
if not s then return nil end if not s then return nil end
local page = s:read( 65653 ) local page = s:read( 65653 )
found, _ = string.find( page, "<artwork>true</artwork>" )
if found then
return "http://coverartarchive.org/release/"..mbid.."/front-500"
end
-- FIXME: multiple results may be available -- FIXME: multiple results may be available
_, _, asin = string.find( page, "<asin>(%w+)</asin>" ) _, _, asin = string.find( page, "<asin>(%w+)</asin>" )
if asin then if asin then
return "http://images.amazon.com/images/P/"..asin..".01._SCLZZZZZZZ_.jpg" return "http://images.amazon.com/images/P/"..asin..".01._SCLZZZZZZZ_.jpg"
end end
vlc.msg.dbg("ASIN not found") vlc.msg.dbg("Neither coverartarchive.org nor amazon have cover art for this release")
return nil return nil
end end
...@@ -69,8 +74,7 @@ function fetch_art() ...@@ -69,8 +74,7 @@ function fetch_art()
releaseid = get_releaseid( recquery ) releaseid = get_releaseid( recquery )
end end
if releaseid then if releaseid then
relquery = "http://mb.videolan.org/ws/2/release/" .. releaseid return try_query( releaseid )
return try_query( relquery )
else else
return nil return nil
end end
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment