"Music Player Daemon (MPD) is a flexible, powerful, server-side
application for playing music." .
mpdmacs is a lightweight MPD client for Emacs.
See also mpdel , as well as
the mpc package which ships with Emacs beginning with version 23.2.
mpdmacs requires elmpd , a
lightweight asynchronous library for building MPD clients. My goal
is to have Emacs never freeze or pause while running this package.
Communications Model:
mpd encourages "throwaway" connections; i.e. a pattern in which a
connection to the server is made, one or a few commands are issued,
and the connection then closed down (the default server-side
timeout is 60 seconds).
The one exception is the "idle" command, which clients can use
to receive notifications of server-side changes. When a client
issues the "idle" command, server-side timeouts are disabled.
mpdmacs uses a single `elmpd-connection' (which itself uses a
socket over which it will talk to MPD along with a callback for
servicing server-side changes). The connection will immediately be
put into "idle" mode. Commands issued through this package will
cause a "noidle" command to be issued on that connection before the
commands are issued; after the commands complete, the connection
will again be placed into "idle" mode.