On Fri, 2005-06-17 at 18:04 +1000, Nicholas Gill (mythagel) wrote: > The way that i had written my original (standalone) program is that it > queries HAL (and acts on it via gnome-volume-manager) for when a device > is plugged in. <snip HAL xml> > So i can query hal for all devices having category portable_audio_player > and determine the mount point from that. > > A generic directory of mp3's i suppose could be handled in g-v-m akin to > how a camera is distinct from a directory containing photos, yet they > are both loaded with gPhoto. A problem being that there is no standard > directory for mp3 music like there is for digital camera media. And i > think scanning for all gstreamer compatible media on a device would be > too slow. I'm currently (in my audiocd branch) working on stuff that should make create removable media sources easier. It still needs a fair bit of work, and there are quite a few bugs in it. Basically what it does is monitor for GnomeVfsVolume mounts and pass them off to whatever can handle them. If you wanted to take a look this it might make it easier for you, and it would be good for me to get some feedback on whether it help to make RB handle more devices (which is the plan). If you do take a stab at trying it there are a couple of things you need to do: a) write a *_is_whatever function which checks whether it can handle a particular device (passed as a GnomeVFSVolume). If you need to do any HAL stuff, you can use gnome_vfs_volume_get_hal_udi. b) write a *_new() function to create your source. c) write *_device_plugged and *_device_unplugged methods to handle the plug/unplug events; by loading the songs off the device, and removing them from the database respectively. Looking at the source of rb-ipod-source would be a good start. Cheers, James "Doc" Livingston -- "can't go mucking with a `void *'" -- MPW C error message
Attachment:
signature.asc
Description: This is a digitally signed message part