Amarok MTP (Android) GSoC: week 3; Amarok 2.8 Beta Released

Matěj Laitl · July 7, 2013 · 1 min read

Hola, this is a third weekly report describing my work on my Google Summer of Code project to rewrite MTP (Android) support in Amarok from scratch. This week I've finished implementing reading the track list from MTP devices.

What I've done this week:
  • Finished the background job to read MTP tracks and their metadata. Includes a nice progress bar (everyone loves progress bars) and is abort-able too.
  • Implemented central MtpTrack class and associated MtpAlbum, MtpArtist, MtpComposer, MtpGenre and MtpYear classes that are used to represent the collection entities in the Collection Browser.
  • Thanks to the above, Collection Browser now shows the entity tree of your MTP device (first screen-shot), which is nice.
Problems I've faced:
  • First little bugs/API omissions with libmtp are showing up (inability to flush libmtp's object cache). Fortunately the upstream is very helpful, so I'm looking forward to discuss it with them.
What's next:
  • Given that I've basically done work of both week 3 & week 4 from my timeline, I'll do a bit of polishing and testing. I'll also look at week 5 schedule which contains playability of MTP tracks directly in Amarok.
You can view and test my code by checking out gsoc branch of my personal Amarok clone repository.

On a related note, we've released Amarok 2.8 Beta! Yay! It contains a galore of improvements and corrections that are slated to end up in Amarok 2.8 (final). I definitely think you can give it some testing, can you? :-)