Tag Archives: Love

Search like Google Part II: Autocomplete, Filter by Dance Style and Sorting

I am continuing to rebuild the music4dance database capabilities in the more intuitive style of current search engines like Google and Bing – the initial attempt at this is documented in this post.

Auto-Complete

Auto-complete is something everyone expects when searching these days.  So if you were to type “Peab” into the search box on the simple search page you should see suggestions like the following pop-up:

  • Peabody
  • Peabo Bryson
  • Tonight, I Celebrate My Love (feat. Peabo Bryson)
  • Peabo Bryson & Regina Belle
  • Peabo Bryson And Roberta Flack
  • Love and Rapture: The Best of Peabo Bryson

And just like Bing or Google, clicking on the selection will take you to a list of songs that contain the selected text.

The thing that is a little different for music4dance than a generic search is that one might want to do combinations of things like a fragment of a title and a dance style name.  I haven’t figured out an easy way to do that, but as always I’m open to suggestions.

Filter by Dance Style

But I can fall back to the original way that I landed on for just searching within a single dance style.  So now on the Simple Search page, you can select a dance style from the drop down to the left of the search box and we’ll just show you results for that dance style.  So if you select Cha Cha and then type “tea” into the search box you should get only songs that have the word tea somewhere in the description that have also been tagged as Cha Cha.

Sorting

And finally, I’ve implemented sorting by Title, Artist, Tempo, Beat, Energy, Mood and Recency.  Just click on the appropriate heading in the Simple Search Page, just like you did in the classic search page.  I’m still looking for a reasonable way to sort by votes on dance style.

The Google Miniseries:

What if I just want to search for songs on music4dance like I do on Google?

One of the things that I’ve had a lot of fun with is building a sophisticated search engine where I (and you) can do things like find songs that someone has tagged as Waltz and someone else has tagged as Foxtrot.  Or find all swing songs that are in a particular tempo range.  There are lots of neat things that you can do with the Advanced Search system if you’ve got some knowledge of dance and music and want to dig deep into these corners of the music4dance catalog.

But what if you just want to search through the catalog the same way you would on Google or Bing?   For instance, what if you’re looking for a song that has been tagged as Wedding and has the words “Love” and “Time” in it?  With simple search you can just type Wedding Love Time into the search box and you’ll get some useful results.  You can further refine the search by using some of the standard search modifiers like + and – and putting quotes (“) around phrases to be more precise about your searches (for instance try “First Dance” +Foxtrot +Rock).  But if you’re the type that doesn’t bother with that on Google you should be fine not worrying about it here as well.

More information is available on the help page but you should be able to go to Simple Search from the “Music” menu on the music4dance home page and dive right in.

The Google Miniseries:

EchoNest Integration – Loads of new tempo, meter and other information to help you find music to dance to

I’ve cross indexed the music4dance catalog  with the EchoNest database and exposed some new features.

The most fundamental improvement is that EchoNest provides tempo and simple meter information.  So I’ve been able to add tempo information to a number of songs that I didn’t have cataloged that way before.  And I’ve also added the time signature tags to these songs.

But more importantly, EchoNest does some interesting analysis of the music to come up with some acoustic attributes to describe a song musically.  They are:

  • beat-10 Beat: An attempt to characterize the strength and consistency of the beat.
  • Energy-10Energy: The intensity and power of the music – this is probably the most intuitive of the attributes.
  • mood-10 Mood: A measure of the mood from positive or happy down to sad or angry.

I am representing each of these attributes as a graphical column headed with an appropriate icon (drum for beat, flame for energy and smile for mood).  Each column is sortable both from high to low and low to high and when I have data for a song, the icon in that song’s row is ‘filled’ to a proportional amount.  EchoNest provides a number from 0 .0 to 1 .0 and I translate that into icons that are 0 to 100% filled (in 10 bands).

More information on this integration can be found on the help page.  Or just head over to the music library and start experimenting.

For instance, here is a snapshot of a list of songs that are tagged as “First Dance,” can be danced to some form of Foxtrot and contain the word “Love“.  They are sorted by “Beat” from strongest to weakest.  If you’re looking for a song to dance your first dance to and aren’t an experienced dancer, you probably want a strong beat.

EchoNest

What do you think?  Are there other acoustic attributes that I should include?  Would you like to be able to sort on multiple attributes on the same time or filter on one attribute and sort on another?  These are all entirely possibly, but I need your help to prioritize these features.  Please feel free to reply to this post or leave feedback with any thoughts you have on this set of features.