**FFmpeg‑over‑IP – リモート FFmpeg サーバーへの接続**

2026/03/11 3:26

**FFmpeg‑over‑IP – リモート FFmpeg サーバーへの接続**

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

Summary:

本プロジェクトは、ハードウェアのパススルーや共有ファイルシステムを必要とせずにリモートホスト上でGPUアクセラレーション付きffmpegを実行する簡単な方法を提供します。「ffmpeg‑over‑IP」サーバを起動することで、クライアントは1つのTCPポート経由でffmpegコマンドを送信し、すべてのファイルI/Oはトンネル化されるため、NFS/SMBマウントや権限に関する問題が解消されます。NVENC、QSV、VAAPIなど一般的なGPU APIをカバーした事前ビルドされたバイナリが用意されているので、ユーザーは別途ffmpegバージョンをインストールする必要がありません。従来の方法では複雑なランタイムフラグ(

--runtime=nvidia
)やPCIeパススルー、または精巧なネットワーク共有に頼っていましたが、本ソリューションはそれらの障壁を回避します。アーキテクチャは修正されたffmpegレイヤーとローカル実行を模倣するIPサーバを使用し、各クライアントは独自のパッチ付きプロセスを生成して分離します。将来のリリースではバイナリ配布を継続し、プラットフォームサポートを拡大し、認証/設定オプションを追加する予定です(クイックスタート、アップグレード、Docker、トラブルシューティングドキュメント参照)。このアプローチにより、開発者、CI/CDパイプライン、およびクラウドサービスは、追加のハードウェア設定や共有ストレージなしで任意のマシン上でGPU集約型メディアタスクを実行でき、インフラ構成と保守コストが削減されます。

Summary Skeleton

What the text is mainly trying to say (main message)
本プロジェクトは、GPUパススルーや共有ファイルシステムを必要とせずにリモートホスト上でGPUアクセラレーション付きffmpegを実行する方法を提供します。これは、単一のTCPポート経由でコマンドを転送するffmpeg‑over‑IPサーバを走らせることで実現されます。

Evidence / reasoning (why this is said)

  • 従来のアプローチでは複雑なランタイムフラグ、デバイスマウント、PCIe/SR‑IOVパススルー、またはNFS/SMBに伴うパスと権限の問題が必要でした。
  • 本ソリューションはファイルI/Oをクライアントへトンネル化するため、共有ファイルシステムは不要です。
  • 事前ビルドされたバイナリはNVENC、QSV、VAAPIなど多くのGPU APIをサポートし、別途ffmpegをインストールする必要がありません。

Related cases / background (context, past events, surrounding info)

  • 既存手法では
    --runtime=nvidia
    、デバイスマウント、または精巧なネットワーク共有を使用します。
  • 本プロジェクトのアーキテクチャは修正されたffmpegレイヤーとローカル実行を模倣するIPサーバに基づいています。
  • マルチクライアント対応は各セッションごとに分離されたパッチ付きプロセスを生成することで達成されます。

What may happen next (future developments / projections written in the text)
将来のリリースでは、事前ビルドバイナリの配布を継続し、プラットフォームカバー範囲を拡大し、認証と設定オプションを強化する予定です(クイックスタート、アップグレード、Docker統合、およびトラブルシューティングドキュメントで詳細に説明)。

What impacts this could have (users / companies / industry)
ユーザーはハードウェアパススルーや共有ストレージなしで任意のマシン上でGPUアクセラレーション付きメディア処理を実行でき、開発者、CI/CDパイプライン、およびクラウドサービスにとって展開が簡素化されます。企業はインフラ構成の複雑さを削減し、スケーリングを容易にし、ビデオワークフローでの保守コストを低減できます。

本文

GPU を使った transcoding を、Docker コンテナ・VM もしくはリモートマシンから、GPU パススルーや共有ファイルシステムを必要とせずに利用できるようにする方法です。

問題点

GPU による transcoding は非常に高速ですが、GPU を使うための設定が煩雑です:

  • Docker コンテナ
    --runtime=nvidia
    が必須で、デバイスマウントやホストとコンテナ間のドライババージョンを合わせる必要があります。
  • 仮想マシン (VM)
    PCIe パススルーまたは SR‑IOV が必要で、設定が複雑です。また GPU は一つの VM に固定されます。
  • リモートマシン
    NFS/SMB の共有ファイルシステムを利用し、パスのマッピングやマウント管理、権限設定などの手間があります。

メディアサーバーは GPU を transcoding に使いたいだけで、インフラ構成まで変えたくないケースがほとんどです。

解決策

ffmpeg‑over‑ip サーバーを GPU が搭載されている任意のマシンに設置し、クライアント側は

ffmpeg
の代わりに クライアントバイナリ
ffmpeg-over-ip-client
)を呼び出します。
クライアントは
ffmpeg
を装い、引数をサーバーへ転送し、サーバー側のパッチ済み ffmpeg はすべてのファイル I/O を TCP 接続経由でクライアントに戻します ― つまりサーバー上にはファイルが作成されません。

CLIENT (ファイルあり, GPUなし)          SERVER (GPUあり)
========================              ===========================
メディアサーバーは "ffmpeg" を呼び出す   デーモンが :5050 で待機
        |                                 |
  ffmpeg-over-ip-client             ffmpeg-over-ip-server
        |                                 |
   +----- TCP 接続 -----------------+
        |                                 |
ローカルファイルシステム (実際のファイル)      パッチ済み ffmpeg
                                      (I/O がクライアントへ戻る)

GPU パススルー、共有ファイルシステム、NFS/SMB は不要です。
単一 TCP ポートだけで完結します。

リリースには広範なハードウェアアクセラレーション (NVENC, QSV, VAAPI, AMF, VideoToolbox 等) をサポートする 事前ビルド済みの ffmpeg / ffprobe バイナリが含まれており、両側に別途 ffmpeg をインストールする必要はありません。

クイックスタート

数分で動かし始めるには

docs/quick-start.md
を参照してください。

v4 からのアップグレード

移行ガイドと破壊的変更点については

docs/upgrading.md
をご覧ください。

設定

完全な設定リファレンスは

docs/configuration.md
(検索パス、サーバー/クライアントオプション、書き換え、ロギング、アドレス形式)に記載しています。

Docker

Docker の統合、Unix ソケットの設定、デバッグ手順は

docs/docker.md
をご確認ください。

動作概要

  1. メディアサーバーが通常の ffmpeg 引数で
    ffmpeg-over-ip-client
    を呼び出す。
  2. クライアントがサーバーに接続し、HMAC 認証付きでコマンドを送信する。
  3. サーバーはパッチ済み ffmpeg を起動し、ファイル読み書きをクライアントへトンネル化。
  4. stdout
    /
    stderr
    はリアルタイムで転送され、ffmpeg が終了するとクライアントも同じコードで終了する。

複数のクライアントが同時に接続可能で、それぞれ独自の ffmpeg プロセスを持ちます。

対応プラットフォーム

PlatformClientServer + ffmpeg
Linux x86_64
Linux arm64
macOS arm64
macOS x86_64
Windows x86_64

トラブルシューティング

よくある問題とデバッグ手順は

docs/troubleshooting.md
にまとめています。

ソースからのビルド

ビルド方法、テスト、プロジェクト構成については

CONTRIBUTING.md
を参照してください。

セキュリティ

  • 認証:HMAC‑SHA256(共有シークレット)で全てのコマンドを署名。
  • 単一ポート:サーバーのみがポートを待ち受け、クライアントはアウトバウンド接続のみ行う。

ライセンス

Split license –

LICENSE.md
を参照ください。fio 層と ffmpeg パッチ (
fio/
,
patches/
) は GPL v3(ffmpeg 由来)、その他全て MIT ライセンスです。

同じ日のほかのニュース

一覧に戻る →

2026/03/10 23:50

トニー・ホーア氏が亡くなられました。

## Japanese Translation: **改訂要約** トニー・ホアー(Turing Award受賞者で現代コンピューティングを形作った先駆者)は、2026年3月5日に英国ケンブリッジで92歳で亡くなりました。1934年1月11日生まれの彼は、古典文学と哲学を学び、国防サービス中に共同軍事語学学校(Joint Services School for Linguists)でロシア語を訓練し、その間にソビエト計算機と協力しました。ホアーの最も有名な業績はクイックソート、ALGOLプログラミング言語への貢献、およびホア論理(Hoare logic)の基礎化であり、これらが世界的に称賛されました。有名な逸話として、Elliott Brothers Ltdの上司と6ペンスを賭けてクイックソートが速いかどうかを挑戦したエピソードがあります。彼は勝ち、報酬を受け取りました。マイクロソフト・ケンブリッジ在籍中には、午後に地元のアーツピクチャハウスシネマ(Arts Picturehouse)を訪れることが多かったと述べています。また、彼はホラー映画や『グッド・ウィル・ハンタリング』などで描かれる天才像は非現実的だと指摘し、本物の専門知識には何年もの努力が必要だと主張しました。ホアーは将来のコンピューティング制限は公衆の認識を超える可能性があると警告し、暗号技術や量子テクノロジーへの影響を示唆しました。そのユーモア、忍耐力、鋭い記憶力、そして謙虚さはアルゴリズム、プログラミング言語、ソフトウェア工学の実践、および広範な研究コミュニティに永続的な影響を残しました。

2026/03/11 7:33

U+237C ⍼ は方位角です。

## Japanese Translation: 記事は、あまり知られていない文字「⍼」を調査し、中世20年代のドイツ語フォントカタログに数例登場するものの、それ以前の記録には存在しないことを指摘しています。最も顕著な証拠は1950年のH. Berthold AG シンボルカタログで、⍼が明示的に「Azimut/Richtungswinkel」(方位角・方向角)とラベル付けされている点です。1949–1952 年の Zeichenprobe および Schriftprobe 系列のコピーにはすべてこの文字が含まれていますが、1909 年の Hauptprobe や 1900 年の Schriftproben のようなそれ以前のカタログでは言及されていません。全ページスキャンにより、これら中世20年代の資料での存在とその他の場所での欠如が確認されています。Mastodon ユーザーは、この形状がセクスタントを通過する光線に似ていると指摘し、航海関連の起源を示唆しています。この記事は、⍼ が水上用記号として意図されたものかどうか、およびフォント版でどのように進化したかをさらに研究すべきだと結論付けています。この明確化は、タイポグラフィー史家、歴史的字体を参照するデザイナー、および遺産文書を扱う航海関連業界に有益となるでしょう。

2026/03/11 7:27

クラウドフレア クローラ エンドポイント

## Japanese Translation: **サマリー** Cloudflare の Browser Rendering サービスは、オープンベータ版の `/crawl` エンドポイントを公開しました。これにより、単一の API コールでウェブサイト全体をクロールできます。 - **仕組み:** POST リクエストで開始 URL と任意の設定(depth、page limits、ワイルドカードパターン、`render: false` 等)を送信します。サービスは sitemap やリンクから自動的にページを発見し、ヘッドレスブラウザでレンダリング(または `render: false` の場合は静的 HTML を取得)して結果を非同期で返します。 - **非同期ワークフロー:** ジョブ ID が返され、その後 GET エンドポイントをポーリングして処理済みページを raw HTML、Markdown、または構造化 JSON として取得できます。 - **主な機能:** - 複数の出力形式(HTML、Markdown、JSON) - depth とワイルドカードベースのスコープ制御 - `modifiedSince`/`maxAge` による増分クロール - `robots.txt` の crawl‑delay ディレクティブへの対応 - Workers Free および Paid プランの両方で利用可能 - **インパクト:** 開発者はプログラム的にサイトコンテンツを取得でき、分析チームは構造化ページデータを収集し、SEO ツールは効率的にサイトをインデックスできます。さらに、従来のクローラに代わる低コストなオルタナティブとして、ウェブクロールエコシステム全体にも貢献します。 このバージョンでは、Key Points List の主要ポイントすべてを保持しつつ、メインメッセージを明確かつ曖昧さのない表現にしています。

**FFmpeg‑over‑IP – リモート FFmpeg サーバーへの接続** | そっか~ニュース