Ampache 是一个​基于网络的音频/视频流应用程序和文件管理器。它最初是为了利用 Apache 的 Mod_mp3 而编写的,后来增加了流式传输方法,可以支持你从任何平台的网络设备访问自己的视频和音乐。

和 Plex 相比,这款程序全部功能都是免费开源的,并且支持包括 Plex 在内的多种客户端 API 和网络传输协议。

项目网址:https://github.com/ampache/ampache



服务端搭建

要求

  • web 服务程序,下列之一

    • Apache
    • lighttpd
    • nginx
    • IIS
  • PHP 5.6 或者更高版本
  • PHP 模块:

    • PDO
    • PDO_MYSQL
    • hash
    • session
    • json
    • simplexml (可选)
    • curl (可选)
    • 对于 FreeBSD 系统必须加载一下模块:

      • php-xml
      • php-dom
  • MySQL 5.x

本文的演示环境:

  • lnmp 1.5
  • vps

    • Debian 7
    • 1 CPU
    • 512 MB 内存
    • 20G 硬盘

linux 服务器上推荐使用 lnmp 安装环境。如果只是用来做音乐服务器,对 vps 的配置要求不高,因为音乐文件的体积也不大,码率要求也低。


下载

安装完 lnmp ,然后创建网站目录

lnmp vhost list

下载程序,注意不要 git clone ,要从 Release 下载最新版本完整程序安装包。

cd /home/wwwroot/test.nas.ink/
wget https://github.com/ampache/ampache/releases/download/3.9.0/ampache-3.9.0_all.zip
unzip ampache-3.9.0_all.zip

修改 config 目录权限,确保安装时配置文件可写入。

chmod 777 -R config/

安装

选择语言

访问你配置的网站域名,如果没出错,会出现这个安装页面。

image

Ampache 支持包括中文在内的多种语言。

环境检测

PHP 整型大小一项会有警告,但貌似影响可以忽略不计。如果其他项没问题,点击继续。

image

数据库配置

填写端口和密码,然后点击插入数据库。

image

生成配置文件

如果程序安装包解压在网站根目录,web 路径留空,不用填。

填写 MySQL 用户名和密码

image

其他设置都保存默认即可,除非你清楚选项的作用。

image

点击查看文件栏,然后点击第一行配置文件后面的写。如果提示写入错误,请检查 config 目录权限。

配置管理员用户名和密码

image

检查更新

image

目前是最新版,无需更新。

image

安装完成

现在已经安装成功,返回网站首页即可使用了。
image


使用说明

创建目录

目录就是服务器上存储音乐文件的路径,设置目录后 Ampache 可以扫描路径下的音乐文件,将歌曲信息添加到程序的曲库里。

首先在服务器上创建一个目录,用于存放音乐文件。

mkdir /home/wwwroot/test.nas.ink/music

使用 ftp 上传文件到目录。因为 linux 系统没装中文语言,上传后文件名会乱码,所以我都是把文件压缩后上传,再解压。

image

登录 ampache 后台,第一次进入会提示创建目录。

image

或者点左侧管理员图标,也可添加目录。

目录名称随意填写,目录类型选 local 。文件名样式按照你上传的音乐文件样式修改,需和你上传的音乐文件名样式对应,右边有参数说明。目录样式按实际情况修改。路径填写你之前创建的目录,注意是绝对路径。然后点击添加目录。

image

扫描目录

第一次添加目录会自动扫描一次,以后上传了新歌可以在目录列表里手动扫描。

image

扫描完以后,在歌曲标题里面,点击播放按钮可通过网页播放歌曲。

流式播放

ampache 的网页播放十分简陋,并且不知什么原因 flac 格式无法播放。ampache 能够覆盖全平台的方式是网络串流。

点击网页右侧的播放方式选项,默认选项:网络播放器,即通过网页播放。现在改成 流。

image

然后再点击歌曲的播放按钮,就不会再网页播放,而是会提示下载一个 m3u 文件。接触过直播源或者在线视频抓取的同学应该知道 m3u8 这种文件,m3u 是一种 Windows-1252格式纯文本文件,可以指定一个或多个多媒体文件的位置,而 M3U8 就是 UTF-8 编码的 M3U。

下载后,即可使用本地支持 m3u 的播放器打开。列如 VLC、foobar2000。

foobar2000 打开,需要播放过一次才会显示歌曲名等信息,不知道是不是我的版本有问题。所以还是建议用 VLC 播放,VLC 在几乎所有平台是都有对应安装包。

播放列表

如果想把全部歌曲生成 m3u 添加到本地播放器曲库,可以通过创建智能播放列表的方式,将全部歌曲生成一个 m3u 文件。

image

不用添加任何规则,点击创建就是把所以歌曲保存成列表。

image

然后点播放按钮下载 m3u 文件。

image

把 m3u 文件拖入 VLC 的媒体库,点击展开列表。

key 的有效期

程序默认设置 key 的有效期是 7 个小时,也就是添加到本地播放器媒体库的歌曲 7 个小时后会无法播放。

在管理员,System,将 分享链接的默认有效期改成 0 ,本地的 m3u 歌曲列表就不会失效了。

image

如果再要使其失效,可以手动刷新 API key

image

image


结语

Ampache 还有很多功能我没搞清楚怎么用,目前唯一知道的是采用流媒体方式播放,MPDroid 没搞明白怎么配置。在安卓上有个应用叫 Power Ampache ,可以访问 Ampache 服务器,但是使用体验十分差。Plex 做的不错,但移动端是收费的。找了一圈发现还是 VLC 最强大。