Re: [Rhythmbox-devel] MTP support to rhythmbox

On Thu, Jun 15, 2006 at 01:35:08PM +0200, Peter Grundström wrote:

I haven't looked at the code in detail yet, but I've got a few comments
on your TODO list.

> What it doesn't do / TODO:
> * You cant play the songs on the device. (the device never gets mounted,
> you only access it through the library libmtp.)

There are two ways to solve this: write GStreamer source and sink
elements, or write a gnome-vfs module.  You wouldn't strictly need a
GStreamer sink element, but it'd let you use GStreamer to transcode
files for the device.  I think GStreamer elements would be easier to
write.  From briefly looking at the libmtp API, I think this would be
possible, but it'd be a bit hackish.

> * you have to run rhythmbox as root, since the libmtp requires
> root-privileges to access the device through libusb. This should
> probably be fixed with something like a udev-rule (in libmtp i presume).
> * the device has to be attached when you start rhythmbox, and the only
> way to detach it is to close rhythmbox.

We should have RBRemovableMediaManager emit a signal when it scans
devices, so plugins can perform their own scanning.  This would at least
make the device show up when you use the 'Scan Removable Media' menu
item.  Maybe there's a way to get HAL to notify rhythmbox when this sort
of device is attached or detached.

> * I was working with that last thing, but I couldn't get the popup to
> work, it only says "Couldn't get menu widget for /MTPSourcePopup".
> Someone who is more experienced with rhythmbox maybe can figure out why.

Are you sure it's loading the UI file correctly?  The code looks OK.

> * It is a little delay when you close rythmbox which makes rhythmbox
> look like it hanged, and the "rhythmbox does not respond" dialog
> appears. No idea how to fix that.

Do you know where this delay is being introduced?  Adding some rb_debug
output and running 'rhythmbox -D mtp' would help track it down.

Thanks for your work on this so far.  Hopefully we can get this finished
up and integrated into the next release after we get 0.9.5 out.

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