I’ve been working on Music for the past three months, adding support for remote sources. The work included adding support for dLeyna and DMAP source for Music.
Why is this project needed:
Music currently list and plays songs only from the local filesystem (that are indexed by Tracker), there is no way to browse and play songs from remote sources such as DLNA and DAAP.
Most of the users have their media on media servers and not on file-system, right now if there are no songs on the computer an empty search view is created notifying you that no songs are present on the computer.
So This week I was working on change tracking in Music.
What is change Tracking?
So change tracking is a mechanism to let the source know that there have been some changes in the server data, and your client should adapt to those changes. For example, let’s say we have an album and, I deleted a song from that album, so my source sends a signal to my client that there is a change in album container and, you need to update it accordingly.
So, last month I added support for DLNA sources, and this month was supposed to be for DAAP sources, but there are a lot of things still going on with DLNA sources. There was a lot of stuff that was missing and I’m going to talk about problems with some of them.
Progress with DLNA
One of the main ones was the latency and processing power of the media servers. Whenever we work with servers, we dump in queries on them, and a large enough query can make our media server freeze, so it’s better to load data in small chunks from our end so that we can guarantee smooth media extraction from the server.
It has been a month since the coding period has begun. And it is going great, we have managed to get most of the work for the first milestone done. This month’s work included adding support for DLNA sources to Music, so that it can list and play media from the DLNA server.
FIRST THINGS FIRST !
What is DLNA and DLNA media server? Digital Living Network Alliance, or as we know it, DLNA, is a set of rules and specs that specifies standards and guidelines for media streaming devices.
It was around 23:25(IST) on the 4th of May, my brother and I were glued to our phone screens, the GSoC webpage open, eagerly waiting for the results (he was visibly the more excited one). And BAM! 23:31, I saw my name on the GSoC website. Then followed a tsunami of “congratulations”. I’ve been accepted into GSoC to work with GNOME.
I applied for the Music project under GNOME. I’ve always fancied music, making music and now I wanted to make a music player to play that music.