Skip to content

DACP in Rhythmbox: Week 2

June 7, 2010

Last week there was the inclusion of libdmapsharing in Rhythmbox (by the way, for all of you alpha testing Ubuntu, DAAP isn’t working in Rhythmbox because they haven’t included libdmapsharing in Ubuntu yet). So now I’m just a git pull and git merge away from following Rhythmbox master, which makes my job much easier.

Last week didn’t see much work from me, I was mostly fixing some bugs and some bad decisions. But I noticed I never showed screenshots of my work here. Because I love screenshots, here they are.

First you open your Remote application in iPhone, iPod Touch or Android device (note that on Android there is no passcode):

Then in Rhythmbox, you type the passcode shown in your Remote. This allows Rhythmbox to pair with your Remote:

Then Rhythmbox magically appears at your Remote list of libraries:

“DACP on Rhythmbox” will become your library’s name over time. And of course, this doesn’t fully work yet, because Rhythmbox segfaults when the iPhone tries to connect. Well, what did you expected for about two weeks of work? I was pretty excited already when I saw my iPhone on the list of devices in Rhythmbox (by the way, I think I will create a new group called Remotes, I just didn’t find out how yet).

Stay tuned for more later.

Advertisement

From → Uncategorized

11 Comments
  1. So, congrats for this. It’s good to see the library I created based on rhythmbox code being used by rhythmbox itself. Keep up the good work. Btw where is the code being maintained (repository)? I would like to take a look at it

    BR

  2. What kind of widget is used in Rhythmbox to enter the passcode? (Curious about its accessibility and how to access it with keyboard only)

    • Alexandre Rosenfeld permalink

      It’s the standard GtkEntry, the only thing I do is get the callbacks for text entered, so it only allows numbers to get in and as soon as a number is entered it moves the focus to the next Entry. I still have to follow the backspace event, which would move the focus to the last entry. As far as I know this allows the same kind of accessibility as present in Gtk.

      • Milan Bouchet-Valat permalink

        Do you really think you need to replicate the UI of mobile devices? I mean: no need to have three different boxes, only one allowing only four numbers to be typed would do. That would look less awkward in a desktop app.

  3. jonathan permalink

    Here’s the function you use to create a new source group:
    http://library.gnome.org/devel/rhythmbox/unstable/rhythmbox-RBSourceGroup.html#rb-source-group-register

    You’d do something like this:
    RBSourceGroup *group;
    group = rb_source_group_get_by_name (“remotes”)
    if (group == NULL) {
    group = rb_source_group_register (“remotes”, _(“Remotes”), RB_SOURCE_GROUP_CATEGORY_REMOVABLE);
    }

    then pass ‘group’ into the source constructor.

  4. heng permalink

    This is some really good work, but can it not be integrated with the existing bluetooth widget? I assume that DACP sits on top of an existing bluetooth profile? In which case, wouldn’t it be really neat to abstract that DACP away into some kind of dbus advertising goodness, and then link that bit with rhythmbox?

    • Alexandre Rosenfeld permalink

      Not at all, DACP sits on top of DAAP, a HTTP based protocol. The work is generic enough to be availiable to any application willing to implement it, but DBus is too slow for this kind of thing, so a C api is needed (hopefully with introspection, any language later will be able to use too).

  5. korbe permalink

    I use Fedora and it have a firewall.

    What port open to use this features?

Trackbacks & Pingbacks

  1. Alexandre Rosenfeld: DACP in Rhythmbox: Week 11 | Gnu Architecture

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.