musicpd + mpc:最简易的音乐播放器(FreeBSD)
musicpd 简称为 MPD,它是音乐伺服器。此文介绍如何在 FreeBSD 下用 MPC + MPD 听音乐,打造内存消耗最少,组合功能最强的音乐播放器。
为何选用 MPD + MPC?
在/usr/ports/audio 下有很多不错的音乐播放器,如 beep-media-player、mpg123 等。而我更喜欢 mpc(需要安装MusicPD),简洁是我选择它的理由。每次开机自动打开守护程序 MusicPD(简称 mpd),这如同一个潜在的点歌器,终端下用 mpc 就能选听自己喜欢的歌曲,不需要任何界面,也不必为音乐播放器单开一个桌面。
mpc 和 conky 结合,可以做出开机音乐;mpc 和 remind 结合用音乐来提醒某些事情,譬如用《生日快乐》提醒朋友的生日等。守护程序 mpd 就像一个功能强大的点歌器,你可以轻松地选择你喜爱的歌手、专辑,毫不逊于 GUI 的音乐播放器。mpc 是简洁的,用 mpc play 40,我可以从第 40 首歌曲开始,用鼠标哪有如此快捷呢。mpc 是弹性的,开个玩笑,mpc 能播素数序列的歌曲,2,3,5,7,9,11,13,……,试问天下哪个 GUI 的播放器能做到这一点?我们还可以用 conky 在桌面上显示 mpd 的情况,显示歌曲名,显示歌手名,显示播放进程等,设计我们自己的音乐播放器,够酷吧。
MusicPD 的安装
安装一点儿都不困难,只需记住一点:在 mpd 的 port 里通过 make config,或者直接修改 Makefile,选中“Support for id3v1 tag encoding”一项,这样才能让 conky 获取 mp3 文件中的一些信息,如 artist、title 等。我们将利用 conky 把 mpd 的状态信息显示于桌面上,做一个自己喜欢的音乐播放器界面。
对 mpd.conf 的配置
以root身份运行
# cp /usr/local/share/doc/mpd/mpdconf.example /usr/local/etc/mpd.conf
编辑 mpd.conf 如下:
music_directory "/backup/multimedia" ## 此处是音乐存放处
playlist_directory "/home/IOU/.mpd/playlists" ## 此处是mpd配置文件存放处
db_file "/home/IOU/.mpd/mpd.db" ## 这些都是用户自己设定
log_file "/home/IOU/.mpd/mpd.log"
pid_file "/home/IOU/.mpd/mpd.pid"
state_file "/home/IOU/.mpd/mpdstate"
user "IOU" ## 除了root用户,能操控mpd的其他用户
filesystem_charset "UTF-8" ## “iconv -l”一下,看系统支持的编码
id3v1_encoding "GBK"
mixer_type "software"
audio_output {
type "oss"
name "Sound Card"
}
有关 filesystem_charset 的设置,也可以通过
$ locale
来搞清楚。譬如,我选 eucCN 是因为
IOU@~$ locale
LANG=zh_CN.eucCN
LC_CTYPE="zh_CN.eucCN"
LC_COLLATE="zh_CN.eucCN"
LC_TIME="zh_CN.eucCN"
LC_NUMERIC="zh_CN.eucCN"
LC_MONETARY="zh_CN.eucCN"
LC_MESSAGES="zh_CN.eucCN"
LC_ALL=zh_CN.eucCN
其他设置
在 /etc/rc.conf 中添加
musicpd_enable="YES"
以 root 身份运行
# musicpd /usr/local/etc/mpd.conf
系统将自动搜索机器上的歌曲,并将信息存放于 /home/IOU/.mpd 下。
$ mpc listall | mpc add
将所有歌曲载入播放列表。在 console 下键入
$ mpc play 10
便开始从第10首歌曲开始播放。
也可以先查看一下有哪些艺术家的作品,
$ mpc list artist
譬如,在上面命令的结果中发现了“许巍”,而你现在想听他的歌。
$ mpc search artist 许巍 | mpc add
$ mpc play
就开始了我们的音乐之旅。
mpc 提供的搜索内容相当丰富,有
<any|Artist|Album|AlbumArtist|Title|Track|Name|Genre|Date|Composer|Performer
|Comment|Disc|MUSICBRAINZ_ARTISTID|MUSICBRAINZ_ALBUMID|MUSICBRAINZ_ALBUMARTISTID|MUSICBRAINZ_TRACKID>
有关mpc的命令行的细节,譬如搜索啦,音量啦,man mpc自己慢慢看吧。
原文链接:http://wiki.freebsdchina.org/software/m/mpd