前言
jellyfin, emby的免费版、折腾版。
安装
- 安装docker和docker-compose,群晖安装完docker自带docker-compose,之后在后台
docker-compose up -d
启动即可。
1 | version: '3' |
硬解配置,之后播放视频查看cpu占用:
字幕:
hlink硬连接
如果你能接受媒体目录充斥着各种各样的nfo和jpg文件,此项不必须。官方文档
创建容器,注意源文件目录和硬连接目录作为docker映射必须在同一父目录下,nodejs应该没这限制,但是依然要在同一共享目录下。
给一个参考,注意如果有字幕文件也要把字幕文件后缀填入下方include。
不需要担心重命名之后再次运行hlink会再次生成硬连接,工具会判md5值,已经存在的文件不会重复生成:
目录结构:
hlink配置:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87// 重要说明路径地址都请填写 绝对路径!!!!
export default {
/**
* 源路径与目标路径的映射关系
* 例子:
* pathsMapping: {
* '/path/to/exampleSource': '/path/to/exampleDest',
* '/path/to/exampleSource2': '/path/to/exampleDest2'
* }
*/
pathsMapping: {
'/media/downloads':'/media/medialnk'
},
/**
* 需要包含的后缀,如果与exclude同时配置,则取两者的交集
* include 留空表示包含所有文件
*
* 后缀不够用? 高阶用法: https://hlink.likun.me/other/v2.html#%E6%96%B0%E5%A2%9E%E5%8A%9F%E8%83%BD
*/
include: [
'mp4',
'flv',
'f4v',
'webm',
'm4v',
'mov',
'cpk',
'dirac',
'3gp',
'3g2',
'rm',
'rmvb',
'wmv',
'avi',
'asf',
'mpg',
'mpeg',
'mpe',
'vob',
'mkv',
'ram',
'qt',
'fli',
'flc',
'mod',
'iso',
],
/**
* 需要排除的后缀,如果与include同时配置,则取两者的交集
*
* 后缀不够用? 高阶用法: https://hlink.likun.me/other/v2.html#%E6%96%B0%E5%A2%9E%E5%8A%9F%E8%83%BD
*/
exclude: [
],
/**
* @scope 该配置项 hlink 专用
* 是否保持原有目录结构,为false时则只保存一级目录结构
* 可选值: true/false
* 例子:
* - 源地址目录为:/a
* - 目标地址目录为: /d
* - 链接的文件地址为 /a/b/c/z/y/mv.mkv;
* 如果设置为true 生成的硬链地址为: /d/b/c/z/y/mv.mkv
* 如果设置为false 生成的硬链地址为:/d/y/mv.mkv
*/
keepDirStruct: true,
/**
* @scope 该配置项 hlink 专用
* 是否打开缓存,为true表示打开
* 可选值: true/false
* 打开后,每次硬链后会把对应文件存入缓存,就算下次删除硬链,也不会进行硬链
*/
openCache: false,
/**
* @scope 该配置项 hlink 专用
* 是否为独立文件创建同名文件夹,为true表示创建
* 可选值: true/false
*/
mkdirIfSingle: true,
/**
* @scope 该配置项为 hlink prune 命令专用
* 是否删除文件及所在目录,为false只会删除文件
* 可选值: true/false
*/
deleteDir: false,
}之后只需把medialnk目录给jellyfin和tinymediamanager即可,downloads用作原始媒体存放目录。
tinymediamanager刮削
受限于国内dns环境,TMDB的域经常会被dns污染,解决办法有修改容器host、代理(给jellyfin设置HTTTP_PROXY环境变量,记得过滤内网地址),即便如此,jellyfin自带的刮削依然会经常卡住,这里使用tinymediamanager刮削。
关于代理,由于我之前搞过一个电视盒子,装了armbian和软路由,内置了Clash,所以已经有现成的代理环境。需要代理环境的,需要使用docker装一个clash、软路由、或者同类软件。方法很多,教程也很多,不在赘述。
配置tinymediamanager代理(也可以修改host替代,可能会失效,要经常改)
刮削配置以电视剧为例,电影同理
媒体库:
nfo:
抓取器:
检索,优先第二个,名字不规范等导致刮削不出来就第一个手动指定再刮。检索完成还有缺失的可以手动补一下:
jellyfin配置:
媒体库勾选
nfo
和将媒体图像保存到媒体所在文件夹
,其他全部取消勾选,效果: