Wednesday, April 11, 2007

SharePod Progress Pt. 2

Well I've just realised its been over a week(!) since I last posted...its crazy how time can fly by sometimes.

I didnt have much time over the Easter break to work on SharePod, but here is the current status:

  • iPod Songs/Playlists reading and writing
  • Play Counts reading (the number of times / last time youve listened to a song). In SharePod 2 this file wasn't read, so if you didnt use iTunes, your Play Counts werent updated.
  • iPod Shuffle alpha support. I say alpha because (right now) I dont have a Shuffle to test it on, but I am writing the Shuffle database file correctly as far as I can tell.
As I said in a previous post, I am writing SharePod in 2 parts - the iPod functionality and then the actual SharePod application over the top of it.

The application part of this I haven't really started on, but will be concentrating on this soon so I can start alpha testing it on my own iPods properly.

There is no particular release date in my mind yet, but I want to work solidly on it for the next 2 weeks at which point I hope to be able to release. Probably not feature complete, but something more usable and stable than the current versions.

If there are any UI designers out there who have great ideas for the direction of the SharePod UI send me an email! (

Monday, April 2, 2007

SharePod Version 3 Progress

I've been working on SharePod v.3 for about 3 nights now. (I work during the day and usually busy in the weekend so nights are all I have..)

Progress so far has been really good, its coming together so much faster than the original SharePod 1.0, where every part of the iPod's internal database had to be investigated. Although there will be no current-version SharePod code in Version 3, all the logic has been transferrable to the new codebase.
I have a fully working iTunesDB parser which is built from the start to allow easy reading and writing. The current codebase by comparison had the write ability hacked on top, so there were some things it was just too hard to support (editing of song tags, for example)

The next step is finish the writing part of the code - right now it just writes back the file as it reads it, but it should take into account new songs added/removed, tags changed and playlists modified.

Once that is done (hopefully tonight), the plan is:
- Playcounts file parser (to update the number of times a song has been played etc)
- Artwork file parser (to read the album art descriptions)
- Code to actually read, display and import the iPod-formatted artwork
- iPod Shuffle file reading/writing
- Video import

While I am doing all this, I am also trying to come up with a sensible API to expose to other programs wanting to use SharePod functionality! So the next few weeks will be busy ones!