Finally, after endless weeks of waiting, the beast in the form of Amarok 2.6.0 has been released to the wild!
totally rewritten iPod support. I must say thank here to everyone who tested it in the beta phase; your bug reports helped to polish it to otherwise unachievable level for the final release.
My other personal favourites of this release include transcoding at more places and crucial bug fixes so that Amarok doesn't loose your ratings and stuff when it doesn't have to. This is just one item of the multi-page long list of fixed bugs.
In short, Amarok 2.6 shines like never and is an absolute must for you. :-) Do you like it? Me and other awesome Amarok & KDE volunteer hackers will meet in Switzerland's Randa to code, discuss and plan immersely, please consider donating to help us cover the expenses. Thanks!
Tuesday, 14 August 2012
Saturday, 11 August 2012
|Notice that rating and labels are already synchronized.|
|Compare with screenshots from earlier posts.|
- Restructured internal code of StatSyncing::Controller to be even cleaner with regards to maintaining synchronizable collections.
- Polished the UI of the Choose Providers dialog. It is much cleaner now and will make the KDE Usability team happy. See screenshot above.
- Changed track matching to be case-insensitive. It would be a pity not to match 2 tracks just because the other one is not properly capitalized.
- Implemented logic to synchronize labels across collections. For each track, you can tick which collections will be the sources of labels. Resulting labels are then the union of the checked ones.
- Implemented matching with Last.fm tracks of your Last.fm Library; you have to have Last.fm plugin enabled and configured for this to work. Last.fm can match tracks by their artist, album and title.
- Implemented reading of Last.fm metadata - it can provide play count and tags, and we use a trick to store rating using tags.
- Implemented updating of Last.fm metadata - it can update tags and, with our little trick, even rating. See screenshot below.
|My Last.fm tags look like this now. :-)|
- First & last play dates sadly aren't provided by Last.fm, although they have the data. Fortunately the framework is flexible enough to gracefully cope with them missing. But I'll try to convince Last.fm staff to include them in their web API.
- liblastfm has a bug in its Track::removeTag method which breaks tag removal. I've fixed it, but the bug will hit you unless you use my liblastfm branch or until liblastfm incorporates the pull request and releases it.
- Buttons for mass-resolution of label conflicts in the Matched Tracks dialog.
- Configuration option to exclude some labels from synchronization.
- Option in the Last.fm plugin to opt-out from using the fancy rating tags.
- Better error reporting.
- Further polishing of the Matched Tracks dialog as suggested by the KDE Usability team.
- Scrobbling tracks played on iPods to Last.fm - all support code is ready, I only need to devise an algorithm for guessing scrobble times (we only have last played time and play count).
Tuesday, 7 August 2012
Yes, I'm still working on my GSoC project about statistics synchronization in Amarok. It seems that bi-weekly reports became common here. That's because I enjoy coding much more that writing about it. Last 2 weeks I've worked on reworking existing Amarok Last.fm scrobbling code and on back-end infrastructure for Last.fm synchronization.
What I've done last 2 weeks:
|Configuration is moved to a standard place per feedback on usability review|
- Improved USB Mass Storage Collection to be more friendly towards statistics synchronization.
- Reworked existing Last.fm scrobbling architecture in Amarok. Now there are ScrobblingServices and StatSyncing::Controller manages them and orders them to scrobble etc. This will make it easy for new services to be added in future (e.g. for Libre.fm). Existing Last.fm ScrobblerAdapter was turned to ScrobblingService implementation.
- Changed memory-management of some internal classes to be less error-prone.
- Moved some items of the existing "Local Collection" configuration page into newly created "Metadata" page. Local Collection page was overcrowded and some options didn't apply just to Local Collection.
- Added statistics synchronization options to the "Metadata" page of the Amarok configuration dialog. This should be a solution to usability problems of the original "Synchronize Statistics" dialog.
- Fixed various smaller bugs.
- On a less related note, I did the Amarok 2.6 Release Candidate tarball, which took some of my time.
- Working on UI is time-consuming sometimes. Polishing UI behaviour (disabling not applicable buttons etc.) takes a lot of code.
- Last groundwork for Last.fm synchronization (which is nearly done now).
- Actual synchronization with Last.fm!
Wednesday, 1 August 2012
Are you waiting impatiently for KDE 4.9? Warm-up your compilers with Amarok 2.6-RC that has been released just now! There have been a couple of bigger fixes since Beta 1, so we want to make sure that nothing hits your grandma in 2.6 final. Give it a good testing and report possible bugs to Bugzilla as usual. Thanks!