Qball's Weblog

GMPC Usability leap

Tags gmpc 

One of the biggest problem for potential GMPC users is setting MPD.
People often experience the following problems:

  1. Once it installed via repository. It often runs by default as a system service. Unable to access the user music files.
  2. They have to change the user it runs as, then change permission on directories (where mpd stores db/pid file) to reflect this.
    Most users bail out during this step.
  3. Audio fails to work because of pulseaudio daemon. Solving this in a nice way (not breaking audio playback for the user) can be non-trivial.
  4. Or they have to disable it as service (most users have no clue on how todo this) configure it to run as user service.
  5. Etc.

You can say that MPD might not be the right player for users that are unable to perform these steps. But a lot of users will miss out on a great music player. (Really MPD will playback just about anything, gap-less and with very low resource usage.).

To partially solve this problem I introduce AutoMPD, this is a module build into GMPC (git version) that will setup, start and stop MPD for you. No more hassle, start GMPC, switch to AutoMPD profile and you should have a working MPD.

It is not yet complete, but so far it seems to be working fine (atleast for me).

How to use it.

  1. GMPC from git. (26 august or later)
  2. MPD installed.

If you start MPD you should see a new profile (Music->profiles) named “Auto MPD”.

Now you can play your music in ~/Music/. You can change this location in Preferences->connection. (for now you need to restart MPD in the “Automatic MPD” preferences page to make this active.)

After this everything should work.

By default MPD is configured to have an pulse output, if you want an alsa output, disable the pulse output and enable the alsa output in the “Automatic MPD” preferences page. (press restart again to make it active).

More error messages. Explain the user how to solve errors.
Let the advanced user more finegrain configure MPD.

Automated MPD preferences page: