Music Metrics

From TheAlmightyGuru
Jump to: navigation, search

Music Metrics is a computer program I wrote in Visual FoxPro to better quantify my music appreciation. The program requires you to first assign a "RATING" metatag to each song in your library and then assign a value of 1-10. Then, the music file metadata is exported from foobar2000 by m-TAGS into a text file. This file is parsed into a database where various forms of sorting can be made.

The primary sorting system uses a weighted-rank which uses the exponential formula 2^(rating-1), yielding the following scores:

Stars Points
1 1
2 2
3 4
4 8
5 16
6 32
7 64
8 128
9 256
10 512

By using an exponential scale for a song's rank rather than a linear scale, I give a more accurate level of appreciation. For example, one song with three stars is better than three songs with one star. Looking at the chart above, a song with 3 stars is worth 4 points, so an equivalence of lesser songs would require either four one-star songs, two two-star songs, or one two-star song and two one-star songs. Since this uses an exponential scale, a ten-star song is equal in value to 512 one-star songs.

In addition to artist, you can also sort your music library by favorite composer, genre, and theme (assuming you have these tags populated). I also allow grouping on albums, years, and months. When a song has multiple artists, composers, etc., I use a semicolon as a delimiter and parse them out individually to assign proper weight.