Hi Beeters!
The other day I had to sit through a super-long meeting over skype so I started to play around with numpy and pandas and firends. Since I needed some datasets to work with I though: βWhy not play around with my music library?β
So, this is what I ended up with at the end of the meeting:
$ beet describe bpm albumartist:'Various Artists'
ββββββββββββββ¬βββββββββββββββββββββββββββββ
β Name β Value β
ββββββββββββββͺβββββββββββββββββββββββββββββ‘
β Field name β bpm β
ββββββββββββββΌβββββββββββββββββββββββββββββ€
β Field type β beets.dbcore.types.Integer β
ββββββββββββββΌβββββββββββββββββββββββββββββ€
β Count β 1392 β
ββββββββββββββΌβββββββββββββββββββββββββββββ€
β Min β 65.9922409058 β
ββββββββββββββΌβββββββββββββββββββββββββββββ€
β Max β 185.0 β
ββββββββββββββΌβββββββββββββββββββββββββββββ€
β Mean β 122.99097545119291 β
ββββββββββββββΌβββββββββββββββββββββββββββββ€
β Median β 122.0 β
ββββββββββββββΌβββββββββββββββββββββββββββββ€
β Empty β 0 β
ββββββββββββββ΄βββββββββββββββββββββββββββββ
Distribution(bins=10) histogram
66.0 - 77.9 [ 30] βββββ
77.9 - 89.8 [ 73] ββββββββββββ
89.8 - 101.7 [203] ββββββββββββββββββββββββββββββββ
101.7 - 113.6 [221] βββββββββββββββββββββββββββββββββββ
113.6 - 125.5 [256] ββββββββββββββββββββββββββββββββββββββββ
125.5 - 137.4 [208] βββββββββββββββββββββββββββββββββ
137.4 - 149.3 [183] βββββββββββββββββββββββββββββ
149.3 - 161.2 [ 87] ββββββββββββββ
161.2 - 173.1 [107] βββββββββββββββββ
173.1 - 185.0 [ 24] ββββ
letβs see genres:
$ beet describe genre albumartist:'Various Artists'
ββββββββββββββββββ¬ββββββββββββββββββββββββββββ
β Name β Value β
ββββββββββββββββββͺββββββββββββββββββββββββββββ‘
β Field name β genre β
ββββββββββββββββββΌββββββββββββββββββββββββββββ€
β Field type β beets.dbcore.types.String β
ββββββββββββββββββΌββββββββββββββββββββββββββββ€
β Count β 1392 β
ββββββββββββββββββΌββββββββββββββββββββββββββββ€
β Unique β 91 β
ββββββββββββββββββΌββββββββββββββββββββββββββββ€
β Most frequent β Oldies(202) β
ββββββββββββββββββΌββββββββββββββββββββββββββββ€
β Least frequent β Dance-Pop(1) β
ββββββββββββββββββΌββββββββββββββββββββββββββββ€
β Empty β 19 β
ββββββββββββββββββ΄ββββββββββββββββββββββββββββ
Unique element histogram
Oldies [202] ββββββββββββββββββββββββββββββββββββββββ
Classic Rock [139] ββββββββββββββββββββββββββββ
Soul [124] βββββββββββββββββββββββββ
Blues [120] ββββββββββββββββββββββββ
Rock [109] ββββββββββββββββββββββ
Pop [105] βββββββββββββββββββββ
Dance [ 86] βββββββββββββββββ
New Wave [ 48] ββββββββββ
Reggae [ 44] βββββββββ
Heavy Metal [ 33] βββββββ
Trance [ 24] βββββ
Jazz [ 20] ββββ
Blues Rock [ 20] ββββ
[ 19] ββββ
Soundtrack [ 17] ββββ
Synthpop [ 16] ββββ
Ska [ 16] ββββ
Rap [ 15] βββ
Pop Rock [ 14] βββ
Funk [ 12] βββ
Metal [ 12] βββ
Alternative Metal [ 12] βββ
Alternative Rock [ 11] βββ
Hard Rock [ 10] ββ
Soft Rock [ 10] ββ
Singer-Songwriter [ 9] ββ
Rockabilly [ 8] ββ
R&B [ 6] ββ
Rock And Roll [ 6] ββ
Electronic [ 6] ββ
Metalcore [ 6] ββ
Progressive Rock [ 5] β
Disco [ 5] β
House [ 5] β
Psychedelic Rock [ 5] β
Punk Rock [ 4] β
Progressive Metal [ 4] β
Thrash Metal [ 4] β
Funk Soul [ 3] β
Nu Metal [ 3] β
Death Metal [ 3] β
Contemporary R&B [ 3] β
World Music [ 3] β
Symphonic Metal [ 3] β
Post-Grunge [ 2] β
Pop Punk [ 2] β
Industrial Metal [ 2] β
Blue-Eyed Soul [ 2] β
Black Metal [ 2] β
Surf Rock [ 2] β
Psychedelic [ 2] β
PMEDIA [ 2] β
Motown [ 2] β
Industrial [ 2] β
Indie Rock [ 2] β
Rock, Hard Rock, Metal [ 2] β
Britpop [ 2] β
Contemporary Classical [ 2] β
Glam Rock [ 2] β
Indie Pop [ 2] β
Lo-Fi [ 1] β
Power Metal [ 1] β
Pop Soul [ 1] β
Folk Rock [ 1] β
Pinoy Rock [ 1] β
Post-Punk [ 1] β
Speed Metal [ 1] β
Doo Wop [ 1] β
Gothic Metal [ 1] β
Hip Hop [ 1] β
Downtempo [ 1] β
Southern Soul [ 1] β
Melodic Metalcore [ 1] β
Ragga [ 1] β
Classical [ 1] β
Teen Pop [ 1] β
Country [ 1] β
Grunge [ 1] β
Sludge Metal [ 1] β
Industrial Rock [ 1] β
Ballad [ 1] β
Southern Rock [ 1] β
Grindcore [ 1] β
Country Rock [ 1] β
Indie [ 1] β
Gospel [ 1] β
Vocal Trance [ 1] β
Gypsy Jazz [ 1] β
Blackgaze [ 1] β
Viking Metal [ 1] β
Dance-Pop [ 1] β
Quite neat isnβt it? You can easily catch missing/suspicious tags (I have βViking Metalβ ) and probably much more. I havenβt give this plugin much thought yetβ¦ I have too many ideasβ¦
Anyways, there is a repo of this stuff here but it is 0% tested and probably full of issues. You can clone it and add it to your beets deployment by using the pluginpath
config option to have a go at it.
If you think this plugin can be a useful tool for you give your contribution in the form of ideas and/or PRs so we can make at least the first PyPi release so that less savvy users can also install it.