アニメ管理設定
WebUI

- 有効化:ファイル整理とリネームを有効化します。
- リネーム方式:
pn:リリースタイトル情報を多めに保持するTorrent title S0XE0X形式。advance:公式タイトルと標準的なシーズン/話数形式。none:リネームしません。template:独自テンプレートで命名します(テンプレートリネーム参照)。pn・advance・templateは内蔵プラグインrename(既定で有効)が提供します。設定 → プラグイン で無効にすると、すべての番組がnoneとして扱われます。他のプラグインがリネーム方式を追加することもあり、有効なものはドロップダウンに表示されます。
- 話数補完:不足している話数を補完ダウンロードします。
- グループタグ追加:字幕組関連タグをダウンローダータスクに追加します。
- 不良Torrent削除:エラー状態のタスクを削除します。
- リビジョン競合ポリシー:より高いリビジョンのトレントが既存の話数を対象にするとき、「既存ファイルを保持」または「より高いリビジョンに置き換え」を選びます。置き換えを有効にすると、高いリビジョンが配置に成功した後でだけ古いトレントとそのデータを削除します。
- 未一致Torrentを記録:ルールに一致しないTorrentを孤児レコードとして保存します。
テンプレートリネーム
template を選ぶと、内蔵プラグイン rename のテンプレートでファイル名を生成します。設定 → プラグイン → rename でファイル名テンプレートを編集します。既定値:
{{ title }} S{{ season|pad(2) }}E{{ episode|pad(2) }}通常のエピソードでは既定値は pn と同じ結果になります。劇場版では pn は SxxExx を付けませんが、既定のテンプレートは付けます。サンドボックス化された Jinja2 構文で、次の変数が使えます。
| 変数 | 意味 | 例 |
|---|---|---|
title | ファイル名から解析したタイトル | 葬送のフリーレン |
bangumi_name | 番組フォルダー名 | 葬送のフリーレン (2023) |
season | シーズン(Season フォルダーから取得、シーズンオフセット適用済み) | 1 |
episode | 話数(話数オフセット適用済み、半話は小数を保持) | 5、12.5 |
episode_type | episode / movie / special | episode |
group | 字幕グループ(空の場合あり) | ANi |
kind | media または subtitle | media |
language | 字幕の言語(動画では空) | zh |
pad(n) フィルターは整数部を n 桁にゼロ埋めし、小数部は保持します({{ episode|pad(3) }} → 005、{{ 12.5|pad(2) }} → 12.5)。
- テンプレートはファイル名の本体のみを生成し、拡張子(字幕は
.zh.ass形式)は自動で付きます。 - 保存時にサンプルファイルで一度レンダリングします。構文エラー、未定義の変数、不正な結果のテンプレートは拒否されます。
- 実行時にレンダリングが失敗した、結果が空、または
/・\を含む場合、そのファイルは元の名前のままになり、通知が送られます。Torrent にab:renamedタグは付かないため、テンプレートを直すと次のサイクルで再試行されます。pnに戻ることはありません。
WARNING
リネーム方式やテンプレートの変更は、その後に整理される Torrent にのみ適用されます。整理済み(ab:renamed タグ付き)の Torrent は再リネームされません。
メディアライブラリへのハードリンク
内蔵プラグイン hardlink は既定で無効です。設定 → プラグイン で有効にします。Torrent の整理が終わると、動画と字幕をライブラリフォルダーにリンクします。ダウンロードフォルダーはそのまま残り、シードを続けます。
| 項目 | 説明 | 既定値 |
|---|---|---|
source_root | AutoBangumi から見たダウンロードルート(絶対パス)。ライブラリは同じフォルダー構成になります | なし(必須) |
library_root | ライブラリフォルダー(絶対パス)。source_root の内側には置けません | なし(必須) |
path_map | {downloader, from, to} のリスト。ダウンローダーインスタンス downloader(既定 default)から見たパス接頭辞 from を、AutoBangumi から見たパス to に置き換えます。最長一致、一致しないパスはそのまま使います | [] |
cross_device | ハードリンクがファイルシステムをまたぐ場合:copy(コピー)、symlink(シンボリックリンク)、skip(スキップして通知) | copy |
- プラグインが作成していない同名ファイルがライブラリにある場合はスキップし、上書きしません。通知が送られます。
- リビジョン更新(新しいリリースが同じファイル名で古い Torrent を置き換える)の後、プラグインが以前作成したリンクは新しいファイルへのリンクにアトミックに置き換えられます。
- Torrent を削除しても、ライブラリのリンクは削除されません。
- プラグインが配置した後にライブラリから削除したファイルは、再びリンクされません。バックフィルを実行すると再作成されます。
- 有効化する前にダウンロード済みのファイルは自動ではリンクされません。プラグインを有効にすると設定画面に「Hardlink backfill」セクションが表示されます。Link existing files をクリックすると、ダウンロードルートにある本編と字幕をライブラリにリンクします。リンク済みのファイルはスキップされます。このボタンは
POST /api/v1/plugins/hardlink/backfillを呼び出します。 path_mapはプラグインの設定フォームで 1 行ずつ編集できます(Add row)。config/config.jsonではplugins.options.hardlink.path_mapです(例:[{"downloader": "default", "from": "/downloads", "to": "/media/downloads"}])。
Docker
ハードリンクはファイルシステムをまたげません。Docker では、ダウンロードフォルダーとライブラリを同じディスクに置き、1 つのマウントで AutoBangumi コンテナに渡してください(例:/mnt/media を /media としてまとめてマウントし、両方をその下に置く)。別々にマウントしたフォルダーは同じディスク上でも別のファイルシステムとして扱われ、cross_device の設定に従います(既定はコピーで、容量を 2 倍使います)。ダウンローダーが別のコンテナで動作し、見えるパスが異なる場合は path_map を使います。
メディアサーバーの更新
内蔵プラグイン media-server-refresh は、Torrent の整理後に Jellyfin・Emby・Plex へライブラリの更新を要求します。設定 → プラグイン → media-server-refresh でサーバー種別を選び、サーバー URL と API Key(Plex は X-Plex-Token)を入力すると有効になります。未入力の間は何もしません。イベントを受け取ると delay 秒(既定 30)待ち、その間に整理された Torrent をまとめて 1 回だけ更新します。更新リクエストの送信後に届いたイベントは、もう 1 回の更新になります。ハードリンクプラグインが有効な場合は、ファイルがライブラリに入った後にもう一度更新します。ディスクをまたぐコピーが遅延より長くかかっても、新しいエピソードが表示されます。
config.json
セクション:bangumi_manage
| キー | 説明 | 型 | WebUI項目 | 既定値 |
|---|---|---|---|---|
enable | 管理機能を有効化 | 真偽値 | 有効化 | true |
eps_complete | 話数補完を有効化 | 真偽値 | 話数補完 | false |
group_tag | グループタグ追加 | 真偽値 | グループタグ追加 | false |
remove_bad_torrent | エラーTorrent削除 | 真偽値 | 不良Torrent削除 | false |
track_orphans | 未一致Torrentを記録 | 真偽値 | 未一致Torrentを記録 | true |
リネーム方式とリビジョン競合ポリシーは Provider の選択として plugins.slots に保存されます:rename_strategy(リネーム方式、既定値 pn)と conflict_policy(hold / replace、既定値 hold)。3.3 の bangumi_manage.rename_method と revision_conflict_policy は、4.0 へのアップグレード後の初回起動時に自動で移行されます。詳しくは プラグイン設定 を参照してください。