我的动画媒体库整理姿势

虽说像 Nastool 一类的 NAS 工具,可以轻而易举地做到自动识别、硬链接、重命名大多数 真人影视剧,大大地减少了整理媒体文件的工作量。但是,它对TV动画的处理效果并不是特别优雅:在我收集到的动画 蓝光光盘 转录(BDRip)资源中,除了正片,还包含各种访谈、花絮、预告、音乐等额外内容,这些额外内容不仅命名千奇百怪,某些特别篇还散落在不同的文件夹内,Nastool 无法做到精准的识别。

另一方面,我倾向使用动画爱好者制作的附加名词注释、或是各种动态效果的字幕。这意味着即使我能借工具完成视频的整理和重命名,字幕的处理还是要靠自己。

基于以上原因,最终我采取的是全部 手动整理 的方式来收集 已完结动画 的 BDRip,以保证质量。至于 连载新番 的整理,因为没有额外内容,使用 Ani-RSS 就可以实现全自动化。

前期准备目前,我整理一部 BDRip 动画入库的基本流程是这样的:

下载 视频文件 ➡️ 硬链接 需要的文件 ➡️ 分类 额外文件 ➡️ 查找 字幕 ➡️TMDB 搜索正式名称 ➡️ 重命名 视频和字幕 ➡️ 移动至目的文件夹。

如果只是下载并不保种,可以省去硬链接的步骤。在一众 BDRip 压制组中,VCB-Studio 的作品最具代表性。他们制作的 BDRip 不仅视频质量上乘,还收集了与动画相关的各类音乐、周边扫图等其他额外内容,文件分类更是无比清晰,命名也十分标准。只要能搞定 VCB-Studio 的文件编排,之后处理其他压制组乃至其他类型(真人影视剧)的作品,就都是小菜一碟了。

所以在正式开始之前,我们需要先了解一下 VCB-Studio 的文件编排规范。根据目前公开的 资源整理规范 以及实际下载到的资源,大多数时候会包含如下文件:

[VCB-Studio] #正片目录

├── ├── CDs #专辑总目录

│ ├── SPs #特典目录,视频文件和图片(包) 等

│ └── Scans #扫图目录

│── [VCB-Studio] xxx.zip #字体包

│── [VCB-Studio] xxx.sc.ass #字幕

│── [VCB-Studio] xxx.mka #外挂音轨

└── [VCB-Studio] xxx.mkv #正片其中:

番剧 主文件夹 下的视频文件为 正片,但可能还会额外包含 OAD 或 OVA,TMDB 一般是在 Season 0 番外篇的位置;

字幕文件和字体包要看有没有合作的字幕组;外挂音轨目前实测 只有 Jellyfin 支持,可以保留;SPs 文件夹可能都是预告采访等额外内容,也可能会存放一些未在电视上播放的 特典视频,命名形式为 SP01.mkv,也是在 TMDB 的番外篇列表中;Scans 扫图文件夹中的图片,在各媒体程序中均无法同视频一起显示;CDs 音乐文件夹修改原数据会改动源文件不适合硬链接,如果有收集动画音乐的需求,需要把它们单独复制出来。因此,一部 VCB-Studio 制作的作品中,最终能放进媒体库的部分有:

主文件夹 和 SPs 文件夹下的 视频、字幕;CDs 文件夹中的 音乐。搞清楚这一点,后续的工作就简单了。

文件下载在你能打得开的资源发布站上,例如 BANGUMI.MOE / SHARE.DMHY.ORG / ACG.RIP / ACGNX.SE / SHARE.ACGNX.SE,下载由 VCB-Studio 压制的动画。

硬链接如果没有计划保种,可以直接改动源文件跳过这一步。使用 Docker Compose 安装硬链接工具 Hlink:

hlink:

image: likun7981/hlink:latest

container_name: hlink

ports:

- 9090:9090 #左侧9090可以任意修改

volumes:

- /volume1/media:/media #存储空间映射

- ./hlink:/config #存放hlink配置文件的地方,要与下面一致

environment:

- PUID=1026

- PGID=100

- HLINK_HOME=/config #hlink配置文件路径

restart: unless-stopped创建硬链接规则,提取 主文件夹 和 SPs 文件夹下的视频和字幕:

处理音乐文件时,修改原数据会改动源文件,所以不应该硬链接,要直接复制一份拷贝。export default {

/**

* 自行修改硬链接路径,左侧为原文件路径,右侧为硬链接路径

*/

pathsMapping: {

'/media/Download': '/media/hlink'

},

include: [

'mp4',

'mkv',

'mka',

'ass'

],

exclude: {

globs: [

'**/CDs/**',

'**/Scans/**'

],

},

keepDirStruct: true,

openCache: true,

mkdirIfSingle: true,

deleteDir: false,

}由于硬链接与原文件需要在同一个分区内,这里是将 /media/Download 内的文件硬链接到 /media/hlink 文件夹中。后续对文件的整理和重命名是在 /media/hlink 文件夹中进行。

文件分类正片的处理不用我多说,要注意的是 /SPs 文件夹下的特典文件。该文件夹下一般有如下类别的文件,VCB-Studio 会严格按照这个标准命名文件,所以整理起来其实是很容易的:

特典类别TYPE预告 Preview (Prev) 预告下一话内容 注意编号表示其预告的是第几话的内容而不是跟在哪一话后面Preview Web Preview菜单 Menu BD/DVD 播放选择菜单Menu01_1 Menu01_2 Menu01_3 Menu02广告 Commercial Message (CM) 电视放送广告,时长一般在 7s/15s/30s/45s/... 左右CM SPOT宣传片/预告片 Promotion Video (PV) / Trailer 一般时长在 1~2min 命名参考原盘和 jsumPV Trailer Teaser无字 OP/ED Non-Credit Opening/EndingNCOP NCED音乐视频 Music VideoMV真人特典 (节目、采访、舞台活动、制作...) Program/Interview/Talk/Stage... 对于这样的三次元长视频内容, 也可以一概怼成 IVIV 或根据实际内容编写特典 Special (SP) 剩下的各种二次元类型可以全部命名成 SP,对于较特殊意义的特典也可以自定义命名SP 或自定义我们已经用硬链接工具过滤掉了无用的图片,只要处理剩下的视频和字幕就可以了。

每款程序对额外文件的要求有些微的不同,这里单独举例下。

Plex根据 Plex 文档 电视节目本地预告及其额外节目(Local Files for TV Show Trailers and Extras) 的分类要求 1 中的说明,Plex 目前支持以下分类:

Behind The Scenes:幕后花絮Deleted Scenes:已删除场景Featurettes:专题报道Interviews:访谈Scenes:场景Shorts:短篇Trailers:预告Other:其他按照我个人理解,VCB-Studio 规范下的特典分类中,通常情况下可以用到的 Plex 分类有这些:

Plex 分类特典分类名称InterviewsIVTrailersPreview、Web Preview、CM、SPOT、PV、Trailer、TeaserOtherMenu、NCOP、NCED 等其他无意义文件也就是说,如果 /SPs 文件夹下的视频文件名包含 IV ,那么就移动到 Interviews 文件夹中,如果是 Preview,就移动到 Trailers 文件夹,以此类推。

Shows

└── Series Name (2010)

├── Season 01

│ ├── Series Name S01E01.mkv

│ ├── Series Name S01E02.mkv

├── Season 02

│ ├── Series Name S02E01.mkv

│ ├── Series Name S02E02.mkv

├── Interviews

│ └── Interview.mkv

├── Trailers

│ └── Trailer.mp4

└── Other

└── NCOP.mkvPlex 的额外分类文件夹需与季度文件夹 同级。

效果如下,以「花絮」的分类显示,并注明预告片、其他等类别。

电视动画:

剧场动画:

同时,预告片按钮会使用 Trailers 文件夹内的视频:

Jellyfin根据 Jellyfin 文档 电视额外内容(Show Extras) 中的分类要求 2,Jellyfin 目前支持以下分类:

behind the scenes:幕后花絮deleted scenes:已删除场景interviews:访谈scenes:场景samples:样本shorts:短篇featurettes:特辑clips:剪辑other:其他trailers:预告extras :囊括上述一切分类的万能分类Jellyfin 支持的分类和 Plex 差不多,但额外支持了 clips 剪辑、featurettes 特辑等特殊分类。同时,还支持在季度文件夹内使用额外分类,这一点 Plex 尚未支持:

Shows

└── Series Name (2010)

├── Season 01

│ ├── Series Name S01E01.mkv

│ ├── Series Name S01E02.mkv

│ ├── featurettes

│ │ └── Some Featurette.mkv

│ └── interviews

│ └── Interview with the Director.mp4

├── Season 02

│ ├── Series Name S02E01.mkv

│ ├── Series Name S02E02.mkv

│ └── behind the scenes

│ └── Behind the Scenes.mp4

└── extras

└── Fantastic Extra.mkv电视动画(预告片在按钮里,如果有 Trailers 文件夹,点击会直接读取其中的视频,否则是 YouTube 中(多为英文)的预告):

剧场动画:

Emby目前暂未搜索到 Emby 针对额外分类的支持文档。但实测下来,是会读取 Trailers 文件夹中的文件并显示为预告片。

点击播放的是预告片文件夹中的视频,而不是油管

Extra 在 TV 中会一并归类为 特别篇,在 Movie 中则是显示为 附加。

此外的文件夹,可以确定是 不支持 的。

既然不支持,也就没有展示的必要。如果你是像我一样 Plex、Emby 双开,就算不展示也不想删除这些文件,根据《Excluding Files & Folders(排除文件和文件夹)》的说明,可以考虑在 Other 、interviews 等 Emby 不支持显示的文件夹中,加入一个名为 .ignore 的 文件。

加入前:

加入后:

字幕下载你可以在这个 网站 上下载到大量由动画爱好者制作和分享的字幕。

TMDB 搜索例如【太空丹迪】,在 TMDB 上搜索:https://www.themoviedb.org/search?query=太空丹迪

得到以下链接:https://www.themoviedb.org/tv/60874-space-dandy

直接复制首页的【太空丹迪 (2014)】即可,留后续重命名备用。

重命名为了能够尽可能自由地切换媒体程序,例如从 Jellyfin 换到 Emby,或是从 Emby 改用 Plex,我们要让视频的命名及文件编排能被这三种程序 同时 识别。

电视动画电视动画在创建媒体库时选择「电视节目」的分类。一般情况下这样编排:

电视动画

├── 四叠半神话大系 (2010)

│ ├── Season 00

│ │ ├── 四叠半神话大系 (2010) S00E01.mkv

│ │ └── 四叠半神话大系 (2010) S00E02.mkv

│ └── Season 01

│ ├── 四叠半神话大系 (2010) S01E01-E02.mkv

│ ├── 四叠半神话大系 (2010) S01E03.mkv

│ └── 四叠半神话大系 (2010) S01E04.mkv

├── ……

即创建主文件夹后,再创建季度文件夹 Season 00 、Season 01,文件根据季度重命名为 S00E01 、S00E02,S 为 Season 季度的缩写,E 为 Episode 剧集的缩写。视频文件命名的时候以 番剧名 (年份) SXXEXX 的格式为佳,另外名称可以使用 简体中文,不用刻意改为日文片假名或是英语译名。

如果有额外的预告、花絮等内容,那就在季度同级创建文件夹:

电视动画

├── 太空丹迪 (2014)

│ ├── Season 00

│ │ ├── 太空丹迪 (2014) S00E01.mkv

│ │ └── 太空丹迪 (2014) S00E02.mkv

│ ├── Season 01

│ │ ├── 太空丹迪 (2014) S01E01.mkv

│ │ └── 太空丹迪 (2014) S01E02.mkv

│ ├── Season 02

│ │ ├── 太空丹迪 (2014) S02E01.mkv

│ │ ├── 太空丹迪 (2014) S02E02.mkv

│ │ ├── 太空丹迪 (2014) S02E03.mkv

│ │ └── 太空丹迪 (2014) S02E04.mkv

│ └── Trailers

│ ├── 太空丹迪 (2014) PV.mkv

│ └── 太空丹迪 (2014) CM.mkv

└── 四月是你的谎言 (2014)

├── Season 01

| ├── 四月是你的谎言 (2014) S01E01.mkv

| └── 四月是你的谎言 (2014) S01E02.mkv

├── Season 02

| ├── 四月是你的谎言 (2014) S02E01.mkv

| ├── 四月是你的谎言 (2014) S02E01.mkv

| └── 四月是你的谎言 (2014) S02E03.mkv

└── Other

├── 四月是你的谎言 (2014) NCOP.mkv

└── 四月是你的谎言 (2014) NCED.mkv由于 Plex 不支持季度文件夹内的文件夹识别,所以统一放在季度文件夹同级的位置。有不同分辨率的视频的话,就在后面加上清晰度(用 - 隔开,注意空格)以区分:

电视动画

├── 太空丹迪 (2014)

│ ├── Season 00

│ │ ├── 太空丹迪 (2014) S00E01 - 720P.mkv

│ │ └── 太空丹迪 (2014) S00E01 - 1080P.mkv

│ ├── Season 01

│ │ ├── 太空丹迪 (2014) S01E01.mkv

│ │ └── 太空丹迪 (2014) S01E02.mkv但对于动画收集,我想大家更多时候也会选择质量最好的版本吧?

剧场动画剧场动画在创建媒体库的时候要选择「电影」分类。一般情况下这样编排:

剧场动画

├── 言叶之庭 (2013)

│ └── 言叶之庭 (2013).mp4

└── 古立特宇宙 (2023)

└── 古立特宇宙 (2023).mp4或者是有其他清晰度的版本,只要主体命名准确,其余的部分程序会自动识别或忽略:

剧场动画

├── 你的名字。 (2016)

│ ├── 你的名字。 (2016) - 4K.mkv

│ └── 你的名字。 (2016).mkv

└── 借东西的小人阿莉埃蒂 (2010)

└── 借东西的小人阿莉埃蒂 (2010) - 720p.mp4有预告片的话就创建相应分类的文件夹(因为 TMDB 没有对应的数据库,不会被索引数据,所以可以不重命名直接丢进去):

蓝色巨星 (2023)

├── Other

│ ├── BLUE GIANT [Completion Preview Screening][Ma10p_1080p][x265_aac].mkv

│ ├── BLUE GIANT [First Day Stage Greetings][Ma10p_1080p][x265_aac].mkv

│ └── BLUE GIANT [Teaser02][Ma10p_1080p][x265_flac].mkv

├── Trailers

│ ├── BLUE GIANT [TVCM01][Ma10p_1080p][x265_flac].mkv

│ └── BLUE GIANT [Trailer][Ma10p_1080p][x265_flac].mkv

├── 蓝色巨星 (2023).mka

├── 蓝色巨星 (2023).mkv

├── 蓝色巨星 (2023).zh-tw.ass

└── 蓝色巨星 (2023).zh.ass字幕参考 Plex file hierarchy example 一文以及实际使用过程中的经验,字幕重命名时,主体部分需要与视频一致,而后在其后缀前加上 .zh-CN 或 .zh 简体中文, .zh-TW 繁体中文,以区分字幕语言。

例如:

这个勇者明明超强却过分慎重 (2019) S01E11.zh.ass

这个勇者明明超强却过分慎重 (2019) S01E12.zh-CN.ass

这个勇者明明超强却过分慎重 (2019) S01E12.zh-TW.ass下面是一个关于中文变体的列表,可以适当地参考该表,根据所用字幕的实际地区精确地增加后缀。

变体名称中文名称ISOSimplified简体.zh-HansTraditional繁體.zh-HantSimplified and using Mainland Chinese terms大陆简体.zh-CNTraditional and using Taiwanese terms臺灣正體.zh-TWSimplified and using Singaporean (and until mid 2018, Malaysian) terms新加坡简体 (马新简体).zh-SGSimplified and using Malaysian terms (added in mid 2018)大马简体.zh-MYTraditional and using Hong Kong (and until mid 2013, Macau) terms香港繁體 (港澳繁體).zh-HKTraditional and using Macau terms (added in mid 2013)澳門繁體.zh-MO但我不建议使用 .zh-Hans 和 .zh-Hant,因为 Jellyfin 不认,不会自动匹配到该字幕:

.zh-CN 也不认,但是可以使用 .zh-CN.forced 强制启用。

zh 倒是可以正常识别,并显示成 Chi ,即 Chinese:

Emby 与 Plex 都支持识别 zh-Hans 和 zh-Hant:

Emby

Plex

而如下命名的字幕

天国大魔境 (2023) S01E01.zh.ass

天国大魔境 (2023) S01E01.zh-tw.assJellyfin 会一并显示成 Chi ,导致无法区分:

Emby 和 Plex 都能正常显示。

Emby

Plex

如果再增加上 HK

天国大魔境 (2023) S01E01.zh.ass

天国大魔境 (2023) S01E01.zh-tw.ass

天国大魔境 (2023) S01E01.zh-hk.assEmby 和 Plex 都能正常显示

Emby

Plex

综上可以得出 结论:

如果是 Plex 和 Emby 用户,建议简中使用 .zh-CN ,繁中使用 .zh-TW如果是 Jellyfin 用户,建议简中使用 .zh,繁中使用 .zh-Hant 或其他无法被识别成 Chi 的语言用以区分如果需要强制启用某种格式的字幕,在后面加上 .forced,即 天国大魔境 (2023) S01E01.zh-CN.forced.ass你可能会问为何不是 .zh-HK 而是 .zh-TW,因为繁体字幕更多时候是台湾人做的,你想用 .zh-HK 代表繁体也行 ¯\_(ツ)_/¯

至此,视频的处理就结束了。

音乐处理完视频文件后,还剩下 CDs 专辑文件夹尚未处理。

VCB-Studio 发布的音乐资源都为 flac 格式的音频文件,并带有专辑编号。因此可以直接在 Musicbrainz 中找到对应专辑,再使用 Musicbrainz Picard 写入 id3tag 数据。

[171129] 「More One Night」/チト&ユーリ (flac+webp)

├── Cover.jpg

├── Scans

├── ZMCZ-11750.cue

├── ZMCZ-11750.flac

└── ZMCZ-11750.log主要有两种情况:

已切割或是原生 Hires 的 flac 格式音乐;未切割带有音乐数据 .cue 文件的音乐针对第一种情况,直接复制或移动到目标文件夹中,使用 Musicbrainz Picard 处理。

第二种情况,使用 FB2K 读取 .cue ,转换成 flac 格式后使用。具体参考《MusicBrainz 不完全使用指南》一文。如果不会用 FB2K (fooba2000),我可以找个机会再水一水。

至此,一部 VCB-Studio 作品中能用到的文件,就都处理完毕了。

更新:关于附加文件起先,附加文件我只是简单分类到对应的文件夹,并不重命名。后来,我开始简单地按 [番剧名+类型] 的格式重命名,例如:

[SweetSub&VCB-Studio] Do It Yourself!! [Menu01][Ma10p_1080p][x265_flac].mkv ⇨

Other/少女手工 (2022) Menu01.mkv

[SweetSub&VCB-Studio] Do It Yourself!! [Character PV 04][Ma10p_1080p][x265_flac].mkv ⇨

Trailers/少女手工 (2022) Character PV 04.mkv但实际使用中才发现,除了正片(如 Season 1、Season 0)外,这些附加文件 Emby、Plex 都只是原封不动地将文件名展示出来,并不会利用到文件名中的 动画名称。

再加上首页无法预览完整的文件名,若是像 [SweetSub&VCB-Studio] Do It Yourself!! [Menu01][Ma10p_1080p][x265_flac].mkv 这种不改名直接丢进分类里的文件,可能就只会露出 [SweetSub&VCB-Studio] Do It Yourself 这几个字,无法分辨它究竟是 ED·、IV 还是别的什么东西。

基于这种特性,我们完全可以掐头去尾将附加文件重命名为 Menu01.mkv 或是 Character PV 04.mkv。甚至可以更进一步,既然媒体播放器只是显示文件名,那干脆就把它们重命名为 菜单 01.mkv、角色预告 04.mkv,显示效果会更好。

而先前提到,在 VCB-Studio 的特典分类规范下,Plex 最终能使用得到的分类有这些:

Plex 分类特典分类名称InterviewsIVTrailersPreview、Web Preview、CM、SPOT、PV、Trailer、TeaserOtherMenu、NCOP、NCED 等其他无意义文件例如这个文件:

[DMG&MH&VCB-Studio] Kanata no Astra [Menu01_5][Ma10p_1080p][x265].mkv掐去 [DMG&MH&VCB-Studio] Kanata no Astra 这一头,删掉 [Ma10p_1080p][x265] 的尾巴,剩下 [Menu01_5] 提取出其中的 01_5 ,这个文件就被归类并重命名为

Other/BD播放选择菜单01_5.mkv再挑一些有代表性的栗子。

预告:

[DMG&MH&VCB-Studio] Kanata no Astra [PV&CM Collection][Ma10p_1080p][x265_flac].mkv

[DMG&MH&VCB-Studio] Kanata no Astra [Web Preview 01][Ma10p_1080p][x265_flac].mkv

[VCB-Studio] Amaama to Inazuma [PV01][Ma10p_1080p][x265_flac].mkv重命名为:

Trailers/PV&CM合集.mkv

Trailers/预告01.mkv

Trailers/宣传片01.mkv菜单:

[Nekomoe kissaten&VCB-Studio] Go-Toubun no Hanayome S2 [Menu01][Ma10p_1080p][x265_flac].mkv

[DMG&MH&VCB-Studio] Kanata no Astra [Menu01_5][Ma10p_1080p][x265].mkv

[VCB-Studio] Haikyuu!! Owari to Hajimari [Chapter Menu 02][Ma10p_1080p][x265_flac].mkv重命名为:

Other/BD播放选择菜单01.mkv

Other/BD播放选择菜单01_5.mkv

Other/角色菜单02.mkv无字 OP、ED:

[SweetSub&VCB-Studio] Do It Yourself!! [NCOP][Ma10p_1080p][x265_flac].mkv

[SweetSub&VCB-Studio] Do It Yourself!! [NCED][Ma10p_1080p][x265_flac].mkv

[SweetSub&VCB-Studio] Do It Yourself!! [NCED 01][Ma10p_1080p][x265_flac].mkv

[Nekomoe kissaten&YUI-7&VCB-Studio] Comic Girls [NCED02_EP06][Ma10p_1080p][x265_flac].mkv重命名为:

Trailers/无字幕片头.mkv

Trailers/无字幕片尾.mkv

Trailers/无字幕片尾01.mkv

Trailers/无字幕片尾02_EP06.mkv真人访谈:

[SweetSub&VCB-Studio] 16bit Sensation Another Layer [IV01][Ma10p_1080p][x265_aac].mkv重命名为:

Other/访谈01.mkv电视广告 CM:

[VCB-Studio] Kaguya-hime no Monogatari [CM][Ma10p_1080p][x265_ac3].mkv

[VCB-Studio] Amaama to Inazuma [CM03][Ma10p_1080p][x265_3flac].mkv重命名为:

Other/广告.mkv

Other/广告03.mkv当然,以上翻译只是个人做法,你可以选择保留原名。

其他关于压制组的选择首推 VCB-Studio,然后是喵萌奶茶屋、LoliHouse,这两家和 VCB-Studio 的人员组成不能说完全一致,但也有不少相似。

其次就是 mawen1250,虽然不了解这个圈子,但 VCB-Studio 里经常提到雯姐。

然后就随便选了,有啥选啥,唯独不推荐 Moozzi2,锐化成一坨。

更多压制组可以多逛逛 字幕论坛 看看大家的偏好。

关于番剧数据标记收集完动画后,如何判断是否收集齐全呢?可以尝试使用 番组计划 标记这些数据。

例如,下载完《【我推的孩子】》、把里头的视频和音乐都整理完入库后,可以在相应条目内查看是否收集完整。

有下载的就标记上,没有的后续也能查缺补漏。

最后以上便是我整理 VCB-Studio 压制作品的流程及相关注意事项,记录在此供有需要的朋友参考,也方便我自己发现纰漏并修正。

收工!看芙莉莲去喽~

参考Jellyfin 文档:Shows | JellyfinPlex 文档:Local Files for TV Show Trailers and ExtrasEmby 文档:https://emby.media/support/articles/Subtitles.htmlPlex file hierarchy example 电影也遵循这个分类:电影本地预告及其额外视频(Local Files for Movie Trailers and Extras) ↩ Jellyfin 电影遵循的标准也与电视类似:电影额外内容(Movie Extras) ↩本文作者:mikusa

本文链接:https://www.himiku.com/archives/how-i-organize-my-animation-library.html

封面出处:来月払うよ / JLT4n #Pixiv

版权声明:所有文章除特别声明外均系本人自主创作,转载及引用请联系作者,并注明出处(作者、原文链接等)。