>_ DevTrendsja

言語

ホーム

言語

セクション

フロントエンド バックエンド モバイル DevOps AI / ML ゲーム開発 ブロックチェーン 組み込み セキュリティ
Rust

Jellium Desktop — Electronの遅延なしで本格的なJellyfinプレイヤーが欲しいときに

Jellyfinでホームメディアサーバーを運用している場合、クライアント選択のジレンマに直面したことがきっとあるでしょう。公式デスクトップアプリは往々にして肥大化了しており、Webブラウザで閲覧する場合はコーデックや字幕の互換性で常に妥協が必要です。そんな中、最近見つけたJellium Desktopというプロジェクトが、シンプルだが効果的な方法で这些问题を解決しようとしています。

開発者はハイブリッドアプローチを採用しています:インターフェースにはChromium Embedded Framework(CEF)を、ビデオ再生にはmpvを使用するという構成です。その结果是、Webで見慣れたJellyfinのネイティブインターフェースのような外观ながら、世界で最も強力なオープンソースエンジンの一つを通じて動画を再生できる、非公式クライアントです。

ブラウザがあるのに、なぜ必要なのか

Webベースのメディアプレイヤーの主な 문제는、フォーマット対応の制限です。ブラウザは気まぐれで、HEVCを嫌がり、オーディオフォーマットに混乱し、サーバーにオンザフライでのトランスコードを强制することが多いです。これによりサーバーのCPUに余計な负荷がかかり、画像品質も低下します。

Jellium Desktopはデコードのタスクをクライアント側に移します。内部でmpv 덕분에、このプレイヤーは事実上どんなフォーマットでも处理できます。インターフェースは熟悉的で、Webで見慣れた同じJellyfin UIですが、余計なブラウザの枠組みはなく、適切なシステム統合がされています。

内部での動作仕組み

このプロジェクトはRustで書かれており、一般的なElectronビルドよりも高性能なものを作ろうという试みがすでに窥えます。架构は两个方面に分かれています:

  1. インターフェース層。CEFを使用します。これにより、元のJellyfinデザインの完全な互換性が保たれます。サーバーで設定したすべてのポスター、説明、エピソードリストが手に入ります。
  2. プレイヤー。標準のHTML5プレイヤーの代わりに、mpvが呼び出されます。これにより、ハードウェアアクセラレーション、適切なHDRサポート、そして多くの他のプレイヤーが苦労する複雑なアニメ字幕(ASS/SSA)の正しいレンダリングが可能になります。

興味深いことに、開発者はビルド管理にjustを使用しています。これはソースからプロジェクトをコンパイルするのを简单化する、makeの現代的な代替手段です。

Jellium Desktopできること

非公式クライアントにもかかわらず、このプロジェクトはすでに日常使用にもかなり实用可能です。注目したいポイントをいくつか紹介します:

  • クロスプラットフォーム。Windows、Linux、macOS用のビルドが利用可能です。IntelとARMの両方のプロセッサがサポートされています(Apple Silicon)。
  • ネイティブ動画処理。ブラウザがオーディオフォーマットを理解できなくてトランスコードする必要はありません。
  • 軽量。Electronベースの公式Jellyfin Media Playerよりもレスポンスが良い的感觉です。

ちなみに、macOSユーザーは小さな注意点があります:インストール後、ターミナルから隔離属性を手動で削除する必要があります。これは署名なしソフトウェアでは標準的な操作ですが、初めて使う人は混乱するかもしれません。コマンドは簡単です:sudo xattr -cr /Applications/Jellium\ Desktop.app

切换えるべきか

Jellium Desktopが他のすべてのクライアントの「キラー」だと想说いません。若いプロジェクトによくある粗削りな部分是あります。例えば、現在リポジトリには適切な数の未解决イシューがあり、アクティブな改良段階であることが窥えます。

このプロジェクトが絶対に向いている人:

  • 4Kコンテンツのトランスコードに対応できない低性能サーバーの所有者。
  • 外部字幕を使用するアニメファンや映画視聴者。
  • Rustを欣赏し、Jellyfinのクライアント開発における代替ブランチをサポートしたい人。

ブラウザでの動画のカクつきやサーバーのファンが回り出すのに疲れているなら、Jelliumを試してみてください。約束したことを正確に実行する堅実なツールです:不必要な中介者を介さずに、ただコンテンツを再生します。

ソースコードの確認やバイナリのダウンロードは、プロジェクトリポジトリで行うことができます。

関連プロジェクト