跳到主要内容

家庭影音系统

版权,一个让人又爱又恨的东西。

好的一面是它可以带给创作者更多的收入,受众也有机会欣赏更优质的作品。

坏的一面是各个平台无法拥有所有版权,导致消费者疲于在各个平台寻找自己想看的作品,并开通会员,体验十分割裂。

缘由

娱乐就是为了放松,本不该再承受这些糟心事。所以去年购入了一台群晖,充当自己的影音资源管理中心。

经过近一年的使用,我觉得群晖身为家用 NAS 品类的老大哥,一点毛病都没有,基本上所有在家用 NAS 上可以实现的功能都可以以较为简单的方式安装使用。

但也不是完全没有问题,群晖官方的 Audio Station 各方面做得都不错,功能也绝对够用。但QuickConnect带宽实在感人,我大部分时候是在路上听歌,一首 10M 或 20M 的歌曲它能加载几十秒后才发出声音,播放时也会时断时续。

备注

QuickConnect是群晖官方提供的内网穿透服务,对购买正版群晖的用户永久免费,考虑到服务器成本,带宽并不太高。

这样的卡顿,是我所不能忍受的,但当时也确实找不到更好的方案了,于是时隔半年之后我又回到了网易云音乐和 QQ 音乐的怀抱……

在外看视频毕竟不是刚需,所以QuickConnect的带宽问题并不算太大的问题。但困扰我的是 Video Station 支持的编码格式太少了,想象一下你满怀欣喜地点开一个视频,结果发现看不了时,你会有多失望?

众所周知,我是个懒到极致的人。如果不是失望的次数太多了,又怎么会轻易改变呢?

视频管理系统

对我来说可选的第三方视频管理服务并不多,免费的只有Jellyfin可用。

添加矿神套件源

在群晖的套件中心中依次选中 社群 - 设置 - 套件来源 - 新增。

在弹出的对话框的位置一栏输入https://spk7.imnks.com/保存后,即可获得第三方提供的诸多套件了。

提示

我不是矿神这个网站中,还有很多 NAS 的教程和资源,十分推荐收藏。

安装 Jellyfin

在社群套件中找到Jellyfin 媒体服务器,点击安装。

警告

此处有两个版本,需根据自己的机器情况(是否有独显)进行安装。

安装完成后等大概十几秒钟,打开群晖内网 IP:8096,注册一个管理员账号后登录。

第一次注册时可以先跳过媒体库的设置,还有就是首选元数据语言这里,我想找China却怎么也找不到,最后发现原来是People's Republic of China

设置远程访问的两个选项都要打勾。

添加媒体库

登录后首页没什么东西,需要依次点击 用户图标 - 控制台 - 媒体库 来添加媒体资源。

到这一步时先不要着急添加媒体库

通过群晖套件中心安装的Jellyfin会有一个系统内置用户,默认是禁止访问共享文件夹的。需要在 控制面板 - 共享文件夹 中,选中要改变访问权限的文件夹,点击编辑,在权限页,切换到系统内部用户账号,并把Jellyfin的可读写权限勾选即可。

信息

如果这样配置后,在Jellyfin中还是无法找到共享文件夹下的文件,则需要在 控制面板 - 用户与群组 - 用户群组 下,找到users用户,修改这里面的共享文件夹权限。

权限的问题解决之后,也不要着急去添加媒体库,需要先简单了解一下电影电视剧两大类别的视频资源,标准的文件结构是怎样的。

这样做了之后,Jellyfin才能更容易识别出资源的信息,并从网络中搜刮相关图片和分集简介出来。所以,虽然有些麻烦,但可以让之后的选片、观影体验更好,还是值得多花一些时间的。

电影目录结构

Movies
├── Film (1990).mp4
├── Film (1994).mp4
├── Film (2008)
│   └── Film.mkv
└── Film (2010)
├── Film-cd1.avi
└── Film-cd2.avi

上面是官方提供的目录结构示例,可以直接存放以电影名 + 年份命名的文件,也可以将电影文件放在以电影名 + 年份命名的文件夹中。因为Jellyfin在搜刮到电影信息后,会在相同目录生成电影名.nfo文件,如果所有电影文件都直接放在同一级目录下,会显得有些乱,因此推荐统一为每一部电影创建一个文件夹。

电视剧目录结构

Shows
├── Series (2010)
│ ├── Season 00
│ │ ├── Some Special.mkv
│ │ ├── Episode S00E01.mkv
│ │ └── Episode S00E02.mkv
│ ├── Season 01
│ │ ├── Episode S01E01-E02.mkv
│ │ ├── Episode S01E03.mkv
│ │ └── Episode S01E04.mkv
│ └── Season 02
│ ├── Episode S02E01.mkv
│ └── Episode S02E02.mkv
└── Series (2018)
├── Episode S01E01.mkv
├── Episode S01E02.mkv
├── Episode S02E01-E02.mkv
└── Episode S02E03.mkv

官方提供的目录结构示例中,一级目录是以节目名 + 年份命名的,二级目录则划分不同季节,子目录下才是具体的视频文件。视频文件的命名可以不用像示例那样标准,直接以 01.mp4、02.mp4、03.mp4 命名也是可以识别的。

较为特殊的是国内某些综艺节目,会有会员特供版、悠享版之类的额外内容,可以把这些当作花絮,统一放在Season 01/extras目录中。

按以上方式整理完视频资料库后,就可以进入到添加媒体库环节了。

内容类型选择电影,首选下载语言国家/地区留空即可,因为之前已经在用户设置中配置过了,无需重复配置。

点击加号配置要扫描的文件夹。

如果已经有完整的路径可以直接输入后点击确定,否则先输入/volume1后点击放大镜图标,会在下面列出子目录,然后一步步往下选择就可以了。

最后一点就是在媒体资料存储方式中要勾选 Nfo。

点击确定后,等待媒体库扫描完成,回到首页,便得到了这样精美的界面。

安装客户端

经过上面的折腾,我们得到了一个手机电脑均可访问的网站,正常来说也够用了。

但具体使用后就会发现,浏览器的播放器支持的编码格式较少,播放大部分视频时都需要在服务端转码后才能把数据传输过来。

但我的群晖是低配版的,没有独立显卡,就没办法调用硬件解码。遇到比较大的视频文件,软件解码速度极慢,CPU 使用率也飙到最高,依然非常卡顿,导致完全无法正常观影。

备注

在这里我走了不少弯路,我首先想到的是既然格式不支持,那我就先把视频转成浏览器支持的格式再保存不就好了吗?结果发现转换一个视频格式至少需要五六分钟,得到的文件还比原来的大 150%,画面质量说不定也下降了,这怎么能忍?

Jellyfin官网去找客户端,发现 iOS 系统下只有两个选择:Jellyfin 官方版本和成名已久的Infuse

两个客户端我都安装了,Jellyfin官方版本质上是网页套壳,最后还是浏览器在播放视频,依旧无法解决卡顿的问题。

Infuse是收费软件,作为消费者,我很讨厌订阅制的软件,因此在闲鱼上花八块钱买了个 Infuse Pro 7 终身版的,iPhone 和 Mac 上都装上了,如果有 Apple TV,我甚至还能再装一个!

不得不说,这软件是真牛,一下子就解决了刚刚遇到的痛点。不管多大的视频,因为传输的是原始数据,由客户端本身进行解码工作,所以即点即开,非常爽。

备注

如果我能买到正版终身制的软件,我一定不在闲鱼上买。

提示

2023-01-01 更新:官方最新的手机客户端应该已经支持在客户端转码了,可以把服务端和客户端都更新到最新版尝试一下。

音乐管理系统

也没什么更多选择,就安装Navidrome吧。

安装 Navidrome

和之前安装Jellyfin一样,在套件中心的社群选项卡中就可以找到并一键安装。

共享文件夹的权限配置也是一样的步骤,在此不多赘述。

只是扫描路径是在哪里配置的我给忘了,好像默认就是/music?还是说在创建管理员用户时配置的?

备注

iOS 的客户端选择不多,就直接下载substreamer用吧,尽管没歌词显示,但还是能凑合着用的,主要是界面比起其他同类的好看太多了。

音乐资源搜集

音乐资源不像视频资源那么好找,版权保护力度更强,所以更需要下一番功夫。

除了从网上直接搜索资源外,还可以在淘宝店铺中购买某个歌手的音乐合集,也不贵,就是得开个百度网盘的会员去下载下来。

除此之外,我最近在用的方法就是给音乐平台充会员,这样可以下载到大部分歌曲。里面有很多是受版权保护的加密文件,需要通过音乐解锁这个网站转换为原始资源。

警告
  1. 最新版本的 QQ 音乐客户端下载的音乐文件已经无法通过此网站解密,解决办法是下载老版本的 QQ 音乐客户端,最好是 22 年 6 月之前的版本。
  2. 截止 23 年 1 月,音乐解锁这个网站对应的开源项目在Github上已经被查封,网站我还能访问,不知道是不是本地缓存的问题。如果网站确实还能访问,建议利用其 PWA 的特性,将其保存起来,谁知道它什么时候就也凉了呢?

内网穿透服务

经过以上折腾,我得到了一个非常好用的视频管理系统和稍差一点的音乐管理系统,相比之前的体验提升其实并没有那么大。

那我为什么要费劲周折重新搞一套影音管理系统呢?就是因为最近发现了一款性价比极高的内网穿透服务——浮居内网穿透

每月最低 10 块钱,就能拥有不限带宽无限流量的内网穿透。我自己花 10 块钱测试了一下,确实比我自己在阿里云上搭的内网穿透服务网速快太多了,网速能有多快,真的就取决于家庭网络的最大上传速度了。

服务搭建

账号注册完成后,点击创建隧道,选择一个免费的服务器先试试能不能正常使用。

警告

请参照官网最新说明进行配置,以下配置实测已不能正常穿透,原因是国内节点禁止穿透 HTTP 服务。

以刚刚搭建的Jellyfin服务为例,隧道类型选择 TCP 隧道,本地端口填 8096,远程端口则需要不断尝试,填写一个未被他人占用的端口号,隧道名称随便填一下,其他不用动,点击完成创建

复制配置文件的内容:

浮居提供了一个 docker 镜像,在注册表搜索fujufrp就能找到。

下载此镜像并启动,网络选择使用与宿主机相同的网络,在环境变量的 FUJUFRP 中粘贴刚刚复制的配置文件内容。

之后通过内网穿透服务器的域名 + 远程端口号就可以访问到自己的Jellyfin服务了。

爽起来

假设上面的步骤完成后可以正常进行内网映射,就可以考虑付费购买服务了。

首先在测速网测试家里的宽带上传速度,超过 5M 感觉就可以正常观看视频了。

带宽也没问题,就可以去淘宝店铺购买激活码,然后使用了。

激活之后还要重新在 VIP 节点下创建新的隧道,然后把新的配置文件复制一下,把原来的浮居 docker 容器停掉,修改配置后再启动,就可以愉快地通过公网看视频听音乐了。

总结

折腾到最后,虽然这套影音管理系统依旧有不好用的地方,依旧每月要花钱,但我不用在各个平台间来回横跳了,不用忍受开了会员依旧存在的广告了,还拥有了对影音资源的绝对掌控,只要我把它保存下来了,就不用担心哪一天某个作品因为什么奇怪的原因被封杀,而再也看不到了。

所以,我觉得这次的折腾还是很成功且值得的!