jellyfin は優れたローカルメディアライブラリ管理ツールであり、以前から耳にしていましたが、実際には使用したことがありませんでした。最近、1TB のハードディスクに保存されているリソースを管理するために使用してみたところ、以前のアニメの追跡方法がどれだけ原始的だったかに気付きました... そこで、jellyfin の探求過程を記録し、この分野に初めて触れる初心者の方々に少しでも役立つ情報を提供したいと思います。
ローカルメディアライブラリ管理とは?#
まず、「ローカルメディアライブラリ管理」という概念について説明します。皆さんもご存知のように、ビデオファイルをダウンロードした後、ビデオプレーヤーをダブルクリックするだけで再生できますが、「ローカルメディアライブラリ管理」が必要なのはなぜでしょうか?
いくつかのシナリオを想像してみてください:
- 特定のドラマをダウンロードして、しばらく見ないで放置し、再び見たいと思ったときにドラマの進行状況を忘れてしまい、最初から見直さなければならない。
- 見たいドラマがたくさんあり、ビデオリストを開くとたくさんのフォルダが表示されて、目が回る。
- 自分のビデオに他のデバイスから簡単にアクセスしたいが、複雑な設定は必要ない。
これらの問題は、メディアライブラリ管理ソフトウェアが解決する必要があります。具体的には、メディアライブラリ管理ソフトウェアの主な機能は次のとおりです:
- ユーザーのビデオ再生履歴を記録し、いつでも再生を続けることができます。必要に応じて、複数のユーザーをサポートすることもできます。
- 複数のフォルダをメディアライブラリとして抽象化し、リアルタイムまたは定期的に更新します。フォルダ内のビデオファイルを一覧表示し、オープンなデータベースから映画のカバー、説明、評価、キャストなどの情報を取得します。
- フロントエンドとバックエンドの分離アーキテクチャを採用し、バックエンドは任意のホストにデプロイできる API を提供します。ユーザーは、Web クライアント、各プラットフォームのクライアントなど、複数のデバイスで簡単にアクセスできます。
インストール方法は?#
メディアライブラリ管理の概念を大まかに説明した後、次に jellyfin のインストール方法について簡単に説明します。
私は自分のコンピュータで jellyfin を使用しているため、Windows 環境でのインストール方法のみを紹介しますが、他のプラットフォームでも同じようにインストールできます。
バックエンド#
jellyfin はフロントエンドとバックエンドが分離しており、Windows でのインストールでは、exe インストーラーを直接使用することをお勧めします。これにより、jellyfin サーバーがインストールされ、使いやすい WEB UI が付属します。インストールプロセス中に、インストールモードを選択するように求められます。サービスとしてインストールする場合は、起動時に自動的に起動されると考えることができます。実行可能ファイルとしてインストールする場合は、手動でサーバーを起動するときにのみサーバーが起動します。
ユーザーがサーバーを実行した後、WEB UI(デフォルトアドレス localhost:8096)を開き、指示に従って初期設定を完了します。
クライアント#
インストーラーにはすでに WEB UI が付属しているので、なぜクライアントを別途インストールする必要があるのでしょうか?
ブラウザがサポートするビデオ形式は非常に限られているためです。そのため、ブラウザがサポートしていないビデオ形式を再生する場合、jellyfin サーバーがビデオをブラウザがサポートする形式に変換し、ブラウザがデコードする必要があります。これにより、不要なオーバーヘッドが発生します。したがって、ローカルにクライアントをインストールし、デコード作業をすべてクライアントに任せることをお勧めします。これにより、サーバーの負荷を軽減し、ハードウェアパフォーマンス(ハードウェアデコード)をより簡単に活用できます。
jellyfin 公式サイトには、公式のクライアントリストがあり、ユーザーは自由に選択できます。
スクレイピングとは何か、そしてスクレイピングの成功率を向上させる方法は?#
インストールが完了し、メディアライブラリが追加されたら、理論的にはすぐに利用できるはずです。ドラマのソースファイルを更新し、jellyfin が自動的にメタデータを更新するのを待つだけです(手動で更新することもできます)。ソースファイルの変更は jellyfin のメディアライブラリに同期されます。しかし、理想は豊かで、現実は残酷です。jellyfin を十分に活用するには、ドラマのソースファイルの管理に少し介入する必要があります。その理由はスクレイピングです。
この言葉は難しく見えますが、実際には非常に単純な意味です。私が前述で言ったプロセスを指しています:
フォルダ内のビデオファイルを一覧表示し、オープンなデータベースから映画のカバー、説明、評価、キャストなどの情報を取得します。
通常、映画のスクレイピング成功率は非常に高いため、主にテレビドラマの場合について説明します。スクレイピングの失敗は大まかに 2 つのタイプに分けられます:
- フォルダから映画情報を取得できない。
- ファイルからシーズンやエピソードの情報を取得できない。
スクレイピングに失敗すると、jellyfin 内で映画の元のフォルダまたはファイル名のみが表示され、関連する画像や情報が表示されず、ユーザーエクスペリエンスに大きな影響を与えます。
スクレイピングに使用されるオープンデータベースは非常に信頼性が高いため、スクレイピングの失敗のほとんどはデータベースが不完全であるという問題ではなく、ローカルの問題から解決する必要があります。スクレイピングのマッチングプロセスは、ファイルとフォルダの名前を基準に行われるため、不適切なソースファイルやソースフォルダの名前がスクレイピングの失敗の主な原因です。時には映画ファイルの名前を変更しなくてもスクレイピングが成功することもありますが、スクレイピングの成功率を向上させるためには、以下のディレクトリ構造と命名規則を使用することをお勧めします(夏目友人帳を例に挙げます):
夏目友人帳
└── S1
├── S01E01.mp4
├── S01E02.mp4
├── S01E03.mp4
├── S01E04.mp4
├── S01E05.mp4
├── S01E06.mp4
├── S01E07.mp4
├── S01E08.mp4
└── S01E09.mp4
主なポイントは次のとおりです:
- 一次フォルダにはドラマの正式名(原題または一般的な訳題)を使用します。
- 二次フォルダはシーズン番号(Season または S で始まる)です。
- 三次フォルダはシーズン番号 + エピソード番号です。
現在、自動リネームツールが利用可能であり、README を参照して使用することで、スクレイピングの成功率を向上させることができます。
簡単なアニメの追加方法#
mikanani は非常に便利なアニメダウンロードサイトであり、各リリースグループには独自の RSS フィードリンクがあります。bt ソフトウェアで RSS を購読し、リネームツールと組み合わせて完全なアニメの追跡ワークフローを実現することができます。これにより、手動操作なしで最新のアニメの更新を jellyfin で確認できます。auto bangumi は、このアイデアを使用して作成された完全自動のアニメ追跡ツールです。興味のある読者は自分で調べてみてください。半自動的な管理を希望する場合は、以下の手順を参考にしてください。
bt ソフトウェアでアニメの RSS を購読する#
まず、アニメの RSS リンクをコピーします:
bt ソフトウェア(qbittorrent を例に挙げます)でリンクを購読します:
ダウンロードルールを設定します:
ダウンロードが完了したら自動的にリネームします(ダウンロードが完了してから 15 秒後に、上記で紹介した自動リネームツールを使用してダウンロードディレクトリを自動的にリネームします):
ファイルをリネームすると、qbittorrent はファイルがなくなるため、シードできなくなります。現在、適切な解決策を見つけていないため、シードせずにダウンロードが終了した後にトレントを削除するしかありません:
もしシードする方法があれば、この記事にコメントしてください。ダウンロードだけでシードしない人はクズです。私はやむを得ず...(悲
上記の手順を参考にして設定を完了すると、アニメの自動追跡が完了します。
スクリーンショット#
最後に、いくつかの jellyfin のスクリーンショットを紹介します!
ホームページ:
メディアライブラリ:
アニメの紹介とシーズンの区切り:
シーズンごとのエピソードのプレビューと説明:
映画の紹介: