NAS玩家狂喜!这个媒体库神器可实现识别、转码、入库一条龙
哈喽小伙伴们好,我是Stark-C~
对于喜欢在NAS上折腾媒体库的“仓鼠”来说,资源的获取方式可能也是五花八门的。抛开规则较多,但比较规范的 PT 站不谈,更多用户获取到的资源可能来自网盘、网站、RSS、BT甚至LANG友分享。
而这些资源最大的共同点就是:文件名混乱、格式不统一、编码也是五花八门,如果直接把这些资源扔给NAS自己的媒体库、或者Plex、Jellyfin这类媒体服务器,往往会出现识别错误、海报抓取失败、季集信息混乱等问题。
所以很多时候,为了获得更加准确的识别效果,我们不得不手动修改文件名、整理目录结构,特别是对于收集有成百上千资源的小伙伴来说,工作量还是蛮大的。
今天就为大家分享一款新鲜出炉的媒体库神器『MediaForge』,它可以自动识别影片信息、匹配 TMDB/TVDB/OMDb数据、规范命名、整理分类,甚至还能自动将H.264转码为H.265,最后再自动归档到我们指定的媒体库中。
PS:提前说明一下,由于目前绝大多数媒体整理工具都会依赖TMDB/TVDB等这些海外影视元数据库来完成影片识别,但因为某些原因,可能很多小伙伴会遇到网络问题无法连接。所以在开始折腾今天这个项目之前,请自行搞定网络连接问题。(最简单的只需要在路由端更改host就可以了,方案请自行搜索~)
关于MediaForge

🔺MediaForge其实也算是一款自托管媒体整理工具,只不过它把原本需要多个工具协同完成的识别、命名、转码、分类、入库等工作全部整合到了一起,一条龙全搞定,大大降低了手动维护媒体库的繁琐操作。
项目Github地址:https://github.com/braydin72/MediaForge
(项目目前知道的人还不多,而且暂时还没有中文界面。如果大家觉得这个项目有用,别忘了顺手给开发者点个Star支持一下,万一哪天用户多起来了,说不定中文界面也就安排上了~)
项目特色亮点(官网主页自述):
监控指定目录中的媒体文件;
通过ffprobe检测视频编码格式,而不是靠文件名猜测;
电影优先使用 TMDB 识别,失败时使用 OMDb;电视剧优先使用 TVDB 识别,失败时再尝试 TMDB 和 OMDb;
支持通过AI大模型(Claude、OpenAI 或本地 Ollama)对匹配结果进行二次确认;
按照 Plex、Jellyfin、Emby 的命名规范自动重命名,并支持自定义命名模板;
HEVC(H.265)视频直接入库,H.264 视频则先进入转码队列;
处理完成后自动移动到媒体库,并妥善处理跨磁盘、跨设备移动问题;
不会悄悄出错,所有无法自动处理的文件都会进入审核队列,并明确告知失败原因。
MediaForge部署
1,部署前的准备

🔺首先,如果说你有转码需求,比如为了节省存储空间,将H.264编码的视频转换成H.265(HEVC),那么MediaForge是支持调用CPU、Intel核显、AMD核显、甚至是NVIDIA独显进行硬件加速转码的。
性能不错的NAS可以尝试启用CPU核显,比如说我使用的极空间Z423搭载的锐龙7 5825U核显性能就不错。那么怎么确定自己的NAS处理器是支持核显的呢?直接在SSH终端使用命令“ls /dev/dri”,如果能够看到类似我图中显示的“card0 renderD128”类似输出,就说明核显已识别,就可以在转码的时候启用核显。

🔺其次,前面说过,MediaForge是依赖TMDB/TVDB/OMDb等这些海外影视元数据库来完成影片识别的,所以需要我们在使用之前准备好对应平台的API Key。
这三大平台的API Key都是可以免费申请到的,具体的申请方法网上都有教程,并且也并不复杂,前提是你的网络能顺利连接到这三大平台的官网。
(多嘴问一句:喜欢折腾NAS的NASer搞定网络应该是基操对吧?)
2,开始部署

🔺本次部署以极空间NAS为例,打开文件管理器,在Docker目录下新建一个“mediaforge”的文件夹。

🔺然后点击极空间NAS的“Docker”应用,点击【Compose】 > 【新增项目】。

🔺在“创建项目”页面自定义项目名称,“存储位置”需要手动选择我们前面新建的“mediaforge文件夹,在下方输入框输入以下Docker Compose 配置信息:
services:
mediaforge:
image: ghcr.io/braydin72/mediaforge:latest
container_name: mediaforge
environment:
- PUID=0 # 仅代表极空间NAS,其它NAS请自查
- PGID=0 # 仅代表极空间NAS,其它NAS请自查
ports:
- "8080:8080" # 项目访问端口,冒号前面请勿与其它服务冲突
devices:
- /dev/dri:/dev/dri # GPU转码,不支持请删除这行
volumes:
- ./config:/config
- ./incoming:/incoming
- ./staging:/staging
- ./media/Movies:/media/Movies
- ./media/TV_Shows:/media/TV_Shows
restart: unless-stopped
以上代码需要修改的地方就看我给到的中文注释即可,镜像的拉取需要自行解决网络问题,粘贴到自己的NAS这边之前建议使用AI工具优化一下,以防止格式问题造成的部署失败。
说明一下:我这里主要是为了方便演示,把路径映射全部使用了相对路径。实际部署时,大家完全可以根据自己的存储规划和媒体库目录结构,修改为绝对路径使用。另外这五个路径分别代表:
config:用于存放 MediaForge 的配置文件、数据库以及运行数据。
incoming:资源监控目录,你也可以把它设置为影视资源的下载目录,MediaForge 会自动接管处理。
staging:临时工作目录,主要用于识别、转码等中间处理过程,建议这个目录设置为SSD存储池。
media/Movies:电影媒体库目录,识别完成后的电影会自动归档到这里(其实media就是咱们的媒体库目录)。
media/TV_Shows:电视剧媒体库目录,识别完成后的剧集会自动按照季、集结构整理到这里。

🔺项目部署之后可以看到容器显示运行中,就说明可以使用了。
MediaForge体验

🔺打开方式也没啥特别,直接浏览器输入【IP:端口号】,或者直接启用极空间NAS专属的“远程访问”即可。

🔺打开之后先会让我们输入TMDB/TVDB/OMDb三大平台的API Key,可以看到TMDB/TVDB是必须填写的,OMDb倒是可有可无。我这里都有,所以就全部填写了。

🔺然后是对匹配结果进行二次确认的AI大模型,它目前仅支持Claude、OpenAI 或本地 Ollama,我其实没有OpenAI ,我原本以为可以使用兼容OpenAI 的第三方,比如说我常使用的硅基流动,但貌似它不支持(我已经给作者提了Issues),但使用的时候貌似也不影响,所以这里可以不用管它。

🔺进来之后界面显示的是英文。

🔺可以使用翻译插件,虽说机翻看着确实很生硬,但并不影响我这样的学渣正常使用。

🔺具体怎么使用呢?非常简单!直接把我们需要整理的影视资源丢到“incoming”这个资源监控目录就可以了。

🔺速度很快,我们就能在MediaForge这边看到它已经整理好了(当然这是因为我测试的影片比较少的缘故~)
Snipaste_2026-10-01_09-22-10🔺还有一个失败的也不用担心,可以直接手动搜索。

🔺直接输入影片名称(支持中文)搜索即可。

🔺毕竟用的是TMDB/TVDB/OMDb三大数据源,除了岛国动作片,基本上市面99%的影视剧都能匹配到。

🔺整理好的影视已经自动归类到“media”目录,因为都是电影,所以都分配到“Movies”子文件夹。而且所有影片都进行了重新命名,都统一采用了“影片名称(上映年份)”作为文件夹名称的方式进行整理,这其实也是Plex、Jellyfin等媒体服务器推荐的命名规范。

🔺简单测试下转码,我这里将一个1080P的影片转码成720P,转码顺利进行。

🔺并且我也在极空间NAS的设备监控中看到,确实是使用的GPU转码。

🔺另外设置中也有很多自定义的选项,比如说片命名规则、重复文件处理策略、入库审核阈值、转码预设、AI辅助识别,以及通知等功能,大家可以根据自己的需求来即可(以上演示其实我都是在默认设置下测试的~)。
最后
总的来说,MediaForge目前确实还有一些不太完善的地方(比如它会强制将中文名称重命名为英文,更细粒化的设置也没有),但不可否认,它的识别、转码、入库一条龙的自动化媒体管理思路确实没毛病。如果后续能够有更灵活的识别策略,并加入多国语言支持(特别是中文),我相信它会成为很多NAS玩家都会选择的媒体库工具的。
好了,以上就是今天给大家分享的内容,我是爱分享的Stark-C,如果今天的内容对你有帮助请记得收藏,顺便点点关注,咱们下期再见!谢谢大家~
