kurrunk

不停转圈的人

文章关键字 ‘Ario’

在linux中用MPD听音乐

MPD是什么?

MPD (Music Player Daemon) 是一个C/S结构的音乐播放器。MPD 作为一个守护程序运行于后台, 管理播放列表和音乐数据库, 占用很少的资源。为了交互管理,你还需要一个单独的客户端

MPD的配置

软件的安装在各linux发行版中大同小异,用apt、pacman等能很轻松安装。

MPD的配置文件是/etc/mpd.conf,如果没有就复制一个默认配置:
#cp /etc/mpd.conf.example /etc/mpd.conf

以下是我的配置文件:
music_directory "~/music"
playlist_directory "~/.mpd/playlists"
db_file "~/.mpd/mpd.db"
log_file "~/.mpd/mpd.log"
pid_file "~/.mpd/mpd.pid"
state_file "~/.mpd/mpdstate"
user "kurrunk"
#linux中你的用户名
input {
plugin "curl"
}
audio_output {
type "alsa"
name "My ALSA Device"
}
#输出方式,根据具体情况而定
id3v1_encoding "gbk"
#国内音乐文件的id3一般都是gbk,如果设置成gbk还出现乱码,那么原因可能有两二:一,id3编码非gbk;二,id3是v2版,v2在MPD中支持不好,会认为是UTF8

用户主目录中并没有”.mpd”目录,需要创建:
$mkdir -p ~/.mpd/playlists

创建MPD数据库:
$mpd --create-db

启动MPD服务

启动MPD服务方式:(我实践过程中,在create-db后,MPD服务就启动了)
#/etc/rc.d/mpd start
在类debian发行版中应该是:
#/etc/init.d/mpd start

推荐设置为开机启动。archlinux中的操作方法是:编辑/etc/rc.conf文件,把”mpd”加在DAEMONS项中。

流行的MPD客户端软件

mpc
这是一个命令行MPD的客户端,没有界面,只是”$mpc command”来控制音乐的播放,不容易入手,但我想如果搭配全局快捷键使用时的效率会很高。
ncmpcncmpcpp
ncmpc是一个文本界面的mpd客户端,界面如图:
ncmpc

ncmpcpp,顾名思义,就是ncmpc的加强版,同样是文字界面,但体验比ncmpc更好一些:
multi colored playlist

我看到的不同有:

ncmpc ncmpcpp
界面 单色、文本 多色、文本
调节音量 有延迟现象 正常
语言 多语言(有中文) 英语
媒体库窗口 单一窗口 三级窗口

ncmpcpp官方还介绍了一些新特性,包括支持last.fm。

sonata

这样的界面就更接近通常看到的软件了,操作之初不需要任何查阅和学习。多语言、功能很全面。
Ario

Ario相对上面几个软件它不是一个小家伙。

gmpc
gmpc

这是一个大家伙,喜欢这个样子的可以尝试一样(我不喜欢)。

MPD特色

C/S结构是最大的特色,或许也可以说是唯一的特色。

  • 因为它的结构,使用它时必须保证服务端是运行着的,通常作法是把MPD设置为系统自启动服务,但如此一来在不播放音乐的时候依旧占用不多的系统资源。
  • 因为它的结构,使用时会略显复杂。表现为一是安装配置复杂,二是使用时略复杂(需要先保证服务端已运行)。
  • 占用资源很少,和audacious2做了个对比,CPU使用量相当,内存方面audacious2使用的更多。
  • 因为它的结构,让我想到是不是能做一个音乐服务器。这一点上,它的配置文件”user”部分看上去似乎又是单用户模式,不理解。
  • 支持格式全,包括很多播放器不支持的ape格式。

有些遗憾的地方

在音质上,在我的软件环境下把mpd、audacious2、xfmedia(xine)做了比较。audacious2音质更显饱满。