Thursday, November 20. 2008Localized Content
In my last blog entry I talked a bit about how cool it is to have such a strong lineup of services ready for the launch of Amarok 2.0.0.
Since then, something else has started happening in a big way. Scripts containing localized content has started to appear. Peter was first with his Chinese Radio Service, and then all of a sudden yesterday, things started to move fast. In quick succession we got service scripts for Radio France and Bulgarian Radio Stations and this inspired me to put together a Danish Radio Streams script that was released a few hours ago. While each of these service scripts are very simple and have an audience that is limited by language or region, I think that together they represent a very powerful aspect of Amarok 2 as they make Amarok feel 'native' to people who do not have English as their first language. I know that personally, for me to be able to present a nice list of readily available Danish radio stations, will be a huge plus when showing Amarok 2 to friends and family who are not overly technically inclined (read: non geeks). I hope (and fully expect) to see a virtual flood of scripts of this type, and while I an most others will each only use a few of them, I am very exited that they are appearing! Friday, November 14. 2008
"If we have 2 or 3 good ... Posted by Nikolaj Hald Nielsen
in freespirit at
16:38
Comments (13) Trackbacks (0) "If we have 2 or 3 good services at launch I will be happy"
With Amarok 2.0.0 rc1 right around the corner, now is a good time to reflect on where Amarok 2 comes from and where it is going. So I felt like writing a bit about the journey of the idea of "services" in Amarok 2, as that has been my main focus, even though I have managed to get my hands dirty all over the place it seems!
Just over 2 years ago, Amarok 1.4.4 was released with a cool new feature, which also happens to be my first contribution to Amarok, the integrated Magnatune.com store. ( Here is a cool page that Magnatune did to document some of the responses ). The overall response to this was quite good, and Magnatune started selling quite a few albums through Amarok, and eventually ended up hiring me, and I still work for them. Something else started happening as well. People saw the integrated Magnatune store and started asking if there was any chance that their favorite store could get a similar integration. Most of the Amarokers agreed that this could be cool, but there were several obstacles. For one, the way the original Magnatune store required a huge amount of custom code to do simple stuff like adding tracks to the playlist ( and as many will likely know ) the metadata representation of these are not perfect. Also, The Magnatune store had its very own tab on the left side of Amarok, and it was clear that we could not just add an arbitrary number of these as we started to add more stores. Finally, the Magnatune store in the 1.4.x series of Amarok is tied very closely to the rest of Amarok, meaning that it cannot easily be removed, and that people are more or less forced to load part of this code, whether they use the store or not. Luckily for me, after a time, something big happened in Amarok-land, the 1.4.x series was put on maintenance mode and the work on Amarok 2 was started. Since I was only responsible for porting over the Magnatune store and had almost no other code in Amarok, I decided that this would be a good time to try to tackle some of the issues mentioned above, and prepare Amarok for further stores or other services to be integrated. To make a long story short, we now, after a year and a half of work, have a framework in place that allows services to be implemented as plugins and loaded/unloaded on demand, a service browser to show them in and overall much better integration into Amarok overall, basically solving all the issues that needed to be solved before we could add more services. My original plan was to port at least the Magnatune store to this new framework, and as the title of this post shows, when I started this work, I would be very happy to have 2 or 3 working services to show up when 2.0.0 was launched. As the image on the left shows, this is not quite what happened. This image shows the services that are currently available, either included with Amarok 2 itself, or via download from kde-apps.org ( easily installable from within Amarok 2 using the "Get Hot New Stuff" system ). Some of these services are coded using the C++ framework, and some are scripts that run on top of the "Scriptable Service" framework, which is itself an extension of the underlying service framework. I have done a number of them myself, but more and more services are added or maintained by others. There are 13 of them. This is way more than I had ever hoped we would have available anytime soon, and really shows off the power of the framework well. Especially the scripted service framework, that lets people relatively easily add content from an online source ( although in a somewhat limited way compared to a full C++ plugin ) has received a lot of interest lately, and these scripts seem to be pouring in at the moment. Looking at the picture of all these services, one does start to appreciate how useful it is to be able to only load the services that are interesting to you, and not having to have them all in the list all the time! So what will the future bring? For starters, I have realized that I might need to extend the API used by service scripts a bit, since these seem to really be taking off in a big way, and requests for new features are already coming in ( and some have already been implemented ). Beyond that, I know of quite a few services that are being worked on, or are in the planing phase, both scripts and very advanced full plugins, so as with the rest of Amarok 2, this is not the end result, it is merely the beginning, and cool things will happen over the next many years, as we fully realize the potential of the new codebase! Saturday, November 8. 2008
Everything you always wanted to know ... Posted by Nikolaj Hald Nielsen
in freespirit at
18:38
Comments (3) Trackbacks (0) Everything you always wanted to know about writing Amarok 2 service scripts but were afraid to ask!
With the release of Amarok 2 growing closer and with such cool scripted services as NPR, BBC and Free Music Charts being recently released ( if you have a recent version of Amarok 2 , all of these services can be installed simply by going to the script manager, clicking the "Get More Scripts" button, and clicking install on the scripts you want ), we are starting to receive quite a few questions about how to start writing a cool service script for any number of on-line content sources.
This finally got me to take the time to do something I should have done a long time ago: start writing a guide. So, if you want to write an Amarok 2 service script, check out the scripted services tutorial on the Amarok wiki. So, if you have a favorite website that provides freely available audio content, writing a service script is a great way to make this accessible to a large number of new users! Monday, November 3. 2008
There is a BBC in my Amarok Posted by Nikolaj Hald Nielsen
in freespirit at
20:23
Comments (8) Trackbacks (0) There is a BBC in my Amarok
Ok, I admit it, my blogging recently has been a little, hmmm, erratic? Ok, so maybe non existent is closer to the truth.
The thing is that I mostly blog about cool new stuff in Amarok, and since we have been in release mode for a while, not that many really col new features has been added. Now, I am not saying this is a bad thing, as we really needed to start focusing on getting Amarok 2 ready for release, but it does make me a much less active blogger. So, what is someone like me, who has an urger do do something new and exiting every once in a while, todo? Well, yesterday the answer was served on a silver platter when I discovered this. Looking at that, my first thought was "Hey, that is very cool", my second thought was "Damn, they have something that Amarok 2 does not", soon followed by "No way!" My personal pet feature in Amarok 2 is the service framework. But there is a certain part of it that has really been growing on my, namely the qtscript interface that allows you relatively easy add a new service using small qt script. Lydia blogged about the Librivox service a little while back, which was built as a scripted service. So, a few hours after finding the BBC feed that lists the freely available content I had this up and running: This script is now available from kde-apps.org or it can be automatically installed from within Amarok 2 by using the "Get More Scripts" button int the script manager. I think stuff like this really nicely shows off the power of these scripted services. Just recently, Sven Krohlas, a long time rokymoter and Amarok contributor released his Free Music Charts service, and I already know of a few other cool scripted services that are under development. If this keeps up, Amarok 2 will have quite a nice selection of scripted services when it launches, and hopefully this will inspire other people with cool ideas to implement even more. |
Amarok LinksCalendar
QuicksearchCategoriesSyndicate This BlogBlog Administration |
|||||||||||||||||||||||||||||||||||||||||||||||||

