对我来说,MCEBuddy 的核心用途是与 Plex Media Server 配合使用。我认为有一个 API 可以更新媒体库——有没有可能把它集成进来?
我没有发现比每日同步更频繁地更新 Plex Media Server 有什么必要。如果你是为了稍后观看而录制,我不太明白在 Plex 中近乎实时观看的用例,因为你完全可以直接观看原始广播录制,对吧?
在什么场景下你需要让 Plex 媒体库元数据立即与 MCEBuddy 同步?
這是因為自 1.18.5.x 版本起,廣告跳過工作流程就失效了。
從該版本開始,即使 EDL 檔案已經產生,廣告也不會被剪掉。目前的解決方法是停用後處理腳本,讓 MCEBuddy 監控 .TS 檔案的存放位置,然後根據需要執行轉換任務(是否剪掉廣告取決於錄製內容的來源)。
問題在於,.ts 檔案會在過程中被轉換為 .mkv——唯一能讓 Plex 重新辨識新檔案的方法是重新掃描。我已經將掃描頻率設定為每 15 分鐘一次,但如果能將這個步驟設為 MCEBuddy 轉換的最後一步,會更加理想。
如果您只是要触发 PMS 的重新扫描,您是否尝试过创建一个 PostCustomCommand,使用 curl 命令,并将您的 PMS 的 URL + 令牌 + 媒体库 ID 作为参数传递?
在 Windows 10 中可以这样写:
PostCustomCommandPath=C:\\Windows\\System32\\curl.exe
PostCustomCommandParameters=http://[PMS_IP_ADDRESS]:32400/library/sections/[your_library_id]/refresh?X-Plex-Token=[YourTokenGoesHere]
PostCustomCommandHangPeriod=30
PostCustomCommandCritical=false
PostCustomCommandUISession=false
PostCustomCommandShowWindow=false
PostCustomCommandExitCodeCheck=false
@Goose,我沒想過 MCEBuddy 的後處理部分。我只要在設定檔最後加上 postcustomcommand 就可以了嗎?
謝謝!Will。
效果太好了——做起来出奇地简单,而且运行得非常漂亮!
@Goose,如果我想加个延迟,能不能指向 cmd.exe 去调用一个批处理文件?
我没有看到你问题的回复……那些 postcustomcommand 行会被追加到哪里:
A. 在 profiles.conf 文件中,所用配置文件(例如 Plex 的 [TS Unprocessed])对应小节的末尾?还是
B. 在 mcebuddy.conf 文件中,对应转换任务(例如“My TVShow Comm. Removal”)小节的末尾?
谢谢
Dave
我除了呼叫 curl 之外沒有深入測試──我沒能讓它在批次檔裡運作,但也沒認真嘗試。
這樣可以:
[HEVC MKV]
Description=HEVC in MKV (H.265/AC3) conversion. Creates a smaller file (50% smaller than H.264) with comparable quality but very slow.
order=handbrake,ffmpeg
ffmpeg-general=-threads 0
ffmpeg-video=-ss 3 -vf yadif=0:-1:1,hqdn3d -vcodec libx265 -preset medium -x265-params crf=18 -map 0:v -sn
ffmpeg-audio=-acodec ac3 -ab 160k -map 0:a
ffmpeg-audioac3=-acodec ac3 -ab 256k -map 0:a
ffmpeg-ext=.mkv
ffmpeg-audiodelay=skip
handbrake-general=--decomb --loose-anamorphic --verbose=2
handbrake-video=--start-at duration:3 -e x265 --encoder-preset medium -q 18
handbrake-audio=-E ffac3 -R auto -B 160 -D 0 -a 1,2,3,4,5
handbrake-audioac3=-E ffac3 -R auto -B 256 -D 0 -a 1,2,3,4,5
handbrake-ext=.mkv
handbrake-audiodelay=skip
PreConversionCommercialRemover=true
PostCustomCommandPath=C:\Windows\System32\curl.exe
PostCustomCommandParameters=http://192.168.8.9:32400/library/sections/1/refresh?X-Plex-Token=<my plex token>
PostCustomCommandHangPeriod=30
PostCustomCommandCritical=false
PostCustomCommandUISession=false
PostCustomCommandShowWindow=false
PostCustomCommandExitCodeCheck=false
是的,你可以使用任何适合你的组合,这里有一个示例,展示如何让 MCEBuddy 调用 CMD,再由 CMD 调用另一个程序:
CustomCommandPath=C:\Windows\System32\cmd.exe
CustomCommandParameters=/c ""<Path to batch file or exe>" <parameters for batch or exe>"
如果没有任何参数,第二行还需要双引号吗?
有两个双引号,它们彼此独立(这并非 MCEBuddy 特有,而是 CMD 的通用规则):
- 如果批处理/exe 文件路径中包含空格,则需要内层引号。
- 第二层引号将批处理/exe 及其参数整体包裹。如果没有任何参数需要传递给批处理/exe,则无需外层引号。
/c 开关有什么作用?