はじめに
Jellyfinは動画用のメディアサーバー。Amazon FireTV Stickなどで鑑賞するのに便利。
しかし、動画ファイルの管理、特にタイトルなどのメタデータの整理に手間がかかる。
AniDBというメタデータの提供サイトもあるが、手作業でデータを取得する負担がかかる。
そこで、Shoko Serverというアニメ動画のメタデータ管理サーバーを導入し、
Jellyfinと連携することで、ほとんどのデータを自動取得できるようにした。
環境
ハードウェアはUGREENのDXP4800plus。ただし中のOSはTrueNAS SCALEに入れ替え済み。
また、Jellyfinも導入済み。関連記事は下記。本記事はその続き。
※動画視聴するだけであれば本記事の手順は不要。
1. AniDBアカウントの作成
Shoko ServerはAniDBと連携している。そのため、AniDBアカウントが必須。(無料)
AniDBアカウントの作成
2.Shoko Serverのインストール
TrueNASのAppsからShoko Serverをインストール。手順は普通。
注意点はAdditional Storageの箇所。
JellyfinとShoko Serverは異なる仮想コンテナなのでストレージも分離してる。
しかし、同じ動画ファイルは同じパス名になるようにマウント設定が必要。
参考画像:

3. Shoko Serverの設定
初回起動時はアカウント設定が開始。ユーザー名とパスワードを設定・メモっておく。
(このアカウントはShoko Server自体のアカウントであり、AniDBアカウントとは別物)
その後、画面右上の歯車アイコンからSettingsを開く。メニューは次画像の通り。

まずAniDBメニュー。Login Optionから先に作成したAniDBアカウントを設定。
AVDumpKeyは空欄のままでOK。HTTP Server URLはhttp://api.anidb.net:9001またはhttp://api.anidb.net:9001/httpapi
次にCollectionメニュー。この設定により取得されるメタデータと動画のまとめ方が決まる。
Language Optionは下記。漢字を最上位にしておく。念のために英語も外さないでおく。

Relation Optionsは下記。何を持って同じグループとするかの基準を設定。

最後にImportメニュー。ファイル名やディレクトリ構成を自動で変えられるのを防ぐ。

他メニューは好みに合わせて後から調整。
4. Shoko Serverの動作確認
インストール時に設定したストレージに動画ファイルを置いてみる。
Queue ProcessorにTasksが登録されればOK。
動画ファイルとメタデータの紐付けは自動でなされる場合もあるが、
手動設定が必要な場合もあり。
自分でBDから抜き出した場合などはほぼ手動設定。
手順:Unrecognized Files@Shoko Server
5. AniDBのインストール(Jellyfinプラグイン)
ここからはJellyfin側の設定。
まずはJellyfinのダッシュボード画面から「プラグイン」を開く。
検索窓から「AniDB」を入力したらAniDBプラグインが表示されるのでインストール。
AniDBプラグインは特に設定は不要。
6. Shokofinのインストール(Jellyfinプラグイン)
次にShokofinプラグインをインストール。手順は前節と同じ。
ShokofinはJellyfinのプラグインでShoko Serverと連携するためのもの。
よって、連携のための設定が必須。
Connection Settingsメニュー:
- Private Host URL: さっき設置したShoko ServerのURL
- Username: Shoko Serverのアカウント名
- Password: Shoko Serverのパスワード
Connectionが成功すればOK。
Metadataメニュー:
今回うまくいった設定。
- Title Settings:
- Main Title Source: ShokoのみON
- Add Prefix to Episodes: ON
- Description Settings: 全てON。Shoko→AniDB→TMDBの順
- Image Settings: Add Language CodeをON
- Third Party Integration: AniDBとTMDBをON
Libraryメニュー:
同じ作品の1期、2期、…、劇場版などを1つのコレクションにまとめる設定。
(ディレクトリ構成、ファイル名は任意でOK)
- Basic Settings:
- Use Groups for Shows: ON
- Specials Placement Within Seasons: Exclude specials from the seasons
- Separate Movies from Shows: OFF
- Add Missing Episodes/Seasons: ON
- Collection Settings:
- 選択肢: Create collections for movies and shows based upon Shoko's groups and series
- New Library Settings: VFSをON
他はデフォルトのまま
7. Jellyfinのライブラリ設定
コンテンツタイプは「番組」にする。(既存ライブラリは変更不可。その場合は新規作成)
設定は下記の通り。
- フォルダー: Shoko Serverと同じパス名になるように設定
- ダウンロード言語、国/地域: 日本
- スペシャルシーズン名: Specials
- 埋め込みタイトル関係: 全てOFF
- メタデータダウンロード系: 全てShokoのみをON。他はOFF
- イメージを取得系: Shoko→AniDBの順
- Embedded Image Extractor, Screen Grabber: ON(順序は一番下)
以降の設定は全てOFF
8. Jellyfinのライブラリ→ディスプレイ設定
9. 動作確認
Jellyfinでライブラリの「メタデータをリフレッシュ」を実行。
動画が自動で追加され、Shoko Serverのメタデータ(タイトルなど)が自動で反映される。
10. 反映されない場合の確認事項
実際に行き詰まった点のメモです。
まずは普通にShoko Server, Jellyfinを順番に再起動。その上で以下。
- Shoko Server内でメタデータが取得されているかを確認
- Jellyfinのライブラリ設定でフォルダーに自動で1つパスが追加されているかを確認
- 追加されていない場合、ShokofinのVFS関連を確認
- パスが自動追加されない場合はVFS設定後に再起動
- ライブラリに動画自体が追加されない
- Jellyfinのメタデータリフレッシュを「すべてのメタデータ」で再実行。
- Jellyfinのメタデータマネージャーを確認。
- 1日程度待つ。(原因は不明。しかしなぜかこれで解決)
