Looking to add some features to Amarok...

Richard D Bach Jr rdbach at fastmail.fm
Wed May 30 21:04:40 UTC 2007


Hello, newbie here. :)

I'm an iPod user and I'm looking to add a couple features to Amarok to 
make it slightly more "iTunes-like" in regards to syncing with the 
iPod.  I listen to a lot of podcasts and audiobooks and while Amarok has 
podcast support, it doesn't integrate as well as I'd like with the iPod 
and Amarok doesn't support audiobooks at all.  Mainly, I want to 
synchronize bookmarks between the iPod and Amarok and I want to make 
this process as seamless as it is in iTunes.  I'd also like to add a 
special playlist specifically for audiobooks like in iTunes, but since 
this can be accomplished with a smart playlist it isn't a terribly high 
priority.  It would be nice if I could make audiobooks appear in the 
iPod's audiobook menu, much like podcasts do now, however.  
Additionally, I'd like to add the ability to make any file bookmarkable 
like in iTunes and, like books and podcasts, have these bookmarks 
synchronized between the two.

There are scripts that will save the current position in a given file 
and the one I've tried (sorry, can't recall its name at the moment--it 
can be found through the "Get More Scripts" button in Amarok) works 
well, but as far as I know there is no way to reconcile these bookmarks 
with those on the iPod.  I may begin listening to a podcast or audiobook 
on the computer, then travel somewhere, bringing the iPod with me 
containing that book or podcast.  Later I'll come back to the computer, 
connect the ipod, and sync the bookmark data and finish off the audio 
file in question there.  Needless to say, it is kind of a pain keeping 
track of where I am in a book or podcast and then seeking to that point 
on the next device I listen to the file on.  I suppose I could restrict 
myself to only listening to a given file on either the iPod or computer 
and then listen to othe material on the other, but that's not much of a 
solution at all, now is it? :)

Right now I'm thinking this might be doable with a script (or perhaps an 
extension to the already-existing bookmarking script(s)).  Maybe the 
script could be run by the user every time they connect their iPod and 
then the script checks Amarok's bookmarks and adds any applicable ones 
to items on the iPod and vice versa.  Perhaps the iPod syncing code 
could be modified to detect a bookmarking script and, if present, then 
handle setting bookmarks on the iPod and in Amarok.  Perhaps there 
another, better idea I haven't thought of yet (and there probably is).

As for audiobooks, as I said a "special" playlist isn't necessary 
although I do hope to find a way to put arbitrary items in the iPod's 
Audiobooks menu.  iTunes is fairly picky about what it'll count as an 
audiobook, though, so perhaps this is a dead end.  Maybe there could be 
a check that, if something from a playlist named Audiobook or with a 
genre of Audiobook is transferred to the iPod it places the file in the 
Audiobook menu?

Before I get started on this, I wanted to consult you, the veteran 
developers of Amarok.  First of all, I must admit that I'm a pretty new 
programmer--I just graduated less than a month ago with as BS in CS and 
the only large project I've worked on was a year-long project for a 
software engineering course.  I've done some side projects, but nothing 
terribly significant.  Before I unleash my newb skills on your code, I 
would like some pointers on how best to get started.  I'd also 
appreciate any design tips anyone might be willing to give.

Amarok's scripting support at first glance seems pretty powerful--I 
haven't done much research yet, but based on some of the other scripts 
available I feel cautiously optimistic about being able to do what I 
want with a script of some kind, so I think that's where I will start 
focusing my energy.  If for some reason I then find I need to modify the 
main application, then hopefully I'll at least be somewhat familiar with 
the codebase and I won't make too big a fool out of myself as I work my 
way through the code. :)

I suppose a good question to ask would be whether such a feature would 
even be welcome in the main app.  After all, I'm new here and shouldn't 
go around tossing things in to Amarok without approval from more veteran 
devs/users.  Who knows, maybe I'm the only person who misses these 
features from iTunes?

Anyway, sorry for making this so long.  Thanks for making it all the way 
through to the end. :)



More information about the Amarok mailing list