Blog by Max Ammann

MPD: Using beets to manage your music!

MPD is an excellent way to play your music collection, but you do not want to depend on MPD or its database. Maybe you want to use your library also in other playback programms.

Beets is a really beautiful Python application. It allows you to import your music collection, while fetching metadata from online databases like musicbrainz.org or discogs.com. There are also some plugins available which allow you to fetch genres from LastFm, fetch music art images or create intelligent auto-updating playlists, which use regex to match songs. This allows to to create an (almost) perfect music library with minimal effort.

Here’s my config with some more plugins. You can look them up here.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
directory: /media/music/library/
library: /media/music/library.db
ui:
    color: yes
    colors:
        text_success: green
        text_warning: yellow
        text_error: red
        text_highlight: red
        text_highlight_minor: lightgray
        action_default: turquoise
        action: blue

plugins: web fetchart fromfilename lastgenre mpdstats mpdupdate duplicates missing follow lastimport smartplaylist embedart

import:
    move: yes
    copy: no

lastfm:
    user: ammannmax

mpd:
    host: localhost
    port: 6600

follow:
    auto: yes
    email: **** 
    password: ****
    userid: **** 

smartplaylist:
    relative_to: /media/music/library
    playlist_dir: /media/music/library
    playlists:
        - name: already_listened.m3u
          query: 'play_count:1..'
        - name: reggae.m3u
          query: 'genre::(Reggae|Ska)'             
        - name: rock.m3u
          query: 'genre::(Metal|Rock|Hardcore)'
        - name: other.m3u
          query: 'genre::^(?:(?!Rock|Metal|Hardcore|Reggae).)*$\r?\n?'
embedart:
    auto: yes

Do you have Questions? Send an E-Mail to max@maxammann.org