先秀一下 emby 圖
文件夾準備#
!!!!!全部看完,再看最後的完整安裝範例!!!!!
!!!!!媒體庫數量少的可以選擇不部署 auto-symlink,這個只是用幾 Kb 大小的 strm 文件去代替幾十 G 的媒體文件讓 emby 掃庫的時候變快而已!並不是必須!!!!!如果你的媒體庫特別多,比如一萬部電影,那麼可以選擇部署 auto-symlink,這樣 emby 掃庫幾秒就完成了!!!!!注意!不部署 auto-symlink 的話就不需要創建 strm 文件夾,emby 媒體庫添加文件夾時選的就是 cd2 掛載後的媒體庫路徑!!!!!
準備三個文件夾和一個 alist 掛載網盤時的掛載路徑,一個 cd2 掛載網盤時的掛載路徑(不部署 auto-symlink 就是準備兩個文件夾)
1. 網盤用 cd2 掛載後,mp 的下載目錄
如:/share/Drive/115/downloads
2. 網盤用 cd2 掛載後,mp 整理後的媒體庫目錄
如:/share/Drive/115/media
3. 軟鏈接 STRM 文件夾(不部署 auto-symlink 可以跳過)
如:/share/Drive/115STRM/media
alist 和 cd2 的掛在路徑要一樣!!不然 nginx 要改成名稱替換,一樣的話就不用改。#
alist 掛載網盤時的掛載路徑
如:/115
cd2 掛載網盤時的掛載路徑
如:/115
media 文件夾下面是一级目錄和二級目錄。
/share/Drive/115/media/ 電影 / 歐美電影
/share/Drive/115STRM/media/ 電視劇 / 歐美劇
解釋:
微信發送要看的片到 mp,mp 自動擇優下載到 “1” 這個目錄,下載完成後自動刮削和轉移到 “2” 這個目錄,
轉移完成後 auto-symlink 監控到 “2” 目錄發生變化,自動生成對應 STRM 文件和複製對應元數據(nfo 和 jpg 等)到 “3” 這個文件夾。然後 emby 讀取 “3” 這個文件夾進行播放。
strm 文件的內容就是媒體對應的 “2” 地址!!!播放的時候就是調用 “2” 地址進行播放,所以沒有做 nginx 的時候 cd2 後台下載那裡會有一個 embyserver 的進程,做了 nginx 之後 cd2 後台就沒有 embyserver 進程了,就代表 emby 播放是直鏈網盤播放了,不佔用寬帶上傳了!
emby 目錄映射注意事項#
emby 需要同時映射 “2” 和 “3” 目錄!!!
並且映射 “2” 目錄時,冒號右邊必須是絕對路徑!
映射 “3” 目錄時冒號右邊可以隨意寫映射路徑。
媒體庫添加文件夾時選的是 “3” 目錄!!!!!!!!
如:
“2” 路徑:/share/Drive/115
“3” 路徑:/share/AAAA/STRRM
那麼這樣映射
- '/share/Container/Emby:/config'
- '/share/Drive/115:/share/Drive/115'
- '/share/AAAA/STRRM:/STRM'
那麼 emby 媒體庫添加文件夾的時候選的就是
如:/STRM/ 電視劇 / 歐美劇
如:
“2” 路徑:/share/Drive/115/media
“3” 路徑:/share/Drive/115STRM/media
那麼這樣映射
volumes:
- '/share/Container/Emby:/config'
- '/share/Drive:/share/Drive'
那麼 emby 媒體庫添加文件夾的時候選的就是
如:/share/Drive/115STRM/media/ 電視劇 / 歐美劇
auto-symlink 目錄映射注意事項#
(不部署 auto-symlink 可以跳過)
auto-symlink 和 “2” 目錄要一致,並且冒號右邊必須是絕對路徑!
如:
“2” 路徑:/share/Drive/115
“3” 路徑:/share/AAAA/STRRM
那麼這樣映射
volumes:
- /share/AAAA/STRRM:/share/AAAA/STRRM #strm目錄
- /share/Drive/115:/share/Drive/115:rslave #媒體庫目錄
- /share/Container/STRM/config:/app/config
如:
“2” 路徑:/share/Drive/115/media
“3” 路徑:/share/Drive/115STRM/media
那麼這樣映射就行了。
volumes:
- /share/Drive:/share/Drive:rslave #包含了strm目錄和媒體庫目錄
- /share/Container/STRM/config:/app/config
nginx 注意事項#
注意事項一:emby 用哪個端口#
如果你 nginx 的端口映射是這樣的
ports:
- 8099:80
那麼 emby 訪問 8099 才可以直鏈!!!也就是原來的 emby 地址是 10.10.10.10:8096,要訪問 10.10.10.10:8099 才行,反代的話就是反代 8099 這個端口。8099 端口可以隨意改。
注意事項二:修改constant.js文件#
要修改的有第 4,7,9,11,12,17 行。
必改項
第 4 行:填 emby 內網地址,emby 需要 host 模式!!!
第 7 行:劃重點,填完其他的再講。
第 9 行:emby 的 apikey,在
設置-api密鑰
裡面,沒有就新建一個,有就直接用。第 11 行:alist 的域名
第 12 行:alist 的端口
第 17 行:alist 的 token,在
後台-設置-其他-令牌
裡面選填項
第 21 行:說是選填項,但是建議也寫上!!
第 25 行:第 25 行和第 7 行效果一樣,選一個填!!不要兩個都寫!!
教你填第 7 行和第 25 行
我們在第一步文件夾準備的時候已經得到了 5 個路徑,分別是
1. 網盤用 cd2 掛載後,mp 的下載目錄
如:/share/Drive/115/downloads2. 網盤用 cd2 掛載後,mp 整理後的媒體庫目錄
如:/share/Drive/115/media3. 軟鏈接 STRM 文件夾
如:/share/Drive/115STRM/mediaalist 掛載網盤時的掛載路徑
如:/115cd2 掛載網盤時的掛載路徑
如:/115此時
alist 的媒體路徑是:/115/media/ 電影 / 歐美電影 / 蜘蛛俠 / 蜘蛛俠.mkv
emby 的媒體路徑是:/share/Drive/115/media/ 電影 / 歐美電影 / 蜘蛛俠 / 蜘蛛俠.mkv
可以看出,
/115
之後的路徑都一模一樣。也就是 emby 的媒體路徑多出了一個
/share/Drive
:
/115/media/電影/歐美電影/蜘蛛俠/蜘蛛俠.mkv
/share/Drive
/115/media/電影/歐美電影/蜘蛛俠/蜘蛛俠.mkv
此時第 7 行方括號內應該填:
"/share/Drive"
(帶雙引號)
如果你 alist 和 cd2 網盤映射路徑不一致。那麼就填第 25 行
alist 掛載網盤時的掛載路徑
如:/115alistcd2 掛載網盤時的掛載路徑
如:/115cd2此時
alist 的媒體路徑是:/115alist/media/ 電影 / 歐美電影 / 蜘蛛俠 / 蜘蛛俠.mkv
emby 的媒體路徑是:/share/Drive/115cd2/media/ 電影 / 歐美電影 / 蜘蛛俠 / 蜘蛛俠.mkv
可以看出,
/media
之後的路徑都一模一樣。也就是兩個路徑開頭一個是
/115alist
,一個是/share/Drive/115cd2
/115alist
/media/電影/歐美電影/蜘蛛俠/蜘蛛俠.mkv
/share/Drive/115cd2
/media/電影/歐美電影/蜘蛛俠/蜘蛛俠.mkv
此時第 25 行方括號內應該填:
"/share/Drive/115cd2", "/115alist"
(帶雙引號,前面填 emby 路徑頭,後面填 alist 路徑頭)
這個時候打開 10.10.10.10端口就可以直鏈網盤播放了。
檢查是否直鏈#
檢查方式一:#
使用各類客戶端,如 Emby 官方客戶端、Infuse、Fileball、Vidhub 等登錄 nginx 端口(如 8099),找一個刮削好的片子播放,或者 web 跳轉第三方播放器 potplayer、iina 等。
查看 CD2 的下載任務。如果沒有大流量的對應文件下載,進程為 /system/EmbyServer
,即 302 轉發成功。
檢查方式二:#
使用各類客戶端,如 Emby 官方客戶端、Infuse、Fileball、Vidhub 等登錄 nginx 端口(如 8099),找一個刮削好的片子播放,或者 web 跳轉第三方播放器 potplayer、iina 等。
查看 nginx 日誌。如果出現以下直鏈地址,表示直鏈成功,並且此時流量不經過部署emby的
伺服器。就不佔用 VPS 或者家寬的上傳了。
排錯:#
1:如果能播放,還有 embyserver 進程,那麼你使用的是 emby 的端口,所以才能釋放,請使用 nginx 端口登錄 emby 釋放測試。
2:如果用 nginx 端口且不能播放,那只能是路徑錯了,檢查 nginx 配置文件和 emby,alist,cd2 的映射路徑!!!
完整安裝範例#
!!!!!媒體庫數量少的可以選擇不部署 auto-symlink,這個只是用幾 Kb 大小的 strm 文件去代替幾十 G 的媒體文件讓 emby 掃庫的時候變快而已!並不是必須!!!!!如果你的媒體庫特別多,比如一萬部電影,那麼可以選擇部署 auto-symlink,這樣 emby 掃庫幾秒就完成了!!!!!
本安裝範例有部署 auto-symlink
本安裝範例的前提是媒體庫內已經有部分影視,並且已經做好刮削
文件夾準備#
三個文件夾和一個 alist 掛載網盤時的掛載路徑,一個 cd2 掛載網盤時的掛載路徑
1. 網盤用 cd2 掛載後,mp 的下載目錄
如:/share/Drive/115/downloads
2. 網盤用 cd2 掛載後,mp 整理後的媒體庫目錄
如:/share/Drive/115/media
1,2 路徑在 cd2 掛載的時候完成
3. 軟鏈接 STRM 文件夾
如:/share/Drive/115STRM/media
alist 和 cd2 的掛在路徑要一樣!!不然 nginx 要改成名稱替換,一樣的話就不用改。#
alist 掛載網盤時的掛載路徑
如:/115
cd2 掛載網盤時的掛載路徑
如:/115
部署 auto-symlink#
version: "3.8"
services:
auto_symlink:
container_name: auto_symlink
environment:
- TZ=Asia/Shanghai
volumes:
#- /share/Drive:/share/Drive #strm目錄
- /share/Drive:/share/Drive:rslave #媒體庫目錄
- /share/Container/STRM/config:/app/config
ports:
- 8095:8095
user: 0:0
logging:
options:
max-size: 10m
max-file: 3
restart: unless-stopped
image: shenxianmq/auto_symlink:latest
networks: {}
# 放這個只是為了讓你理解我文件夾為什麼這麼掛載。。。。。
# 1.網盤用cd2掛載後,mp的下載目錄 如:/share/Drive/115/downloads
# 2.網盤用cd2掛載後,mp整理後的媒體庫目錄 如:/share/Drive/115/media
# 3.軟鏈接STRM文件夾(不部署auto-symlink可以跳過) 如:/share/Drive/115STRM/media
# alist掛載網盤時的掛載路徑 如:/115
# cd2掛載網盤時的掛載路徑 如:/115
瀏覽器打開,輸入用戶名admin
, 密碼password
登錄。
添加同步#
任務名稱:隨便
媒體目錄:改成你自己的,如果你文件夾準備的時候就和我一模一樣這裡就跟我一模一樣。
本地目錄:改成你自己的,如果你文件夾準備的時候就和我一模一樣這裡就跟我一模一樣。
元數據模式:本地模式
軟鏈接模式:strm
strm 模式:local
其他選項和我一模一樣。
全局設置#
手動同步#
手動同步一次之後,mp 整理媒體入庫後都會自動監控媒體文件夾,發現媒體文件夾有更改就會創建或者刪除 strm 文件和元數據。
點擊開始同步之後,點擊查看日誌,就會輸出創建 strm 文件和複製 nfo 和 jpg 的日誌了。此時 strm 文件夾裡面就有 strm 文件 emby 就能讀取了。
部署 emby#
version: '3.8'
services:
linuxserver:
container_name: Emby
network_mode: host
environment:
- PUID=0
- PGID=0
- TZ=Asia/Shanghai
#- NO_PROXY=172.17.0.1,127.0.0.1,localhost 這4條是給emby走代理
#- HTTP_PROXY=http://10.10.10.1:7890 這樣刷新媒體元數據時
#- HTTPS_PROXY=http://10.10.10.1:7890 才會下載演員圖片,合集圖片到metadata目錄
#- ALL_PROXY=http://10.10.10.1:7890 如果本身nas就走代理,那麼可以不配置這四條
volumes:
- '/share/Container/Emby:/config'
- '/share/Drive:/share/Drive'
devices:
- '/dev/dri:/dev/dri'
restart: unless-stopped
image: 'lscr.io/linuxserver/emby:beta'
# 放這個只是為了讓你理解我文件夾為什麼這麼掛載。。。。。
# 1.網盤用cd2掛載後,mp的下載目錄 如:/share/Drive/115/downloads
# 2.網盤用cd2掛載後,mp整理後的媒體庫目錄 如:/share/Drive/115/media
# 3.軟鏈接STRM文件夾(不部署auto-symlink可以跳過) 如:/share/Drive/115STRM/media
# alist掛載網盤時的掛載路徑 如:/115
# cd2掛載網盤時的掛載路徑 如:/115
添加媒體庫文件夾#
添加媒體庫,選擇 strm 文件夾,(不部署 auto-symlink,就選擇 cd2 掛載 115 網盤的目錄)
媒體庫設置#
只打開啟用實時監控,和元數據讀取器,其他所有關於元數據下載器的選項都不打勾!元數保存儲方式一定不可以勾選。
好了之後保存,emby 應該幾秒就掃庫完成了。
因為我們 auto-symlink 的時候設置了同步軟連接和元數據,所以 strm 文件夾下會有一個strm文件
代替媒體文件,和nfo
文件,和jpg
圖片。所以 emby 掃庫完成時有海報,有簡介。但是沒有演員圖片(只要你是第一次安裝 emby,emby 的 config 文件夾下沒有 metadata 文件夾,就不可能有演員圖片)。這時再重新設置媒體庫設置。
重新設置 媒體庫設置#
把所有關於元數據下載器
和圖像獲取器
的選項都選擇TheMoveDb
其他都不勾選!!!!!
設置好後,點擊刷新媒體元數據,直接覆蓋全部元數據(不會覆蓋掉 nfo 文件,因為我們元數保存儲方式沒有勾選。)替換所有圖像不勾選,點擊刷新。等待刷新好後再打開一部影片,就可以看到演員圖片了。
隨便點擊一部電影電視劇,往下拉到底,可以看到STRM字樣
和STRM文件內容
。此時 emby 部署完成。下一步進行劫持 emby 播放地址到 alist 網盤真實播放地址進行直鏈網盤播放。
部署 nginx#
version: '3'
services:
nginx:
image: registry.cn-shenzhen.aliyuncs.com/hicane/emby-nginx:latest
container_name: nginx
network_mode: bridge
ports:
- 8099:80 #emby訪問8099才可以直鏈!!!也就是原來的emby地址是10.10.10.10:8096,要訪問10.10.10.10:8099才行,反代的話就是反代8099這個端口。端口可以隨意改。
volumes:
- /share/Container/nginx/constant.js:/etc/nginx/conf.d/constant.js
restart: unless-stopped
設置 emby 端口#
如上所示,我映射 8099,所以 emby 訪問 8099 才可以直鏈!!!也就是原來的 emby 地址是 10.10.10.10:8096,要訪問 10.10.10.10:8099 才行,反代的話就是反代 8099 這個端口。端口可以隨意改。
修改constant.js文件#
怎麼修改看上文 ——注意事項二:修改 constant.js 文件
全部部署完畢#
現在可以打開各類客戶端,如 Emby 官方客戶端、Infuse、Fileball、Vidhub 等登錄nasip:nginx端口
或者反代地址進行播放測試了。
怎麼測試是否直鏈看上文 ——檢查是否直鏈
常見問題#
emby 掛載路徑怎麼設置?
映射絕對路徑,然後對比 emby 裡面的媒體信息裡的路徑和 alist 的路徑,去 nginx 的配置文件裡面進行修改。
如果安裝了 auto-symlink 的還要再映射一個 strm 路徑。
emby 的端口用哪個?
用 nginx 的。用 emby 的是不可能直鏈網盤播放的哈。
emby 的網絡模式可以改成橋接嗎?
不可以,只能 host,至少我測試是這樣。。
nginx 配置文件裡面的 alist 地址可以填寫內網地址嗎?
我試過了,外網沒法播放。所以建議填 alist 的外網地址。
auto-symlink 日誌每天 2:30 全量同步的時候一直覆蓋 nfo 文件,是什麼問題?
emby 媒體庫設置的時候元數保存儲方式勾選了,不勾選這個就行了。
怎麼判斷 emby 播放是不是直鏈網盤?
最簡單的辦法,用 nginx 端口播放一個視頻,coulddrive2 後台進程下在那裡,沒有 embyserver 進程就是直鏈了。
STRM 文件夾可以隨意設置嗎?
可以,隨便改。
auto-symlink 可以實時監控嗎,就是媒體入庫後自動創建 strm 和複製元數據?
可以,但是有條件,1、coulddrive2 開會員。2、只能在本地或者 coulddrive2 裡面移動複製。moviepilot 入庫可以實時監控。
我可以用 emby 刮削,auto-symlink 只創建 strm 文件嗎?
可以,添加同步的時候最後一個選項 同步後綴名-元數據後綴 隨便寫一個不存在的後綴名就可以了,因為不能全刪掉,比如.哈哈刪不掉我
(注意:要帶一個點 “.”)然後 emby 媒體庫設置把元數保存儲方式勾上就行了。
我可以改成其他網盤,直鏈其他網盤播放嗎?
可以,只要/115
改成網盤名字,其他一樣就行了。
auto-symlink 實時監控不生效是怎麼回事?
需要全量同步後才可以生效,至少我測試是這樣。。然後它有緩衝期,也就是同步了一部或者幾部之後會休息兩三分鐘再同步下一部電影電視劇。。