For many of us, listening to music — and managing our collections of music — can be as important as making music. Jaymis has me sold on MediaMonkey, available in cheap / free versions, for Windows. Note that this doesn’t run on the Mac — feel free to discuss Mac alternatives in comments. Listening software is often one of those few apps we run every day, so here’s Jaymis’ exhaustive review of his favorite. -PK

I received my first MP3 file over ten years ago, as a zip archive spanned over three 3.5″ floppy disks. In the time since there have been advances in codec, hardware and software players, metadata formats and online sales, but after more than a decade the humble MP3 is still a dominant force in computer based music listening.

In my time as an MP3 consumer I’ve used a plethora of players, both hard- and software. In the early days, developers racing to add new features had me switching and trying out new applications regularly, but by the late 90s I was a dedicated Winamp user, even through the troublesome Winamp3 days. This all had to change. When faced with a year travelling and working in Europe I decided to retire my trusty 256MB “James” and replace him with a shiny, white, inevitable, 20GB (3rd Gen) iPod. After considerable wrangling (warning NSFW language and unrelated ranting in comments) I grudgingly switched to iTunes, which is an ok piece of software. Really. If all of your music comes to you via iTunes music store or major label CDs you’ve faithfully purchased and ripped (after reading and understanding any included EULAs) then you probably won’t ever need or want another media player. iTunes also has some truly fantastic features: Coupled with judicious iPod-based rating while travelling, Party Shuffle and Smart Playlists changed how I listen to music.

However, If you’re a discerning music listener. If you consume music which is copied from friends or MP3 Blogs, acquaintances with bands, records digitized from your dad’s vinyl collection, or if you occasionally change computers, use multiple computers or multiple ipods, then iTunes will eventually cause you grief.

It’s not the most full-featured application either. Apple’s “less is more” philosophy does make for friendly, simple software, but a quick look at Apple’s supplied Applescripts give you an idea of the basic functions they haven’t bothered with.

Enter Mediamonkey

MediaMonkey is amazing. I’ve been running it for 3 months now and still feel like I haven’t scratched the surface of what it can do. Here’s a quick feature overview from the site:

  • Organize music and edit tags in your audio library with a powerful, intuitive interface
  • Automatically lookup and tag Album Art and other metadata
  • Manage 50,000+ files in your music collection without bogging down
  • Play MP3s and other audio formats, and never again worry about varying volume
  • Record CDs into OGG, MP3, FLAC and WMA files
  • Convert MP3s, OGG, FLAC and WMA files into other formats with the Audio Converter
  • Synchronize with iPods / MP3 players effortlessly and convert tracks on-the-fly
  • Party Mode, which allows users to make requests while protecting your library from being modified.

There’s a freeware version or you can pay US$19.99 for the “Gold” version ($39.99 for a lifetime licence to all future updates). The commercial features include:

  • Increased Speed CD Burning
  • File Monitor (automatically updates library)
  • Advanced Searches and AutoPlaylists
  • Advanced Portable Device Synchronization with on-the-fly format conversion (list of devices supported)
  • Unlimited MP3 encoding
  • Virtual CD / Previews
  • Advanced Filters
  • Sleep Timer

I use MediaMonkey more than any other piece of software on my machine, it’s loaded just about 100% of the time, so for me $20 equates to just about no money for something I’ll be running for 16 hours each day. The free version includes the advanced 3rd party scripting abilities though, so you may not even need the Gold licence to get the what you want out of the software.

Reasons Not to Use MediaMonkey

Just to get the major shortcomings out of the way early:
It’s PC only, sorry Mac users, but fortunately the Apple platform’s tighter integration and the huge quantity of 3rd party applescripts available will let you emulate many of these functions.
It’s not the most beautiful user interface and tends to feel a little cluttered. There are a few skins available but I’m sad to say I ended up settling for the default “brushed metal” style skin.
It has a lot of features and options. I personally consider this to be a strength, but if you’re scared of right clicking or want something that “just works”, perhaps iTunes or Winamp is more your speed.

Now that the lightweights have left: I am so in love with this software. It has evolved how I listen to and organize music. When using iTunes I would actually put off downloading albums or tracks from mp3 blogs or other non-mainstream sources, because I knew I’d have to go through the annoying process of tagging and importing so the tracks would show up and sync correctly to my iPod. I ended up using a separate program to audition downloaded tracks before importing them into iTunes. I had also put off changing media players as I have built up years of ratings and statistics which I couldn’t bear to lose.

Switching from Another Player

On installation MediaMonkey detects whether you have iTunes, Windows Media Player or Winamp installed and offers to import all of your rating and playcount information from those programs. When moving from iTunes the only thing left behind was my Smart Playlists. MediaMonkey calls them Autoplaylists and they follow a slightly different format, so you’ll have to make new ones. Autoplaylists allow most of the filter criteria within iTunes (with the notable exclusion of playlists-within-playlists), and plenty of extras including 3 “custom” fields, which you can rename and fill with information of your own devising. This is quite typical of MediaMonkey, while the default program has plenty of features and some cool new ideas, it’s the customization frameworks built in which makes it so powerful. If you’re one of the aforementioned discerning music listeners you’re hardly going to need me to hold your hand for the basics of a media player, so instead I’m going to touch on some of the more advanced features and superb 3rd party scripts and customizations which have me hooked.

MediaMonkey’s Included Coolness

Auto-DJ is like iTunes’ Party Shuffle, but integrated with the normal Now Playing window. If your queue is running out of tracks, Auto-DJ will automatically add new tracks to keep at least 10 upcoming songs at all times. These tracks can be chosen from the entire library, or from a specific playlist.

Auto Organize Files allows you to move and rename files from within the program, so moving previously imported and played tracks from a download directory takes 3 clicks (or 2 shortcut key combinations) rather than the painful open-explorer-move-files-and-locate-them-manually process within iTunes.

Copy and Delete from within the app. Want to send a track to a contact, include it in a project directory or delete something horrible you never want to hear again? Both drag/drop and shortcut key copy/paste work from anywhere in the program, and when deleting a track from the library or a regular playlist you have the option of deleting from the playlist, from the playlist and library, or removing it from the computer as well.

Album Artist Display: Album Artist was only just added to iTunes 7. It’s been part of MediaMonkey since before it was called MediaMonkey, and it has helped me solve an issue I’ve had with media players since I started using them: How to tag and name compilation albums.
Without the Album Artist tag compilation tagging has always been a kludged affair: I had my compilation tracks tagged with the artist as “compilation name” and track name as “track artist – track name”, which isn’t a particularly intuitive solution.
If you use the musician’s name in the “artist” field, then the various tracks from a various artists album will be spread throughout your library. If you use the compilation or dj name as the artist, then those tracks won’t show up with others by the same musician. The Album Artist tag solves this by allowing you to have it both ways.
For instance: If I was to purchase and rip So Fresh – The Hits of Spring 2006 (which I believe to be around volume 572 of the groundbreaking So Fresh series) I would tag the tracks with “So Fresh” as album artist and the musician (or fashion victim) as artist. So if I want my library to display my whole So Fresh collection in all its glory I can sort by Album Artist, whereas if I’d like to see all of my Pussycat Dolls tracks I can sort by Artist.

Find More From The Same: To quickly locate related tracks without rearranging the library you can right click on any track and choose “Find More from Same” artist, album, genre, year etc.

Half Star Ratings: I’ve always had problems dealing with a 5 point rating system. It’s just not enough flexible enough and left me with hundreds of 3 star songs which, really, aren’t 3 star songs. I probably wouldn’t choose to listen to them if presented with a list, but they’re definitely not 2 star tracks. 2 star is for all those annoying hip hop skits and infuriating “hidden tracks”. MediaMonkey allows for half-star ratings, and it also differentiates between “unrated” and “no stars” (bomb). Note that iTunes has been able to display half-star ratings since iTunes 6.0.2, but you need an applescript to set them and they don’t actually do anything.

Advanced 3rd Party Stuff

The MediaMonkey Add-ons page displays a relatively paltry assortment of plugins. However, it is designed to be compatible with the Winamp 2 API, which opens up several thousand other options. However, apart from the Audioscrobbler plugin I haven’t really explored this option, beause the user developed scripts are crazy delicious.

Looking at the official scripts page may again lull you into a false sense of disappointment. Apart from the excellent Magic Nodes there isn’t much there. To find the really great stuff you need to jump into the Scripts and Components forum. To me this is the program’s greatest weakness, all of the very best functionality is hidden away and completely disorganized. This is vaguely understandable as most scripts are constantly under development, so forums are great for people to discuss modifications and updates, but I’d love to see a scripts wiki or user scripts list on the main site. Of the 5200 registered forum members I’m sure a couple would be happy to keep this updated. There is an “All Scripts” thread on the forum, but it’s woefully out of date and presents as an unwieldy list. Most scripts also need to be added manually to MediaMonkey by copying the script code from a forum thread, creating a new file in the MediaMonkey scripts directory and pasting in the code, once again not the most friendly process if you’re trying to discover new functionality.

However, I have plenty of time on my hands, so I have spent several nights gleefully wading through forum threads and testing out scripts to bring you a list of my favourites.

Jaymis’ Favourite MediaMonkey Scripts

Magic Nodes is fantastic. Outwardly it works like Smart Playlists, allowing advanced dynamic filtering, however Magic Nodes lets you use SQL filtering for increased awesomeness, and also displays the results in a tree structure. Example Magic Node strings can be found here.

Auto Album DJ: If you reach the end of your Now Playing list, this script adds a randomly selected album to play next. Minimum tracks, average rating, minimum rating, genre etc. are customizable within the script code.

ScrobblerDJ is another automatic playlist filler. When the final track in now playing is reached this script queries for a list of similar artists, then chooses a track from your library from one of those artists. This can cause a bit of a “feedback loop”, filling your playlists with similar, popular artists, but this is great if you’d like to stay within a certain genre or mood, and if the playlist starts going awry you can pull it into a new direction by dropping a track of your intended mood on the end.

Radio Free Monkey is a playlist creation script which weighs tracks based on rating, how long they’ve been in the library etc.

Rate Played Song: If an unrated track is played through to the end, playback is paused and a ratings dialogue pops up.

Predefined Rating creates shortcuts for rating and moving between tracks, allowing you to rate albums quickly.

TweakMonkey allows you to tweak startup settings (volume, auto-play, shuffle, repeat, startup playlist, randomize playlist on startup, startup node) and hide nodes you’re not interested in.

Play History Node: Like having a local which actually your stats when you play the tracks, rather than a week later when you don’t care anymore.

Extract Fields
allows you to re-tag files based on their current tags. This is useful if you’ve used the aforementioned kludged compilation tagging system instead of album artist tags.

This is only the tiny subset of the available scripts which I’ve found useful or exciting. For more check out the Scripts and Components forum, or the wiki which I’m sure is coming any day now, right? Devs?

Quirks and Requests

MediaMonkey’s thickly piled awesomeness hasn’t made me blind to the problems or aspects which could do with some improvement. Obviously the script discovery and installation system needs an overhaul. I’d like to see an associated filetype extension for MediaMonkey Scripts, or at least some kind of packaging system which will install them for you, rather than having to manually create files and drop them into directories, which feels archaic and will prevent less advanced users discovering how great the program can be.

Tagging or rating the currently playing track will cause the audio to skip. This is an issue as basic as Apple’s longstanding lack of gapless playback: It should not happen, and a remedy should be of highest priority. It took Apple 5 years to add gapless support to the iPod, let’s hope MediaMonkey fix this sooner.

The shortcut keys are rather incongruous: [ctrl + p] for play? [ctrl + n] for next track? These should at least be customizable.

On my dual monitor system (driven by a Radeon X1600) the program always opens in the primary monitor, no matter where it was located when last closed. I’m guessing this may have something to do with the clever, svelte “now playing mode”, but this behaviour is well documented in the forums and doesn’t occur with any other program I run.

Some iTunes features which could do with porting

Smart playlists able to reference other playlists: This opens another level of advanced playlist creation. Examples here, here and here. Apple’s Smart Playlists are also able to match “all” or “any” rules, which can be very useful.

Start Time and Stop Time: Allows you to skip those annoying hip hop skits or “hidden track padding” at the beginning and end of otherwise good music, removing pointless banter and 15 minute silences from your playlists.

Skip Count Displayed: I believe MediaMonkey keeps count of skipped tracks, but it would be useful to have this information available for display and playlist creation.

The Verdict

Fantastic. iTunes 7 has caught up a little and is on another level in the looks department, but it doesn’t come anywhere near the abilities of this Monkey. If you have a PC you owe it to your music, give MediaMonkey a try.