This week I made some interesting changes to Gnome MPlayer.
1. Asynchronous metadata loading. So now a threadpool is used to load the metadata in the background. Not that it is very slow, but it should reduce the time of long playlist loads. On my test of a 300 item playlist it cut the time by at least 50%.
2. Playlist storage rework, before this change I used to hold the playlist twice in memory, once in the load order and another in random order and switch between them as needed. I redesigned this process so that I now use indexes to hold this value. Allows for quicker randomizing, faster playlist loading and hopefully less memory usage. In addition the playlist now has an order parameter and you can sort the playlist by this value by clicking on the Order header. The change does result in when "Shuffle Playlist" is selected just the indexes are shuffled and not the actual items.
3. I also made a bunch of minor changes that were results of bug reports/enhancement requests.