RhythmboxIpod

Summary

When an iPod is connected to the system, Rhythmbox should automatically notice it and make the contents available through its user interface.

Rationale

Users who have an ipod expect to have it working out of the box. Rhythmbox should be the place for this because that's the application managing your music.

Use cases

  • Martin likes to work with some music. He has a 2 weeks work trip planned and would like to copy some of the audio CDs he has on his computer to his ipod.
  • Daniel stores all his music on his ipod so he just have to plug it on a computer to listen to his favorite songs.

Scope

According to the gtkpod website: "It supports the first to fifth Generation including the iPod mini, iPod Photo, iPod Shuffle, iPod nano, and iPod Video." and "libgpod supports playlists, smart playlists, playcounts, ratings, podcasts and cover art."

Design

rhythmbox

The current CVS rhythmbox uses libgpod (currently shipped with gtkpod) to talk to the ipod. It gets the playlists and is able to play files from the ipod. The library knowns how to send files to the ipod but rhythmbox doesn't use this feature yet. This is planned upstream, we will coordinate with them for this.

At the moment you get read-only lists. For dapper it will be possible to dnd a file to a playlist and to remove a file from a playlist too. That will modify the playlist for rhythmbox and for the ipod.

Rhythmbox 0.9.1 uses hal to detect the ipod and doesn't depend on a fixed mountpoint.

Implementation

  • SebastienBacher will package the new gtkpod and make a libgpod package.

  • SebastienBacher will work with upstream to be sure than we get the rhythmbox changes for GNOME 2.14

Outstanding issues

The new ipod nano are supposed to work correctly but we don't have any of those at the moment to play with.

  • In Dapper Flight 5 iPod Nano works without problems.
  • It would be nice to have a gnome-vfs integration. This should provide you with access to the raw file system (to be able to store videos and normal files on it), and provide an interface to the music database in a virtual subfolder (/music). This should be spec'ed separately and is a nice bounty target.

  • Rhythmbox does not support syncing to the iPod making it a less-than-ideal choice as for iPod users. Full write support is needed to make this a viable application for iPod management. For e.g., Banshee has one-click syncing for iPods (this is not meant to raise the issue of including banshee as the default player, just as an example of a good implementation of syncing). -RanH
  • Even when full read/write support will be included in Rhythmbox, some users may still choose to use a different player. Having Rhythmbox automatically run whenever the iPod is mounted is an annoyance if your prefered player is Banshee or if you just use gtkpod to sync your iPod. An option should be added to prevent Rhythmbox from running when the iPod is mounted, either from Preferences>Prefered Applications or from Rhythmbox itself. -RanH

  • Current iPod support Podcasts and Videos. Full iPod integration will require Rythmbox to manage videos in its library, and have subscribed podcasts synced to the iPod (including their played/unplayed status). Video integration can be implemented as a Plugin that would just allow adding video files to the library and adding them to playlists etc., not necessarily playing them. -RanH

BoF agenda and discussion

  • What about including Banshee as the default music player in Dapper, instead of Rhythmbox? Banshee already has ipod support built in.
    • Banshee requires mono, which is a pretty heavyweight VM. I believe it was discussed that mono was not to be included in the default install due to its heavy weight nature, and large amount of space it would take on the install CD. -LukasSabota

    • Moreover some people disagree with the inclusion of mono in free software distributions for liability and moral reasons.
  • Full iPod support is in the process of landing in Rhythmbox cvs. Current cvs support copying tracks that don't require transcoding, and deleting tracks; the transcoding framework exists and is being hooked up to ipod copying. Work is also being done towards supporting writes to "generic" players that HAL knows about and don't have a database that requires updating.


CategorySpec

RhythmboxIpod (last edited 2008-08-06 16:31:22 by localhost)