このプロジェクトについて

Castorは、埋め込み動画を含む任意のWebページをテレビでキャスト可能なストリームに変換するGo製コマンドラインユーティリティです。画面ミラーリングとは異なり、実際のメディアストリームを抽出し、ディスプレイの性能に合わせてトランスコードし、リアルタイムで送信します。これにより、画面キャプチャの圧縮ではなく品質を保ちます。 ヘッドレスChromeインスタンスを起動し、Chrome DevTools Protocolを通じてネットワークトラフィックを監視し、自動化されたアクションパイプラインを実行します。ページのクリック、最大のiframeへの移動、再生をトリガーするためのフォールバックとしての再クリックを行います。このアプローチは自動再生を許可するページでは機能しますが、すべての環境で成功するとは限りません。 対応するキャスティングプロトコルには、DLNA/UPnP(Samsung、LG、Sony、Panasonic、Philips、Hisense、TCL、VIZIO、Sharp TV、さらにKodi、VLC、Plexなどのプレーヤーと広く互換)、Chromecast(実験的)、Roku(RokuのExternal Control Protocolを使用するサイドロードチャンネル経由)が含まれます。 このツールは直接コマンドインターフェースと対話型TUIブラウザ(`castor cast`)の両方を提供します。後者では、TMDB APIキーを使用してタイトルを検索し、ユーザー設定のソースに対して解決します。ソーステンプレートにより、ユーザーは使用権限のある任意の埋め込み可能な動画サービスを接続できます。 追加機能には、Whisperを使用して動画に焼き込まれる自動文字起こし字幕、`max_height`による解像度上限、配信モード(リレー対デバイスフェッチ)の設定が含まれます。DockerでGPUパススルーを使用して実行する場合、IntelでのVA-APIによるハードウェアトランスコーディングがサポートされます。 インストールはmacOSではHomebrew、ビルド済みDockerイメージ(`ghcr.io/stupside/castor`)、またはGo 1.26+でのソースからのビルドで利用可能です。必要な依存関係はChrome/Chromium、ffmpeg 7.1+、ffprobe 7.1+です。プロジェクトはMITライセンスで、DRM処理や著作権保護されたコンテンツの配布を明示的に否認しており、ユーザーが指定したもののみをキャストします。