I've done it again (Now for OSX) - 01/10/2010, 04:18Yep, Calcetín, the media player that Does Not Aim to Conquer the World[tm] is now available for Mac OSX.
It's aim is rather to distract as little as possible, by having a minimalist interface and only basic functionality. For instance, I only care about OGG files, so that's the only format it plays (you are welcome to contribute more possibilities as patches) and it only has shuffle, play and next buttons. Also, it should be readily available at any time and occupy as little screen estate as possible, though still be comfortable to use - I made it extra long so that more song titles could fit in the window caption (I could not get rid of the useless buttons).
It's based in libogg, libvorbis, SDL and SDL_Mixer. I'm considering dropping the last two and going instead pthreads+libvorbis+libao to avoid the stuttering that sometimes happens since SDL_Mixer does not request any special scheduling options for its threads, but this will take time.
I encapsulated all the media player's functionality in a C++ class, which might be a drop-in solution for other people's projects if they need to play music easily - it's GPLv3.
For those wondering how to join an Objective-C code with C++, it's easy (though not obvious): you need to turn your stuff into Objective-C++. How? Just rename the *.m files that need to be in contact with C++ classes into *.mm files. Then you can simply #include your C++ stuff and continue business as usual.
You can take a peek in the code if you want to see how I did it - here's the svn repo url:
< Back to blog