> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/deployment/ja/roboflow-cloud/serverless-api/serverless-video-streaming-api.md).

# サーバーレス動画ストリーミング

廃止された Serverless Video Streaming API のリファレンスと、管理されたライブカメラ向けの Cloud Streaming への移行。

{% hint style="info" %}
非推奨: 次を使用 [Cloud Streaming](/deployment/ja/roboflow-cloud/cloud-streaming.md) 新しい管理対象ライブカメラのデプロイ向け。既存の Serverless Video Streaming API 統合では、このページは引き続き利用できます。この非推奨は、終了日を告知するものでも、エンドポイントを削除するものでも、既存のサポート条件を変更するものでもありません。
{% endhint %}

## Cloud Streaming に移行

Cloud Streaming は、以下で説明するクライアント管理の WebRTC セッションではなく、登録済みソースと Workflow ジョブを使用します。移行は `api_url` 代替ではなく、2つのインターフェースは機能の同等性を保証しません。

1. [ソースを接続する](/deployment/ja/roboflow-cloud/cloud-streaming/connect-a-source.md)、ネットワーク上のカメラには Connector を使用するか、プレビュー用に一時的なカメラセッションを使用します。
2. [Workflow を実行する](/deployment/ja/roboflow-cloud/cloud-streaming/run-a-workflow.md)。限定的なプレビューか永続的なデプロイを選び、完了時には明示的に処理を停止してください。ビューアを閉じてもデプロイは停止しません。
3. [結果の利用側を更新](/deployment/ja/roboflow-cloud/cloud-streaming/consume-results.md)。WebRTC のデータチャネルのコールバックがそのまま引き継がれると想定するのではなく、ライブ動画の再生、"Latest Result" での JSON の確認、Workflow シンクを確認してください。
4. [料金と制限を確認](/deployment/ja/roboflow-cloud/cloud-streaming/pricing-and-limits.md)。Cloud Streaming には独自の GPU 処理料金とライフサイクルがあります。以下のレガシーなプラン名、リージョン、同時実行制限、請求開始ルールは再利用しないでください。

完了して結果を生成すべき保存済みファイルには、次を使用します [バッチ処理](/deployment/ja/roboflow-cloud/batch-processing.md)、ループするライブソースではありません。推論を自分のハードウェアで継続するには、次に進んでください [セルフホストの WebRTC](https://docs.roboflow.com/reference/inference/inference-sdk/webrtc).

## 概要

非推奨の Serverless Video Streaming API は、WebRTC を使用して Web カメラ、RTSP カメラ、または動画ファイルから Roboflow Cloud に動画をストリーミングします。1つのモデルまたは [ワークフローを](https://docs.roboflow.com/workflows) を実行し、処理済みフレームと予測データをアプリケーションで受け取れます。

モデルと Workflow の両方で Inference SDK の WebRTC クライアントを使用します。次を設定してください `api_url` を `https://serverless.roboflow.com`。同じクライアントは次でも動作します [セルフホストの Inference Server](/deployment/ja/self-hosted/inference-server.md) 。URL を変更した場合。

サポートされている入力ソース:

* Web カメラ: ブラウザーまたはデバイスのカメラ
* RTSP: IP カメラまたはその他の RTSP 対応ソース
* 動画ファイル: データチャネル経由でアップロードされた保存済み動画

Serverless が RTSP ソースに直接接続する場合、その URL は公開アクセス可能である必要があります。カメラがローカルネットワークでのみ利用可能な場合は、次を使用してください `LocalStreamSource` クライアントでキャプチャしてフレームを転送します。

## 仕組み

ストリーミングセッションを開始すると、SDK は Roboflow の API を呼び出して WebRTC 接続を初期化します。API は、Workflow を実行するサーバーレス関数を起動します。接続されると、データは 2 つの WebRTC チャネルを通って流れます:

### ビデオトラック

ビデオフレームを双方向にストリーミングします。Web カメラまたは動画ファイルからフレームを送信し、注釈付き/処理済みフレームを受け取ります。Video Track はリアルタイム表示向けに最適化されており、解像度を調整し、利用可能な帯域幅に応じてフレームをドロップすることがあります。接続が安定するにつれて品質が向上します。

WebRTC の輻輳制御により、品質と FPS が最大性能まで上がるまで最大 1 分かかることがあります。特に 1920×1080、30 FPS のような高解像度ではその傾向があります。

### データチャネル

構造化された推論結果を JSON メッセージとして送信します。これには、予測、座標、分類など、すべての Workflow 出力データが含まれます。Video Track とは異なり、Data Channel はライブカメラのフィードに追従するための最適化を行わず、信頼性が高く順序どおりの配信を提供します。動画ファイルを処理するには、データチャネル経由でファイルをアップロードし、同じ方法で結果を消費して動画全体を処理できます。

両方のチャネルを同時に使用できます。たとえば、注釈付き動画を表示しながら、アプリケーションで構造化された予測データも処理できます。

## リージョンと GPU プラン

これらの設定は非推奨 API にのみ適用され、Cloud Streaming には適用されません。次を指定してください `requested_region` と `requested_plan` レガシー設定で、ストリームがどこでどのように処理されるかを制御します。

リージョン: `us` （米国）、 `eu` （ヨーロッパ）、 `ap` （アジア太平洋）

レイテンシを最小限に抑えるため、ユーザーまたは動画ソースに最も近いリージョンを選択してください。

GPU プラン:

* `webrtc-gpu-medium`：ほとんどの Workflow に対するデフォルトかつ推奨設定
* `webrtc-gpu-small`：低コストです。Medium が用途に十分適していることを確認した後にお試しください。
* `webrtc-gpu-large`：SAM3 および SAM3 を使用する Rapid Models に必要です（約 5 FPS を想定）

## 同時実行制限

非推奨 API では、Workspace ごとの同時ストリーム数のデフォルト上限は 10 です。これは Cloud Streaming の制限ではありません。既存のレガシー統合については、サポートまたは営業担当にお問い合わせください。

## 料金

非推奨 API の料金は、選択した GPU プランに基づいて時間単位で請求されます。請求は、サーバーレス関数が起動し、WebRTC 接続が確立した時点で開始されます。これらのレガシーなルールは Cloud Streaming の価格を示すものではありません。新しいデプロイについては、次を参照してください [Cloud Streaming の料金と制限](/deployment/ja/roboflow-cloud/cloud-streaming/pricing-and-limits.md) および [現在の Cloud Streaming 料金表](https://roboflow.com/credits).

## SDK

### JavaScript

Web ブラウザーおよび React Native アプリケーション向け。

```bash
npm install @roboflow/inference-sdk
```

API キーをフロントエンドコードに公開しないでください。安全を保つためにバックエンドのプロキシエンドポイントを使用してください。

* [NPM パッケージ](https://www.npmjs.com/package/@roboflow/inference-sdk)
* [サンプルアプリケーション](https://github.com/roboflow/inferenceSampleApp)
* [ドキュメント](/deployment/ja/self-hosted/sdks/web-browser/web-inference-sdk.md)

### Python

Python アプリケーションでのモデルおよび Workflow 向け:

```bash
pip install inference-sdk[webrtc]
```

* [PyPI パッケージ](https://pypi.org/project/inference-sdk/)
* [WebRTC ストリーミング リファレンス](https://docs.roboflow.com/reference/inference/inference-sdk/webrtc)
* [サンプルスクリプト](https://github.com/roboflow/inference/tree/main/examples/webrtc_sdk) （Web カメラ、RTSP、動画ファイル）

## 設定

ストリーミングセッションを作成するときは、次を渡します `StreamConfig` オブジェクトを使用して動作を制御します:

* `stream_output`：Video Track 経由でストリーミングする Workflow 出力名のリスト
* `data_output`：Data Channel 経由で送信する Workflow 出力名のリスト
* `requested_plan`：GPU プラン（上記参照）
* `requested_region`：リージョンコード（`us`, `eu`、または `ap`)
* `realtime_processing`：もし `True` （デフォルト）、処理が追いつかない場合はフレームをドロップします
* `workflow_parameters`：Workflow に渡すパラメーターの辞書

## コードなしで試す

現在の Web アプリのフローについては、次に従ってください [Cloud Streaming クイックスタート](/deployment/ja/roboflow-cloud/cloud-streaming/quickstart.md)。上記のレガシーな SDK 設定は、現在のアプリのコントロールを説明していません。
