刮削原理与实践--以电影及动漫为例
记录一下最近折腾jellyfin时刮削的经验。想好好搞的同学建议静下心来全文阅读。
过程遇到很多问题,不明白刮削到底在干什么,不明白为什么搜不到,不明白为什么不显示我的文件名,不明白有的信息搜不到,问题五花八门的。
查了不少资料,发现少数文章只是说了步骤,没有人去说明其原理是什么。困惑了一阵。
经过一番折腾后,终于弄成了。将个人思考记录下来,希望能帮到遇到和我类似困惑的人。
效果图
电影
动画,老二次元了。
其他还有很多没做,刮削其实是一个大工程。
刮削是什么
刮削本质上是一种
基于文件名与目录结构匹配的,电影、剧集的相关图片剧情简介等信息的获取、展示过程。
例如,有一部电影 复仇者联盟4
,你要看到它的海报、剧情介绍。可是你手上现在只有一个mp4文件。要想获得上述信息,肯定要去某些地方找到海报、介绍,然后保存到电脑上,然后以某种方式予以展示。
你可能听说过jellyfin、emby、plex之类的东西。这些东西就是视频管理工具,它们除了管理视频,还解决了上述中的一个问题,即怎么展示海报、介绍。
多说一嘴,这些这些展示方法其实是在长期实践过程中形成的,也不用问为什么是这样展示,几十年下来就形成这个样子了。
工具实现了展示功能,现在我们需要为这些工具准备展示的信息。准备这个数据的过程,现在有了自动化的做法,就叫做 刮削。
刮削原理
既然刮削是自动地去找海报、简介等信息。那它去哪搜呢,拿什么去搜呢,去搜什么呢?
去哪搜
网上有一个叫IMDB的东西,它专门存着世界上各种电影、剧集的信息。这是亚马逊的。我们有豆瓣。还一些公开组织的TMDB、TheTVDB。不得不说,现在这些东西基本都掌握在老外手里。
吾辈当自强啊。
搜,就是去上面这些地方搜。这些网站为了大家方便搜,对于搜索的格式有了规范,就形成了API。有这些API,就可以编写程序来自动化的搜索了。
拿什么搜
你别想着拿mp4去做视频级的匹配。(当然这确实是AI的一个发展小方向) 拿的是影音文件的名字、文件目录结构! 这就对你的视频文件的名字和结构提出了要求! 这就是工作量之所在!
搜什么
要搜的东西有:视频的介绍、海报。这一点要展开来说,只有知道刮削的目标,我们才能理解要怎么做。
刮削内容分析
视频是分为电影
和节目
,电影就是一集。节目就是有好多集,好多部。我们先说电影。
电影
我们还是以复仇者联盟4
为例。
红框中有海报、有标题、名称、评分、简介、演员信息。还有背景图(忘了框红了)。这些就是要刮削的东西了。
简言之,分为两部分,一部分是文字
,一部分是图片
节目
我们以Fate无限剑制
为例
注意到与电影的区别了吗,它多了季
这个东西。
这里我又想吐槽一下翻译,明明就应该是部,一年只有四季。一个节目可以有十八季。称部更准确。
而且季里面有一个特殊的Specials
。熟悉的朋友都知道,这其实就是正片外的周边剧。
点进季,又发现新东西了。这里除了原来有的海报、背景外,每一集,它都有了图片和介绍。
总结
也就是说,要刮削的内容如下
电影 = 介绍信息 + 海报 + 背景图 + 演员图片
节目 = 介绍信息 + 节目海报 + 背景图 + 演员图片
+ 季海报
+ 集介绍 + 集图片
刮削,就是通过视频文件名和文件目录结构,去一些视频信息数据库(网站)获取到上述介绍文字与图片的过程。
使用刮削器的流程
以tmm
为例。tmm是一个不错的刮削器,注意它的版本,我用的是V3.1.16-1。由于tmdb等的信息格式和API接口参数可能会有变化,所以太旧的版本在某些API的支持上可能会出问题。
拿tmm刮削,要做的工作流就是
- 设置好媒体库
- 设置好刮削数据库,电影和节目都可以用themoviedb。如果发现什么也搜不到你就需要科技。
- 更新数据源
- 刮削
- 手工介入
- 反复操作3、4、5
- 重命名
看不懂,没关系,请接着看下述的实践。
实战刮削 - 电影
以你的名字
为例。
放好目录
可以看到,下载好就这么一个文件
tmm设置媒体库
将test目录设为媒体库
刷新数据源
我这tmm不知道有什么问题,原来试的都删不掉。读者们不用管
看,tmm还是识别到了我有一个文件,但它并不知道这是什么。显示的是文件名中提取的名字关键词。
后面跟着红叉和绿勾,鼠标移到标题栏上会显示对应的解释,分别是:介绍信息,图片,预告片,字幕,是否已观看。
前两项重要。这里只有字幕是勾。字幕方面的问题留给各位自己研究,不是我们要谈的重点。
开始刮削
右键,刮削。
用默认的themoviedb.org搜,搜索名就用tmm提取出来的kimi no na wa。 搜索结果显示在左侧,有几个待选项。咱们就点选中文的“你的名字”。看,右侧里介绍,海报都显示出来啦。点确定。
相比刚才,有几个变化。 左侧,标题名变了。第一个绿勾打上了。因为我们找到介绍了。 右侧,除了海报不知道为什么没刷出来,介绍信息都有了。下方还有个缩略图,是有东西的了。
再看一眼文件夹内。 多了一些文件。
有了一个movie.nfo文件,文本编辑打开看看。 原来就是剧集介绍。都存在这个nfo文件里了。
至于那张图 显然就是tmm里显示的缩略图了。
如果这时我们把它放到jellyfin里会怎么样呢?我们在jellyfin里将test以电影形式添加,把jellyfin的刮削设置全部关掉。添加后,刷新元数据。是这样的。
这是海报墙。
这是点进后的页面。
很显然啊,就是因为没有海报。刚开始tmm刮削,在显示介绍信息时,明明有海报的,但实际并没有下载下来,导致缺一张图。
而jellyfin很智能,不仅标题给你写对了,还拿其他图顶上了海报的位置。但这样看上去挺丑的。怎么办呢?手工介入。
其实利用tmm反复刮,通过“下载缺少的艺术图片”,或者点编辑资料再通过tmm手工下载也许也能行,但是我认为并不好用。
手工介入
先看下tmm的刮削信息,tmdb id是有东西的,点它,去tmdb网站上看看。 这张图很不错啊,弄回来。保存在本地视频同一目录下。然后改名poster。 注意,这个poster是你手工添加过来的,并没有和tmm产生关联,需要再更新一次数据源,让tmm登记这个文件,直到打上绿勾
海报有啦,第二个绿勾也打上了。
去jellyfin刷新。注意选择扫描新文件,别把旧文件覆盖了哦。 鼓掌!胜利在望!
重命名
点tmm的这个按钮。看右下角的进度条。
Tips:由于windows的缩略图占用机制,这个过程有时会失败。即便你自己手工重命名都不行。你得等windows缩略图不用占用目录了,就能成功。这也困扰了我挺久。
目录名改了,文件名也改了。还都带上了年份。很有感觉啊。 成功啦!完成
电影是个基础,接下来我们来看看电视节目还要怎么弄。常见的电视剧、动漫都属于这类,而动漫又更复杂一点。我们直接挑战刮削动漫吧。
实战刮削 - 节目
todo