Re: [Rhythmbox-devel] Cover art display and DAAP plugin

On Thu, Oct 7, 2010 at 11:59 PM, Peter <peter maubp freeserve co uk> wrote:
> Hi all,
> I've recently tried sharing my music from RB 0.12.8 on my server via
> the DAAP plugin, and listening to it with RB on my laptop. This seems
> to work nicely for the most part. However, I noticed that sometimes I
> got cover art, and sometimes I did not. First of all, can anyone
> reproduce this?
> I *think* when playing a remote mp3 file which has embedded cover art
> in the ID3 tags that this gets spotted and shown by the cover art
> plugin - which is great, but not all my music has embedded covers.
> There is a command in the DAAP protocol to request the current artwork
> with maximum width and height, and get a PNG back. Something like
> this:
> /ctrl-int/1/nowplayingartwork?mw=320&mh=320&session-id=123
> However, I'm pretty sure that the coverart plugin makes no attempt to
> ask the DAAP server for a cover.
> From looking at how other plugins (e.g. rb-ipod-source.c) give cover
> art to the artdisplay plugin, I guess the RB DAAP client code needs to
> request the cover and then once it has it, issue the
> g_signal_connect_object call with
> "entry-extra-metadata-notify::rb:coverArt", and it should then be
> displayed by artdisplay plugin. Does that sound right?
> Related to this, guess the RB DAAP server code will need to be updated
> to respond to cover requests. Again, looking at rb-ipod-source.c I
> think this can be done with rhythmdb_entry_request_extra_metadata (db,
> entry, "rb:coverArt") which I assume is handled by the artdisplay
> plugin.
> Have I got the basics right for how cover art is passed between the
> artdisplay plugin and another plugin (such as the ipod plugin, or in
> future the DAAP plugin)?
> Thanks,
> Peter

Follow up note to self and future search engine results: if trying to
compile RB from source with the DAAP plugin you will need
libdmapsharing, which isn't in older versions of Ubuntu but is in

Its homepage is here:


This does appear to serve artwork requested via the nowplayingartwork
DACP command (see dacp-share.c for the code), which is good.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]