Sondra is a whole new way of listening to your music. It gives you the ability to rank songs and from them a play list is generated turning your audio player into a radio. Currently it can interact with XMMS, but if you wish to have it be able to talk to your favorite application it can be done with minimal amount of work.

    Back in 1995 I bought a 5 disk CD changer. The best feature on it was its ability to play songs from any disk in random order. Fast-forward 3 years later, now into computers my entire CD collection had been put on his computer in the form of mp3's. The play list consisting of hundreds of songs. And the player of choice had the ability to randomly play the songs. But still that wasn't good enough. There was still a problem. The really good songs were getting played just as much as the songs that weren't all that good. He found that listening to the radio was still better then listening to the random selection. One possible solution would be to create a play list that would have a song multiple times, but then it gets complicated. And now the present, 2001. In January I began to sketch out the design for an application that would generate songs on demand based upon rank. To give the listener the ability to rank songs and have a better listening experience.

    Sondra is made up of several components. The first component is the tag modifier. When you rank a song it isn't stored in a database, it isn't kept in some magic file with the rest of the ranks. The rank of every song is stored within the song itself. This is made possible by a new feature in the id3 standard. Every mp3 has a tag that will allow you to rank a song and count the number of times it has been played. The second component is the play list generator. It takes in all of the rank's and on demand generates songs based upon how high there rank is, how many times they have been played, and how long it has been sense they have been played. These first two components made up the backend of Sondra. This library can be plugged into any application to give that application the ability to turn the play list into a radio.

    Because Sondra is GPL and LGPL there are unlimited possibilities for it to be used. A developer can sit down and compile it for windows and include it within there proprietary application (Hopefully adding new things and contributing them back), but just as easily almost any audio player can utilize Sondra. The included application is a KDE application, but it doesn't have to be. It is just a front-end and does very little. If you are interested in utilizing Sondra you can download the source today and find new ways to utilize it.

What comes with Sondra?
    The current package comes with the following components:

libplaylistgenerator: A library that can be used to incorporate Sondra into other applications.
Sondra (The dock app): A KDE2 dock applet that uses libplaylistgenerator and sends the play list to XMMS.
idmodifer: A command line application to modify the ranks of songs.
playlistgenerator: A command line application that will generate and output a play list of length X.

File Downloads
Program Requirements