最近都没怎么写过博客了,两个月了吧,五月六月都懒了,当然也是很多事情在身压根没办法折腾什么东西,这两天听说网易云下架整改,又是扯到“二次元”,于是猜测了一下以后想听喜欢的歌都有点麻烦了,所以打算想自己搭一个音乐服务器,尽量把这些东西扔到云上面,还方便我听歌。找了很久,其他都很难搭,文档也看不懂,最后发现了Mopidy,虽然文档也是英文,但是搭建起来也很简单就是了。
准备工具
- 服务器一枚,系统为Linux(Deb核和RPM核),此处用CentOS(Fedora)做测试
- 准备一个翻译机。。。
搭建过程
调整搭建环境
把工作点设置到“root”目录(主要是方便)
cd /root关闭SELinux和防火墙,方法直接找我博客
安装所需要的东西
由于工具是基于python制作的,所以要搭建需要使用python的工具进行搭建,输入下面的命令就可以完成安装
dnf install -y gcc python-devel python-pip && dnf install -y python-gstreamer1 gstreamer1-plugins-good && pip install -U mopidy && pip install mopidy-musicbox-webclient
获取配置文件
默认配置文件位置在/root/.config/mopidy里面的mopidy.conf里面,但是我们要把它弄出来
cp /root/.config/mopidy/mopidy.conf /root接着再etc下新建一个文件夹
mkdir /etc/mopidy最后把配置文件放进这个文件夹内
mv /root/mopidy.conf /etc/mopidy
调整配置文件
调整配置文件这一步是最难的也是最重要的,修改配置文件的时候需要很有耐心。这里建议用xFtp把配置文件移动到本地修改再重新上传,当然也可以直接用vim/vi直接打开编辑。
Mopody分为两种服务器服务,一种是MPD一种是HTTP,这里做的是HTTP服务。
先贴一些重要的配置信息:
[core]
cache_dir = /data/mopidy #储存缓存数据的基础目录
config_dir = /etc/mopidy #储存配置文件的基础目录
data_dir = /data/music #数据文件的储存目录
#max_tracklist_length = 10000 #TRACK列表最大长度
#restore_state = false #状态恢复
#目录可以随意自定义,倒数两个可以不用开启
[audio]
mixer = software #音乐混淆工具,默认software就可以了
mixer_volume = 100 #音量大小
output = autoaudiosink #默认即可,这是输出音频
#buffer_time =
[http]
enabled = true #http服务是否开启
hostname = 0.0.0.0 #监听的IP地址,是用0.0.0.0即可
port = 1456 #监听的端口号,可自定义,不推荐使用80或者443
#static_dir = #静态路径,默认不开,官网文档也不推荐
zeroconf = Mopidy HTTP server on $hostname #默认即可,这个是动态配置协议,用于DHCP无法使用的时候使用
#allowed_origins =
#csrf_protection = true
[softwaremixer]
enabled = true #这个和上面的audio有关,ture就行了
[file]
enabled = true #file扩展开启,废话肯定要开啊
media_dirs = /data/music|Music #音乐文件储存位置,自定义,注意的是,这里的"|"后面是列表名,可自定义
# $XDG_MUSIC_DIR|Music
# ~/|Home
#excluded_file_extensions =
# .directory
# .html
# .jpeg
# .jpg
# .log
# .nfo
# .pdf
# .png
# .txt
# .zip
#show_dotfiles = false
#follow_symlinks = false
metadata_timeout = 1000 #超时时间,默认
#号是注释,就是这条配置信息不使用。没有提及到的可以去官方文档看看,因为我现在也是刚建好,很多东西也没搞懂,搞懂之后再补充
完成上面的之后基本就已经完成搭建了,但是这个工具的客户端也是要在服务器搭建的,所以下面还要搭建一个客户端
这里我使用的是mopidy-musicbox-webclient
上面的命令实际上已经安装好了,我们只要在配置文件插入以下就好了:
[musicbox_webclient]
enabled = true #启用
musicbox = false #默认不开启
#websocket_host = 0.0.0.0 #监听主机,这个似乎是用来连接外面的用的,本地不需要配置
#websocket_port = 1456 #监听端口,和监听主机同理
on_track_click = PLAY_ALL #开启默认
启动工作
配置完成之后可以使用mopidy --config /etc/mopidy/mopidy.conf 进行测试,没有报错基本就OK了
配置相关服务
打开命令行,输入:sudo vi /usr/lib/systemd/system/mopidy.service,插入以下内容
[Unit]
Description=mopidy
[Service]
User=root
ExecStart=/usr/bin/mopidy --config mopidy --config /etc/mopidy/mopidy.conf
Restart=on-abort
[Install]
WantedBy=multi-user.target
输出音频服务
pulseaudio --kill //pulseaudio服务关闭
pulseaudio --start //pulseaudio服务开启
正式使用
浏览器输入:http://hostname:port,选择刚刚安装的mopidy-musicbox-webclient即可使用
到了这里,所有工作基本完成了,正常来说是可以使用了,不过这个只是个简易的搭建,还有很多问题需要处理,例如这么搭建实际上是一个公开服务,也就是说谁登陆上这个都可以用,而且登陆上去之后我想停就停想开就开,不是一个私有的音乐服务。以后研究的比较透彻的时候再补充吧。
参考资料:




0 条评论