beaTunes News

Monday, February 9, 2015

Creating great Playlists

So, now that I have bored you enough with overview, libraries, analysis options, and inspection, finally I'm getting to the point of it all: Building better Playlists.

At the core of playlist creation stands a concept. Something that is supposed to make the list tick. Something that ties it all together. This can be something as common as "Best Rock of the 80ies", "Love Songs of 68", as personal as "Songs you made out to as Teenager" or as specialized as "Songs influenced by Nirvana's Nevermind". Or, if you're into working out "Driving Beats for Aerobics", "Steady Steps for Marathon Trance", and "Up and Down on two Wheels". You get the idea.

The point here is, every one of these concepts follows different rules and therefore requires different data.

Regarding data we're in luck. Analysis and Inspection should have whipped your collection in shape. But how do you find the right songs? How do you make beaTunes understand the rules?

Song Matching

Naturally, you can simply browse your library or use the filter field to search, build your lists completely manually. Another approach is called query by example. The idea is, that you choose a song and ask beaTunes to find a similar one. The $100.000 question is: What exactly is similar?

beaTunes sidesteps this question by letting you define what's important to you. This happens in the Song Matching preferences. There you can set up sets of rules that emphasize certain aspects of similarity, like tempo, mood, or color.

Creating Matchlists

Once you have created a ruleset appropriate for the playlist you want to create, select a song that the other songs are supposed to be similar to. This song is called a seed song. Then choose New Matchlist from the File menu (or use the corresponding toolbar button). beaTunes will then display the dialog shown below. Once you click OK, it will automatically create a new playlist according to the configured rules.

Building Playlists Iteratively

Matchlist are a great tool for building playlists with the click of a button. But they also take all the fun out of the creative process. beaTunes supports another way to create playlists, one that works song-by-song.

To get started, again select a song that you want to use as the first song of your list—your opener. Then click on New Playlist from Selection in the File menu. beaTunes will create a new playlist and you might want to change the default name to something better. Then select that very first, lonely song, open the View menu, and make sure that Show Matching Songs is turned on. Below the main playlist table, a panel with matching songs should appear.

To build your playlist, check out the matching songs. Once you've found a good candidate for song #2, simply drag it into the main playlist table above. You will find that beaTunes automatically selects the newly added song, triggering the match process again. So now, beaTunes shows you potential candidates for song #3. And so on... The process is also nicely demonstrated in this video. If you're unhappy with the current match ruleset, you can select another or modify the current one in the preferences. And for those people interested in harmonic mixing, I'd like to point out the key filters. They let you hide songs that are not in a defined harmonic relationship to the selected song.

Conclusion

I hope this articles helped you getting the most out of beaTunes when creating playlists. If you have further questions, please comment below or start a discussion in the support forum.



This article is part of a small series under the heading "HowDoesItAllWork".

  • Part 1 explains the overarching idea behind beaTunes.
  • Part 2 explains what kind of libraries beaTunes supports.
  • Part 3 takes a closer look at analysis and analysis options.
  • Part 4 takes you step-by-step through the inspection process.

Labels: , ,

Friday, July 25, 2014

Visualizing Playlist Flow

beaTunes2 logo Playlists are basically songs put into a specific order, sometimes for a particular occasion. So much is clear. But what makes a playlist good? A recent paper by Thor Kell and George Tzanetakis suggests, that good EDM playlists or DJ sets are usually made up of songs that match sonically: "Our transition analysis has shown timbre to be an important attribute used by DJs".

But while timbre (related to beaTunes color) apparently is a very important choice for EDM DJs, it may be less so for the madly in love teenager who works on his graduation mix, or the oldies show DJ, who is restricted to songs from the 50ies. But in any of these scenarios it can be helpful to get some visual feedback for how the list, not the song, sounds and what the transitions are like. beaTunes 4 addresses this by displaying a playlist image above the textual list and also showing a transition column in the main table.

The playlist image represents each song in three dimensions: height, width, and color. Each of these dimensions can be assigned to a song property, e.g. duration, BPM, or key. To change the current setting, simply right-click on the image and re-define what is being displayed. To listen to a given song, double-click on it to start playback.

While the playlist image is a positive, descriptive approach, i.e. it tells what you have, the transition column is a somewhat negative approach. Like a little brother it nags, it tells you with little icons what may be wrong with your playlist. Among the things it indicates are tempo, key, and language changes (all of these require prior analysis). If you are keen on avoiding certain transitions, like a harsh tempo change, the corresponding icon will make you aware of it (a tooltip shows more info), and might help you to avoid it.

Without a doubt, automatic playlist generation has come a long way and certainly has its (very convenient) place. But it does not replace manual set-building, as it cannot know your goals and interests or the given occasion. Automatic playlist algorithms simply cannot detect intent. What's left is trying to support playlist creators. That's where beaTunes shines. It's meant to support you in building excellent playlists—giving you a little more feedback than just the song names.

Labels: , , ,

Saturday, October 5, 2013

Running to your own tune—BPM adjusted

The last time you went for a run, listening to music, did you encounter that moment when suddenly that ballad came on and you thought Damn! That's not what workout music is supposed to sound like! Listening to the wrong music while running can really throw you off, dampen your mood, and ultimately slow you down. Listening to the right tracks though, can make you faster. But what are the right tracks?

Most people enjoy exercising to an energetic, upbeat music mix. Certainly not slow, but also not too fast. So finding the right music breaks down to a couple of different problems:

  1. Find music you generally like, something upbeat and energetic
  2. Determine the music's tempo
  3. Figure out what tempo matches your exercise

Finding upbeat Music

You probably own a music collection. It's on your computer, some of it is upbeat and energetic. Often this can be determined simply by genre or album, but that's certainly not ideal. Another way to do this, is using Last.fm tags. To find energetic music on Last.fm, you could simple search for music tagged with "energetic" or "running". But that still does not let you go running with the tracks you found. One way to take those energetic tracks with you is to transfer Last.fm tags to your own collection with—you guessed it—beaTunes. Simply install the Last.fm plugin via PreferencesPlugins, restart beaTunes, and click to analyze your library. In the analysis options dialog, de-select all tasks but the Last.fm one. Then set how many tags per song you want to import. Typically, the top 20 are more than enough. beaTunes will not be able to find tags for all of your tracks, but at least the mainstream ones will be successfully tagged. Once the analysis ran its course, type "energetic", "upbeat", or "running" into beaTunes' search field and it will find those songs for you in your own music library!

Determining the Tempo

Now that you have some songs that may be great for running, how do you know how fast they are? Musical tempo is usually measured in beats per minute (BPM), loosely defined as the number of times you tap your foot along to a song per minute. Tempi below 100 BPM are generally considered slow, tempi above 100 BPM are fast (see Wikipedia). Both iTunes and beaTunes can display BPM for your songs. To see the column in iTunes, you might have to switch to the tabular song list view, and then select BPM in ViewSong View Options (also available by right-clicking on the table header or the ⌘-J keyboard shortcut).

Unfortunately, seeing that column does not fill it with values. And iTunes is incapable of doing just that. To automatically determine the BPM, analyze your library with beaTunes. Make sure to select the BPM task in the analysis options dialog. For beaTunes 3.5, choose the Rayshoot algorithm and a BPM range from 90-180 BPM. Depending on the size of your library, analysis might take a while. Keep in mind, that software is notoriously bad at distinguishing between say 90 and 180  or 60 and 120 —beaTunes 3.5 is no exception (I'm working on this for beaTunes 4). Some obviously slow songs will have a BPM value that is twice the tempo they really are. This is not a problem, as long as they still sound upbeat. This is because when you are running to a 150 BPM song, you can keep on running seamlessly to a 75 BPM song—the beat still matches your strides!

Finding the right BPM

Which brings us directly to the crucial question: What BPM is right for me?

As so often, the answer is:

It depends...

Really, it depends on two factors. The first one is obvious—the faster you run, the faster your music needs to be. The second one... well, the taller you are, the slower your music needs to be. It comes down to the length of your strides. Tall runners obviously need fewer steps for the same distance. And since you want to match the beat of your music to your steps, you essentially have to match your music to your speed and height.

Unfortunately, it's hard to give you a concrete example, like "if you're 5'5 (1.65m) and run 8min/mile (5min/km) your ideal BPM is X". But here are some examples to get you started, leaving your height out of the picture:

  • 7:00min/mile: 90/180 BPM
  • 7:30min/mile: 87/174 BPM
  • 8:00min/mile: 83/168 BPM
  • 8:30min/mile: 82/164 BPM
  • 9:00min/mile: 80/160 BPM
  • 9:30min/mile: 77/154 BPM
  • 10:00min/mile: 75/150 BPM

Start running with a set BPM and, if it feels too slow, next time ramp it up a bit. To improve your time, choosing a BPM that's a little faster than your usual pace definitely helps!

Building the Playlist

Now that you know what BPM you need and all your songs are BPM-annotated, simply enter "energetic" or something similar into beaTunes' search field, then select a bunch of songs with the right BPM (tip: sort by BPM) and create a playlist from the selection via the File menu. That's it!

Hope you enjoy your next run!

Labels: , , , ,

Monday, September 17, 2007

Explaining Rulesets

The other day a customer sent us an email with a couple of questions that are asked again and again. I would like to take a few minutes and try to clarify a number of things.

What determines the color?

beaTunes looks at a part of each track and performs a frequency analysis of that part. The result is then projected into the RGB (color) space. In essence, it is a measure for whether different songs are using the same acoustic frequencies. The idea is that songs that share similar frequencies are more likely to sound alike. So two acoustic guitar singer/songwriter tracks are more likely to have a similar color than an acoustic guitar song and some AC/DC anthem.

But same color definitely doesn't mean that two songs sound the same. They only share some acoustical properties. It is meant as one of multiple factors that can be used to find matching songs. It is by no means the all determining factor.

Which leads us directly to the next question:

How do I configure rulesets?

Let's look at an example. Say you have three rules, a), b) and c):

  • a) set to 1
  • b) set to 4
  • c) set to 2

If one song matches another song for all three rules 100%, then this song will be awarded 1+4+2=7 points. So in this case 7 points equal 100%.

If a song only matches rule a) and b), that would be 1+4+0=5, and that would be 71.4% (5/7).

So in essence you weigh the rules. In our example, rule a) has very little weight (1) - so it's really not that important. Rule b) on the other hand determines most of the outcome. It alone can score more than 50% (i.e. 4/7).

Note that matching rules isn't necessarily binary. That is, a song can match a song partially. So if a song matches rule b) somewhat, it might be awarded 2 out of 4 points. A good example for this is key matching.

How does key matching work?

Let's assume the key rule's weight has been set to 1. If it's a 100% match, i.e. a song has the same key as the one you would like to match, then beaTunes awards 1 point. If a song is in the dominant or subdominant of the song you would like to match, beaTunes awards 0.75 points. If it's in the tonic parallel, beaTunes awards 0.5 points. If it's neither of these three, beaTunes awards 0 points.

Please note that for key matching to make any sense you first have to set the key for a significant number of songs. beaTunes is capable of reading existing key values from id3 tags, but is not yet able to automatically determine the key.

What about negative values for rules?

Again, say you have three rules:

  • a) set to 1
  • b) set to -4
  • c) set to 2

In this case the total number of points a song can score is 1+0+2=3 (the negative weight is ignored for this).

The values for the matching rules are added up. So, if a song matches all three rules the score it reaches is 1-4+2=-1.

In essence, with this setting you want to make sure that a song that matches rule b) is ranked really low.

What kind of similarity does the rule “similar tags” mean?

beaTunes lets you tag tracks with keywords (both in the Get Info dialog and in the table view tags column).

Again the -5 to 5 slider determines how important this rule is relative to the other rules. Assuming it's set to 1, if two songs have the exact same tags, 1 point is awarded. If two songs have two tags and one of the two tags is the same, 0.5 points are awarded. etc.

What is the difference between the “match quality” slider in the preferences and the one in the matchlist dialog?

The slider in the preferences applies only to the the "matching songs" panel (Edit > Show Matching Songs). The one shown when creating matchlists applies just to the matchlist you are creating. Check out our demo video for creating playlists using the matching songs panel.

I hope this post explained one of the core features of beaTunes a little better and helps you build some great playlists.

Labels: , ,

Wednesday, January 3, 2007

Create compelling Playlists incrementally

Many of you use beaTunes for analyzing BPM and color in order to use the Matchlist feature. But that's certainly not the only way to take advantage of beaTunes' unique song matching capabilities.

Another way to create cool sounding playlists is to take advantage of the Matching Songs window.

To do so, we first search for a particular song to start the playlist with (Monika Tanzband by Anajo) and create a New Playlist from Selection. Then we rename the playlist, select the one and only song, and open the Matching Songs window.

The Matching Song window shows songs that match the selected song in the main view according to the configured song matching preferences. To check, whether one of the shown songs is really a match, we play it in iTunes - then we drag it to the position in the playlist where we want to insert it and drop it.

Since the newly added song does not match the search filter, the song isn't shown until we remove the filter.

The video shows how we procede with this approach for 4 songs.

Not shown in the video is that the songs in the Matching Songs window are updated in real time when you change your song matching preferences. Give it a shot!

We hope you enjoy this powerful new way of building playlists.

Labels: