1.0 What is Giocoso?
Giocoso is a gapless, trackless, optionally-randomising, optionally-scrobbling command-line FLAC player, intended primarily for the playback of digital classical music, on Windows, Mac and Linux.
Which is a bit of a mouthfull! So let's break that down a bit:
|
|
|
|
|
|
|
|
Perhaps a simpler description of Giocoso after all of that is: it's a personal 'radio station' for classical music, capable of playing a 'wall' of constantly-varied classical music on a wide variety of platforms and PCs.
2.0 Why Giocoso?
Linux, Windows and Mac are not exactly short of software for playing digital music files! From programs such as VLC, Foobar2000, iTunes or the weirdly-named DeaDBeef, there is a media player to cater for, apparently, everyone's whims and wishes. So why bother writing a new one? Because none of the media players on any of the platforms I've mentioned were, I think, designed with classical music in mind and thus none of them were entirely 'right' for me and my classically-inspired requirements. Some of these requirements I've already touched on in Section 1, but they perhaps bear repeating a little here!
2.1 Tracks
Every software music player I know of displays and works with 'tracks'. Here's DeaDBeef playing some Brahms, for example:
Is the display here of any usefulness? To some extent, yes: it's good to know that Brahm's Symphony No. 3 consists of four movements, and it's nice to know each movement's general tempo marking. The trouble is that the display invites 'selective clicking' on the individual tracks. Now, it's your music and you listen to what you like, I guess... but to my mind, Brahms wrote a symphony, not four separate 'things' which together make a symphony. So to click on track 3 there and just play the Poco allegretto would be doing Brahms a disservice. It is, of course, true that Brahms is long-since dead and therefore incapable of caring about what you choose to do in the privacy of your music listening room, so you are free to listen how you like... but getting into bad classical music listening habits is a bad thing, regardless of whether anyone is taking notice of you doing it! If you get into the habit of only playing 'bits' of a larger work in the privacy of your own room, you're going to be in for a surprise when you finally make it to a live concert! For myself, I think the discipline of being 'made' to listen to entire symphonies, masses and concertos in one sitting is a good musical habit to get into. For British radio listeners, it's the equivalent of learning to listen to Radio 3 instead of Classic.fm!
If you take your classical music even slightly seriously, in other words, you do not want to be distracted or tempted by the existence of 'tracks' -and that meant I needed a trackless music player.
2.2 Randomising
Over the years, I have got into the bad habit of over-playing some composers and under-playing others. There's nothing morally wrong with doing that! We have favourites, of course, and there's no harm in indulging ourselves with our favourites, whether that's favourite food, favourite drinks or favourite music! But over-doing the favouritism means you miss out on a chance to experience new things and -perhaps- develop new favourites. For a wider musical experience, in other words, I wanted a music player that would make me listen to composers who were not on my list of favourites. Essentially, that meant taking the choice of what to listen to out of my hands -and for that, I needed a music player that would select to play compositions at random for me, regardless of who had written it. Giocoso's ability to randomise its plays was thus a crucial and key reason for writing it in the first place.
To be honest, a randomising music player essentially becomes your own private classical music radio station: you can kick off plays of things at breakfast and have an ever-changing, always-fresh stream of music broadcast to your ears for the rest of the day without involving yourself in the choice of that play list at all. In the year or so since I first came up with this idea, Giocoso has transformed my classical music habits in ways which I would commend to anyone who cares about classical music -and in ways which I don't know any other software music player is capable of doing.
2.3 Composition Scrobbling
Most software music players these days have the ability to transmit information about what you play to Last.fm (the process known as 'scrobbling'), so Giocoso is nothing very special in being able to do the same thing. The problem is that all those other music players are track-based, and therefore will transmit 'he played the first movement of Beethoven's fifth' the moment that first movement has finished playing. After several more minutes, they will transmit 'he's just finished playing the second movement'. After more still, it will be 'he's just finished the third movement...' and so on. Which is fine... so long as you complete all four movements! But if you walk off to cook your lunch after the third movement... can you count the playing of ¾ of a symphony as a 'play' that should be recorded?
In my view, no. If you listen to a complete work, fine: that's a 'play' that 'counts'. But walk out half way (or three-quarters the way) through, and you can't honestly say you've listened to the symphony (or the concerto, or whatever it is). So telling Last.fm you have listened to bits of a symphony, as each movement completes, seems a bit daft to me.
In short, though I wanted a music player that would scrobble, which most players would be able to do, I wanted one that would scrobble only when a complete composition had been listened to... which no other player I'm aware of knows how to do. But I wrote Giocoso to work in exactly this way, since that's what I believe respect for the classical music paradigm requires.
2.4 Work with the Metadata
Most other software music players will happily display the metadata tags you embed in your FLAC files when first ripping them from CD, but few seem to be able to work with that metadata. In other words, though I've carefully tagged all my music with composer, composition and performer names, I don't know of any software music player that will let me say 'please find me something conducted by Bernstein' or 'play me a choral work composed by Benjamin Britten'. Certainly, most players will let you search for words such as 'Bernstein' -but you are as likely to end up with works composed by Bernstein as those composed by others but conducted by him. Again, most players will let you search for 'Benjamin Britten', but they will end up displaying Elgar's Dream of Gerontius, because Britten conducted it; or Peter Grimes, because Britten composed it... but searching by Genre and Composer? Not many players easily let you do that sort of 'combo search'.
I wanted a music player, in other words, that understood how I'd tagged my music and would work with that tagging strategy to enable meaningful musical discovery possible. Displaying this data is usually much less important to me (my ears can tell me whether I'm listening to Bach or Schönberg without needing to see it displayed on screen!) than being able to use it for easy and meaningful filtering and searching. Giocoso puts metadata filtering front-and-centre in what it does and how it does it and puts displaying data at the bottom of its list of priorities!
2.5 Statistics
I am quite fanatical about keeping track of what I've listened to, who my most-listened-to composers are, and so on. Few music players I'm familiar with allow you to build up readily-accessible statistics about your listening habits. Transmitting your play history to Last.fm can certainly help in this regard -but some people might not be too keen on sharing their play histories with the rest of the world in the way that scrobbling does! I therefore wanted a music player that would build up a local play history that could be interrogated and used for analysis of a flexible and extensible nature. As it happens, I then decided to publish this statistical data to my own website in ways which allow easy, graphical visualisation of what I've been listening to (see any of the links under the 'Listening Analysis' menu option at the top of this very page, for example).
I certainly realise that not every classical music listener is going to find this sort of data helpful or even interesting -but I wrote Giocoso to at least provide this data to those for whom it might prove useful.
2.6 Summary
Given all of the above points, the short version is simply this: none of the software music players on Linux, Windows or Mac with which I was familiar met all of these specific needs which I was aware I had -and that's why Giocoso exists! If any of these points ring a bell with you, then you're definitely the target market for Giocoso -and I think you'll find it useful, too.
3.0 Is Giocoso for Everyone?
With all the above in mind, I hope it's clear that Giocoso isn't intended as a general purpose music player that everyone will find appropriate! Whilst music can be pure entertainment, to be sampled and dabbled in, like a plate of petits fours, Giocoso doesn't expect you to be listening to music that way! It plays without interruption; it doesn't display pretty visualizations on your computer screen whilst it's doing it; it puts sound quality above hard disk space; it expects you to have tagged your music files up 'properly'; and it expects you to own your music, rather than be streaming it (Giocoso, in fact, has no streaming capabilities at all, except over a local network). It doesn't have to be classical music that you're listening to, but Giocoso was written expecting it to be. If you're the kind of listener that loves classical and jazz, for example, I think you'll find Giocoso a good fit for playing the classical part of your music collection... but I have no idea how well or ill it works with Jazz. I am pretty certain, however, that it won't play well with "pop music", however that might be defined.
Fundamentally, Giocoso is written in the belief that not all music is nails, so not all music players should be hammers! It is a tool tailored for playing certain kinds of music in a particular kind of way. If you don't fit its model, it's not going to fit your requirements, therefore.
4.0 What's with the name?
As a classical music fan, you will probably already know that the word giocoso is a tempo indication that means ‘lively, humorous, joyful’ or, particularly, ‘playful’. I couldn’t think of a better name for something designed to ‘play’ my music collection in a way that brings me joy and makes music choices for me that are always fresh and lively.
On a slightly less cerebral note, a random search for ‘giocoso’ one day brought forth pictures of a party-mode cat. Adoring cats almost as much as I adore music (and wine!), I thought the pairing was ideal.
Joe Playful (and his feline brethren) are thus the official mascots of Giocoso. They will be used relentlessly in all future documentation and news releases about the program!
Meanwhile, regardless of why the name came about, draw inspiration from the party-loving cats and feel free to use Giocoso to listen to your classical music collection in new, insightful and, above all, playful ways!