Jellyfinはホームサーバー側でより多くの処理を行います。ローカル処理によって遅延やデータの露出を抑えながら、ソースを直接処理できないクライアントにもコンテンツを配信できるためです。
テレビ、ブラウザ、スマートフォンでは、対応するコーデック、HDRモード、字幕が異なる場合があります。そのためサーバーが、こうした違いを調整する場所になります。ローカルで管理すれば、処理経路を確認しやすいという利点もあります。一方で、計算資源、ストレージ、保守にかかるコストは運用者のハードウェア側に残ります。
クライアントの制限がサーバー側の処理を生む
サーバーは、メディアとクライアントの対応能力の差を把握します。クライアントがコーデックをデコードできない、字幕を表示できない、またはHDRを受け付けない場合、Jellyfinは配信前にリマックス、音声変換、あるいは動画全体の処理パイプラインを実行することがあります。
既知のクライアント対応機能プロファイルを使うと、処理経路を可視化できます。同じファイルを、ダイレクトプレイするクライアントと変換を発生させるクライアントで比較してみてください。
したがって、ローカル処理は単なる好みではありません。異なるエンドポイントに1つのライブラリを提供するための仕組みです。
ローカル処理は処理経路の変動を抑える
メディアの近くで変換を行えば、追加のアップロード、ホスト型変換サービス、クライアント固有の依存関係を避けられる場合があります。また、ジョブの実行時期、使用するアクセラレーター、中間データの保存場所を運用者が選べます。
より広い視点で見た複数アプリのリソースモデルからは、容量計画において検証可能なパイプラインが役立つ理由が分かります。ただし、管理できること自体がスループットを生み出すわけではありません。
この利点は、遅延に敏感な処理、プライバシーが重要な処理、頻繁に再利用される処理で特に大きくなります。一方、サーバーがすでに計算資源の限界に達している場合や、クライアントがダイレクトプレイできる場合は効果が小さくなります。
プライバシーと制御は容量とは別の問題
ローカルサーバーを使えば、メディアや生成された状態を運用者が管理するストレージ内に保持できます。しかし、電力を消費し、更新が必要であり、ID管理、メタデータ、リモートアクセスのサービスに依存する場合もあります。ローカル処理によってデータの管理主体と制御は変わりますが、運用上の責任がなくなるわけではありません。
実際の要件を定義する際は、ホームサーバーの所有について、ローカルで所有することと完全なオフライン独立性を区別してください。
プライバシーを最優先する目的であれば、最速の経路でなくてもローカル処理が妥当になる場合があります。ただし、どのデータまたは処理をローカルに残す必要があるのかを明確にすべきです。
ローカル処理が役に立たなくなる場合
サーバーが変換経路を維持できない場合、実際の制限要因がリモートへのアップロードである場合、またはクライアントの制限によって毎回のセッションで重い処理パイプラインが必要になる場合、ローカル処理では限界があります。処理をローカルに移すことは、最初に飽和する段階を測定する代わりにはなりません。
処理場所を変更する前後で実際のワークロードを比較するには、コールドベンチマークとウォームベンチマークを使用してください。
観測されたボトルネックが別の場所にあるなら、「ローカルだから自動的に優れている」と考えるのはやめましょう。重要なのは、利用可能なリソースの余裕の範囲内で、ローカル制御が明確なプライバシーまたは遅延の問題を解決できるかどうかです。
テック&AIハブ
もっと読む

Home AssistantはLAN接続とリモート接続でなぜパフォーマンスが異なるのですか?
LAN接続とリモート接続のHome Assistantセッションではネットワーク経路が異なります。リモート接続では、DNS、暗号化、WAN、プロキシやVPN、再接続処理による遅延が加わります。

Home AssistantはCGNATや二重NAT環境でも安定して動作しますか?
CGNATと二重NATは通常、ローカルでのHome Assistantの制御には影響しません。主に、リモートクライアントがホームネットワークへのインバウンド経路を確立する方法が変わります。

インターネット障害中、ネットワーク遅延はHome Assistantにどのような影響を与えるか?
インターネット接続の喪失とネットワーク遅延は異なる障害です。DNS、クラウド連携、ゲートウェイ、リモートクライアントが待機している間も、ローカルデバイスへの経路は高速なまま維持されることがあります。

