---
title: "Amazon IVS（Interactive Video Service）とは？低遅延配信・ステージ・チャットの仕組みと料金"
url: "https://www.issoh.co.jp/tech/details/9696/"
published: 2025-11-07
updated: 2026-10-25
categories: ["AWS"]
publisher: "株式会社一創"
---

# Amazon IVS（Interactive Video Service）とは？低遅延配信・ステージ・チャットの仕組みと料金

Amazon IVS（Amazon Interactive Video Service）は、Twitchと同じ技術を土台にしたAWSのマネージドなライブ配信サービスです。2020年7月15日に提供が始まりました。配信ソフトから映像を送ると、トランスコードから世界中への配信までをIVSが引き受けるので、自社のWebサイトやアプリの中にライブ映像を埋め込めます。この記事では、IVSの3つの機能と遅延の目安、4つのチャネルタイプ、日本の視聴者にかかる料金の仕組み、そしてMediaLiveなど他の選択肢との使い分けを、AWSの公式ドキュメントとPrice List APIの値をもとに整理します。

なお「IVS」という略称は、Unicodeの漢字異体字シーケンス（Ideographic Variation Sequence）やスタートアップ向けカンファレンスの名称にも使われます。本記事で扱うのはAWSのサービスです。

## まとめ

- IVSは「チャネル（Low-Latency Streaming）」「ステージ（Real-Time Streaming）」「チャット（Chat）」の3機能で構成され、遅延の目安はチャネルが5秒未満、ステージが300ミリ秒未満です。
- チャネルタイプはSTANDARD・ADVANCED\_HD・ADVANCED\_SD・BASICの4種類です。入力単価は1時間あたり0.20〜2.00 USDで、STANDARDはマルチトラック入力にすると2.00 USDから0.50 USDに下がります。
- 視聴側の料金は、チャネルを作ったリージョンではなく視聴者が接続したサーバーの地域で決まります。日本・香港・東南アジアの課金地域でHD画質を1時間届けると、1人あたり0.092 USD（月間最初の1万時間）です。
- 東京リージョン（ap-northeast-1）を含む7リージョンで利用できます。取り込みと再生はリージョンをまたいで世界中から行えます。
- DRM（コンテンツ暗号化）には対応していません。再生を絞る手段は、署名付きトークンのプライベートチャネルと、国・ドメインで制限する再生制限ポリシーの2つです。DRMやSCTE-35マーカーを扱う放送型の案件は、MediaLiveとMediaPackageの構成を選びます。

## Amazon IVSの3つの機能と遅延の目安

IVSは用途の違う3つの機能の集まりです。どれを使うかで、遅延、同時に出演できる人数、課金の単位がすべて変わります。

| 機能                    | リソース    | 遅延の目安    | 取り込み                           | 課金の単位     |
| --------------------- | ------- | -------- | ------------------------------ | --------- |
| Low-Latency Streaming | チャネル    | 5秒未満     | RTMP / RTMPS / SRT             | 入力時間＋出力時間 |
| Real-Time Streaming   | ステージ    | 300ミリ秒未満 | Broadcast SDK / WHIP / RTMP(S) | 参加者時間     |
| Chat                  | チャットルーム | 対象外      | WebSocket                      | 送信数＋配信数   |

ここでいう遅延（レイテンシー）は、カメラが映像を捉えてから視聴者の画面に映るまでの時間です。AWSは、従来型のOTT配信ではこれが最大30秒に達することがあるとしたうえで、5秒未満を「低遅延（Low latency）」、300ミリ秒未満を「リアルタイム」と呼び分けています。「低レイテンシーストリーミング」は、この数十秒の遅れを数秒まで縮めた配信のことで、視聴者のコメントや投票に配信者がその場で応えられるかどうかの境目になります。実際に得られる遅延は、配信者と視聴者の地理的な位置、回線の種類と速度、配信ソフトの設定、使うプロトコルによって変わります。応答時間やRTTを含むレイテンシー全般の測り方は[レイテンシーとは？レスポンスタイム・スループットとの違いと測定方法・目安](/column/details/7053/)で扱っています。

### チャネル（Low-Latency Streaming）：1対多の配信

チャネルは、1人の配信者から多数の視聴者へ流す用途の機能です。OBS Studioなどのエンコーダーから`RTMPS`か`SRT`で映像を送り、視聴者はIVSのプレイヤーで再生します。IVSのFAQは遅延を「5秒未満、条件次第で3秒未満」と説明しています。

ただし、この低遅延を得るにはAmazon IVSプレイヤーが必要です。AWSは性能を保証できるのはIVSプレイヤーだけだとしています。BASICとSTANDARDのチャネルでiOS Safariを含むサードパーティのプレイヤーを使う場合、エンコーダーのキーフレーム間隔を2秒以下にし、取り込みURLに`?keyframeInterval=2`を付ける設定で、約10秒まで短縮できるというのが公式の目安です（ADVANCED系のチャネルはキーフレーム間隔が自動で生成されるため、この指定は不要です）。iOS Safariでは、IVSプレイヤーにサービスワーカーを組み合わせた構成で約6〜8秒が公式の目安です。自社で使っているHLSプレイヤーをそのまま流用する計画なら、遅延の前提を先に確認してください。

### ステージ（Real-Time Streaming）：複数人の双方向配信

ステージは、出演者同士が300ミリ秒未満の遅延で映像と音声をやりとりする機能です。ゲストを画面に招く、2人の配信者が対戦する、音声だけのルームを開く、といった使い方が公式に例示されています。

既定のクォータ（出典：[IVS Real-Time Streamingのサービスクォータ](https://docs.aws.amazon.com/ivs/latest/RealTimeUserGuide/service-quotas.html)）では、1つのステージで同時に映像を送れる出演者（パブリッシャー）は12人まで、受信する参加者（サブスクライバー）は既定で1万人までです。受信者の上限は引き上げを申請でき、AWSは2万5,000人を超える視聴者にも対応できると説明しています。一方、出演者の12人と、送信できる映像の解像度の上限（720p）は引き上げできません。1人の参加者が送信・受信を続けられるのは24時間までなので、終日つなぎっぱなしの配信では再接続の処理を組み込みます。さらにリージョン全体で、出演者と受信者の間の同時接続数（既定2万）にも上限があります。出演者が4人いるステージを5,000人が受信すれば接続は2万本になるため、受信者の人数だけでなく「出演者数×受信者数」で見積もってください。参加者は原則としてIVSのBroadcast SDK（iOS・Android・Web）で接続しますが、OBS StudioなどからWHIPやRTMPで送り込む方法も用意されています。

ステージの録画は2通りです。出演者ごとの映像を別々にS3へ保存する「個別参加者録画」と、サーバー側合成で全員を1つの画面にまとめてから保存する「合成録画」で、後から編集するなら前者、そのままアーカイブ公開するなら後者が向きます。個別参加者録画の保存先S3バケットは、ステージと同じリージョンに作る必要があります。個別参加者録画にはIVSの追加料金がかからず（S3の保存・リクエスト料金のみ）、合成録画にはサーバー側合成の料金（後述）が加わります（出典：[IVS Real-Time Streamingの録画](https://docs.aws.amazon.com/ivs/latest/RealTimeUserGuide/rt-recording.html)）。

### チャット（Chat）：映像と独立したメッセージ基盤

IVS Chatは、ライブ映像の横に置くマネージドなチャットです。チャットルームの作成や管理はHTTPSのAPIで、メッセージの送受信はWebSocketのAPIで行います。映像の機能と組み合わせなくても単独で使えるため、既存の配信基盤にチャットだけを足す選択もできます。

メッセージの内容をLambdaで検査してから配信する仕組み（`messageReviewHandler`）もルーム単位で設定できます。コメントのNGワード処理をサーバー側で済ませたい場合に使います。

## IVSの仕組み：配信経路はグローバル、管理はリージョン単位

IVSでは、配信経路（データプレーン）と管理操作（コントロールプレーン）の範囲が違います。映像の取り込みと視聴はグローバルです。配信者が送った映像はその近くの拠点で自動的に取り込まれ、視聴者はIVSのコンテンツ配信ネットワークを通じて世界中から再生できます。一方、チャネルやストリームキー、再生認可のキーペア、録画設定といったリソースはリージョンに属します。東京リージョンで作ったチャネルは、東京リージョンのコンソールかAPIからしか操作できません。

### 取り込み・再生URLに出る「live-video.net」

チャネルを作ると、取り込み先として`a1b2c3d4e5f6.global-contribute.live-video.net`のような`ingestEndpoint`が払い出されます。OBSに入れるサーバーURLは`rtmps://a1b2c3d4e5f6.global-contribute.live-video.net:443/app/`の形式で、SRTを使う場合は`a1b2c3d4e5f6.srt.live-video.net`のポート9000に送ります。

再生URL（`playbackUrl`）も同じドメインで、`https://<ID>.<リージョン>.playback.live-video.net/api/video/v1/<リージョン>.<アカウントID>.channel.<チャネルID>.m3u8`のようなHLSのプレイリストです。

ブラウザの開発者ツールやファイアウォールのログに`live-video.net`というドメインが出てきたら、それはIVSの取り込みや再生の通信です。社内ネットワークから配信・視聴できないときは、このドメインへの通信がプロキシで止められていないかを最初に確認します。

### 利用できる7つのリージョン

2026年10月時点で、チャネル・ステージ・チャットのAPIはいずれも次の7リージョンで提供されています。米国東部（バージニア北部）、米国西部（オレゴン）、アジアパシフィック（ムンバイ）、アジアパシフィック（ソウル）、アジアパシフィック（東京）、欧州（フランクフルト）、欧州（アイルランド）です。

日本向けのサービスなら東京リージョン（`ap-northeast-1`）にリソースを作ればよく、後述のとおり料金もリソースのリージョンでは変わりません。リージョンを選ぶ基準は、主に監視・連携する他のAWSリソース（S3やLambda）をどこに置くかです。

## チャネルタイプ4種類の違い

チャネルを作るときに選ぶチャネルタイプで、IVS側が映像をトランスコードするか、最高何pまで配信するか、入力料金がいくらかが決まります。既定はSTANDARDです。

| タイプ               | 処理       | 最高出力  | 入力上限           | 入力単価（1時間） |
| ----------------- | -------- | ----- | -------------- | --------- |
| STANDARD（単一トラック）  | トランスコード  | 1080p | 8.5 Mbps       | 2.00 USD  |
| STANDARD（マルチトラック） | トランスマックス | 1080p | 15 Mbps        | 0.50 USD  |
| ADVANCED\_HD      | トランスコード  | 720p  | 8.5 Mbps       | 0.85 USD  |
| ADVANCED\_SD      | トランスコード  | 480p  | 8.5 Mbps       | 0.50 USD  |
| BASIC             | トランスマックス | 入力と同じ | 1.5 / 3.5 Mbps | 0.20 USD  |

トランスコードするタイプは、入力から複数の画質（ABRラダー）を作り、視聴者の回線に合わせて切り替えます。BASICはトランスマックスなので、入力した画質の1本だけがそのまま届きます。BASICでは回線の細い視聴者が画質を落として受け取る選択肢がない点に注意してください。BASICの入力上限は、480p以下なら1.5 Mbps、480p超なら3.5 Mbpsです。上限を超えると、AWSのクォータ表は「ストリームはおそらく即座に切断される」と書いています。

ADVANCED系の2タイプは、帯域を抑えるプリセット（`CONSTRAINED_BANDWIDTH_DELIVERY`）と画質を優先するプリセット（`HIGHER_BANDWIDTH_DELIVERY`、既定）を選べます。AWSは、視聴者の回線が細い場合や、話者が映るだけのような動きの少ない映像では前者を、フラッシュや素早い場面転換が多い映像では後者を勧めています。迷ったら両方で配信テストをして、動きの多い場面でブロックノイズが出ないかを比べます。

### STANDARDのマルチトラック入力による入力料金の削減

マルチトラックビデオは、配信者のPCのGPUで複数の画質を同時にエンコードしてIVSへ送る方式です。IVS側でのトランスコードが不要になるため、STANDARDチャネルの入力単価が2.00 USDから0.50 USDに下がります。OBS Studioのように対応した配信ソフトは、IVSの`GetClientConfiguration`というAPIからエンコード設定を自動で受け取るので、配信者がビットレートや解像度を手で決める必要もありません。ただしAWSのセットアップ手順がFULL\_HD配信の推奨構成として挙げているのは、Windows 10または11上のOBS Studio 30.2以降、NVIDIA GeForce 900シリーズ以降（ドライバー545.92以降）かAMD Radeon RX 6000/7000シリーズ以降のGPU、上り12 Mbpsの持続帯域です。チャネル側もコンテナ形式を`FRAGMENTED_MP4`に切り替える必要があり、これはライブ配信とS3録画の両方のファイル形式を変えます。Macで配信する運用なら単一トラック前提で料金を見積もってください。

フルHDでABR配信をしたいなら、単一トラックのSTANDARDで毎時2.00 USDを払う前に、配信者側の環境がマルチトラックに対応できるかを確認します。入力1時間あたりの差は1.50 USDです。OBSからの具体的な設定値は[AWSとOBSでライブ配信基盤を構築する手順](/tech/details/5663/)にまとめています。

## Amazon IVSの料金の仕組み

IVSの料金は機能ごとに課金の単位が違います。チャネルは「配信者が送った時間」と「視聴者に届けた時間」、ステージは「出演者と視聴者が接続していた時間」、チャットは「メッセージの数」です。ここでは料金の構造を示し、MediaLive構成との損益分岐の試算は前述の実装記事に譲ります。

### チャネルの出力料金と接続先地域による単価差

チャネルの出力料金は、視聴者が接続したIVSのサーバーの地域で決まります。料金ページには、課金地域は「チャネルを作成したリージョンや、映像を取り込んだ場所ではない」と明記されています。東京リージョンのチャネルでも、北米の視聴者には北米の単価がかかります。

| 視聴者の地域      | SD         | HD        | フルHD      | 音声のみ       |
| ----------- | ---------- | --------- | --------- | ---------- |
| 日本・香港・東南アジア | 0.046 USD  | 0.092 USD | 0.184 USD | 0.0092 USD |
| 北米・欧州       | 0.036 USD  | 0.072 USD | 0.144 USD | 0.0072 USD |
| 韓国          | 0.0625 USD | 0.125 USD | 0.250 USD | 0.0125 USD |

いずれも視聴者1人が1時間見た場合の単価で、月間最初の1万時間の段階です（出典：[Amazon IVSの料金](https://aws.amazon.com/ivs/pricing/)、AWS Price List APIで2026年9月27日に照合）。1万時間を超えると段階的に下がり、日本のHDなら50万時間超で0.062 USDになります。日本の単価は北米の約1.28倍です。入力は分単位、出力は秒単位で切り上げて計量されます。

例として、ADVANCED\_HDチャネルで1時間配信し、日本の視聴者100人が全員HD画質で最後まで見た場合を計算します。入力が0.85 USD、出力が100人×0.092 USDで9.20 USD、合計10.05 USDです。これは全員がHD画質を受け取り、日本・香港・東南アジアの課金地域に接続した場合の値です。回線状況によってSD画質に切り替わった視聴時間はSDの単価（0.046 USD）で計算されるため、その分だけ出力は下がります。視聴者が増えると出力が支配的になる、というのがIVSの料金の基本的な形です。

### ステージとチャットの課金

ステージは、出演者も視聴者も区別なく「参加者時間」で課金されます。日本の単価は月間最初の1万時間で1参加者1時間あたり0.092 USDで、音声だけの参加者はその10分の1の0.0092 USDです。4人の出演者と96人の視聴者が1時間ステージに接続していれば、100参加者時間で9.20 USDになります。ステージの映像をチャネルへ流すとき、サーバー側で画面を合成すると1レンディションあたり1時間0.15〜0.60 USDの合成料金が加わります（クライアント側で合成すれば合成料金はかかりません。どちらの方法でも、送り先チャネルの入力料金と出力料金は通常どおりかかります）。

チャットは、送信されたメッセージ1,000件あたり0.56 USD、配信されたメッセージ1,000件あたり0.008 USDです。配信数は「送信数×接続中のユーザー数」で数えるため、1,000人が接続したルームで2件送れば配信は2,000件になります。チャネルに映像を1時間入力するごとに、送信2,700件と配信27万件が無料で付く仕組みもあります。

### 無料利用枠と2025年7月15日以降の新規アカウント

IVSの料金ページには、新規アカウントが最初の12か月間、毎月BASICチャネルの入力5時間、SDまたは音声のみの出力100時間、参加者時間20時間、サーバー側合成5時間、チャットの送信13,500件と配信27万件を無料で使える枠が載っています。

ただし2025年7月15日以降に作成したアカウントは、AWS全体の新しい無料利用枠に移行しており、最大200 USDのクレジットが付与される形です。無料プランは作成から6か月、クレジットは12か月以内に使い切る必要があります。検証用にアカウントを作る場合は、どちらの枠が適用されているかを請求コンソールで確認してください。

## 録画・メタデータ・再生制限・広告の機能

チャネルには、配信そのもの以外に5つの周辺機能があります。どれもチャネルの設定かAPIで有効にします（再生認可だけは、トークンを署名する自社のサーバーが別途必要です）。

### S3への自動録画の保存先とイベント通知

録画設定（Recording Configuration）をチャネルに紐づけると、配信がHLS形式でS3に自動で保存されます。トランスコードで作られた複数の画質もそのまま記録されます。保存先は`/ivs/v1/<アカウントID>/<チャネルID>/<年>/<月>/<日>/<時>/<分>/<録画ID>`という配信ごとのプレフィックスで、時刻はUTCです。録画の開始と終了はEventBridgeのイベント（Recording Start・Recording End）で通知されるため、配信終了をきっかけにアーカイブ公開の処理を動かせます。録画設定の既定クォータはリージョンあたり20個で、引き上げを申請できます。

### 時間指定メタデータ（Timed Metadata）の用途と送信上限

`PutMetadata` APIで送った文字列は、映像の該当時刻に埋め込まれて視聴者のプレイヤーへ届きます。クイズの出題、商品の購入ボタン、投票の開始を映像と同じタイミングで表示する用途です。チャットと違い、映像の遅延ぶんだけ表示も遅れるので、映像と画面の表示がずれません。1回のペイロードは1KBまで、呼び出しは1チャネルあたり毎秒5回までです。

### プライベートチャネル（再生認可）

チャネルの再生認可を有効にすると、署名付きのJSON Web Token（JWT）を持つ視聴者だけが再生できます。トークンの署名には自社で保管するECDSAの秘密鍵を使い、IVSには対になる公開鍵を再生キーとして登録しておきます。IVSはその公開鍵で署名を検証します。コンソールで鍵ペアを作ると秘密鍵はその場で1回だけダウンロードされ、後から取り出せません。有料会員限定の配信に使う機能です。ステージ（Real-Time Streaming）にはこの再生認可の仕組みがなく、代わりに参加者ごとに発行する参加者トークン（既定の有効期間720分）で、誰が映像を送れるか・受け取れるかを制御します。

JWTで制御できるのは再生URLへのアクセスまでで、IVSはコンテンツの暗号化とDRMには対応していません。

### 再生制限ポリシー：国とドメインで視聴を絞る

トークンを発行するサーバーを用意せずに視聴を絞りたいなら、再生制限ポリシー（Playback Restriction Policy）を使います。公開チャネルのまま、再生を許す国（ISO 3166-1の2文字コード）と、再生を許すWebサイトのオリジンを指定できる機能です。「日本国内の視聴者だけ」「自社ドメインに埋め込んだプレイヤーからだけ」といった制限がこれで済みます（出典：[Undesired Content and Viewers in IVS](https://docs.aws.amazon.com/ivs/latest/LowLatencyUserGuide/undesired-content.html)）。

```
aws ivs create-playback-restriction-policy \
  --name jp-only \
  --allowed-countries JP \
  --allowed-origins "https://www.example.com" \
  --region ap-northeast-1

aws ivs update-channel \
  --arn arn:aws:ivs:ap-northeast-1:123456789012:channel/AbCdEf123456 \
  --playback-restriction-policy-arn "$POLICY_ARN" \
  --region ap-northeast-1
```

最初のコマンドのレスポンスにある`playbackRestrictionPolicy.arn`の値を、環境変数`POLICY_ARN`に入れてから2つ目を実行します。運用で知っておきたい挙動が3つあります。1つ目に、オリジンの制限は既定ではマルチバリアントプレイリスト（最初に読む`.m3u8`）だけにかかります。セグメントの取得まで含めて全リクエストを検査させるには`--enable-strict-origin-enforcement`を付けますが、その場合はブラウザ以外のクライアントもOriginヘッダーを送る必要があり、iOS Safariでは`video`要素に`crossorigin="anonymous"`を付けないとヘッダーが送られません。2つ目に、国の判定はサードパーティのIPアドレスデータベースによるもので、AWSが示す精度は99.8%です。3つ目に、国を判定できなかった視聴者には制限をかけずに映像を届けます。放映権の契約で地域外への配信が許されない場合は、この仕組みだけに頼れません。

同じページには、他人の配信を勝手に流す「再配信」への備えも書かれています。IVSはチャネルの同時視聴数（`ConcurrentViews`）を自動でCloudWatchへ送っているので、異常検知のアラームを1つ作れば急な視聴者の増加に気づけます。見つけたら`StopStream`で配信を止め、ストリームキーを作り直して再接続を防ぎます。誰でも配信を始められるプラットフォームを作るなら、出力料金が膨らむ前に止める仕組みとして最初から組み込んでおきます。

### サーバーサイド広告挿入の挿入方式とコンテナ形式の制約

IVSのチャネルは、AWS Elemental MediaTailorと連携したサーバーサイド広告挿入（SSAI）に対応しています。広告設定（`CreateAdConfiguration`）をチャネルに紐づけ、ミッドロールは配信中に`InsertAdBreak` APIで挿入します。ポストロールは広告設定で`--post-roll-configuration enabled=true,durationSeconds=30`のように有効化と長さ（秒）を両方指定した場合だけ、配信終了時に自動で入ります（省略すると無効）。このオプションは2026年7月に追加されたもので、それより古いAWS CLIでは使えません。広告は映像に直接つなぎ込まれます（出典：[IVS Server-Side Ad Insertion](https://docs.aws.amazon.com/ivs/latest/LowLatencyUserGuide/server-side-ad-insertion.html)）。

構成上の制約が1つあります。SSAIを使うチャネルはコンテナ形式をMPEG-TS（`TS`）にする必要があり、`FRAGMENTED_MP4`のチャネルに広告設定を紐づけると作成・更新がエラーになります。一方、前述のマルチトラック入力は`FRAGMENTED_MP4`が前提です。つまり、マルチトラックで入力料金を下げる構成と、IVSのSSAIは同じチャネルで併用できません。

## AWS CLIで最小構成を作る手順

コンソールでも数クリックでチャネルを作れますが、構成をコマンドとして残せるCLIでの例を示します。東京リージョンにADVANCED\_HDのチャネルを作る例です。

```
aws ivs create-channel \
  --name demo-channel \
  --type ADVANCED_HD \
  --latency-mode LOW \
  --region ap-northeast-1
```

レスポンスの`channel.ingestEndpoint`が取り込み先、`streamKey.value`がストリームキー、`channel.playbackUrl`が再生URLです。ストリームキーは配信の合鍵にあたるので、ソースコードやチャットに貼らないでください。チャネル1つに発行できるストリームキーは1つだけです。

再生URLを自社のページに埋め込むには、IVSのWebプレイヤーを読み込みます。次はAWSの導入手順にあるscriptタグ版に、再生ボタンを出す`controls`属性だけを足したもので、2026年10月時点の最新は1.57.0（2026年10月1日公開）です。`PLAYBACK_URL`を上の`playbackUrl`に置き換えてください。

```
<script src="https://player.live-video.net/1.57.0/amazon-ivs-player.min.js"></script>
<video id="video-player" playsinline controls></video>
<script>
  if (IVSPlayer.isPlayerSupported) {
    const player = IVSPlayer.create();
    player.attachHTMLVideoElement(document.getElementById('video-player'));
    player.load("PLAYBACK_URL");
    player.play();
  }
</script>
```

`playsinline`は、iOS Safariで全画面に切り替わらずページ内で再生させるために必要な属性です。音声付きの自動再生はブラウザーに止められることがあるため、その場合は視聴者が再生ボタン（`controls`）を押して始めます。npmで組み込む場合はパッケージ名`amazon-ivs-player`で、自社ドメインからプレイヤーのファイルを配信するときは、WebAssemblyのファイル（`amazon-ivs-wasmworker.min.wasm`）に`Content-Type: application/wasm`を返す設定が要ります。

エンコーダーを用意しなくても、FFmpegで動画ファイルを流せば疎通を確認できます。先にレスポンスの値を`INGEST_ENDPOINT`（`ingestEndpoint`の値）と`STREAM_KEY`（`streamKey.value`の値）という環境変数に入れ、手元のMP4を`sample.mp4`として置いてください。コマンドはAWSのドキュメントの例をもとに、ビットレートの指定を変えています。AWSの例は`-minrate 3000 -maxrate 3000`と単位なしで書かれており、FFmpegではこれが3,000 bpsと解釈されるため、映像の目標値を`3000k`（3 Mbps）にそろえ、VBVバッファ（`-bufsize`）を平均ビットレートと同じ`3000k`で加えました（AWSは低遅延のため、バッファが平均ビットレートを超えないよう求めています）。

```
ffmpeg -re -stream_loop -1 -i sample.mp4 \
  -r 30 -c:v libx264 -pix_fmt yuv420p -profile:v main -preset veryfast \
  -x264opts "nal-hrd=cbr:no-scenecut" -b:v 3000k -minrate 3000k -maxrate 3000k -bufsize 3000k -g 60 \
  -c:a aac -b:a 160k -ac 2 -ar 44100 \
  -f flv rtmps://$INGEST_ENDPOINT:443/app/$STREAM_KEY
```

`-g 60`は30fpsでキーフレーム間隔2秒を意味し、`-b:v`・`-minrate`・`-maxrate`を同じ値にして固定ビットレート（CBR）で送ります。実際に流したら、FFmpegのログに出るビットレートが3,000 kbps前後で安定しているかを確認してください。

配信中に次のコマンドを実行すると、メタデータが映像に埋め込まれます。ARNは`create-channel`のレスポンスにある`channel.arn`の値に置き換えます。画面にクイズを出すには、プレイヤー側でメタデータの受信イベント（Web版IVSプレイヤーなら`TEXT_METADATA_CUE`）を処理する実装も必要です。

```
aws ivs put-metadata \
  --channel-arn arn:aws:ivs:ap-northeast-1:123456789012:channel/AbCdEf123456 \
  --metadata '{"type":"quiz","id":1}' \
  --region ap-northeast-1
```

ステージの場合は、`aws ivs-realtime create-stage`でステージを作り、`create-participant-token`で参加者ごとのトークンを発行してBroadcast SDKに渡します。トークンの有効期間は分単位で指定し、最大20,160分（14日）です。

## 2020年から2026年までの主な機能追加

IVSは提供開始から機能の範囲が大きく変わったサービスです。2022年以前の解説記事やセミナー資料を読むと、今はできることが「できない」と書かれていることがあります。AWSのユーザーガイドのドキュメント履歴（[Low-Latency Streaming](https://docs.aws.amazon.com/ivs/latest/LowLatencyUserGuide/doc-history.html)・[Real-Time Streaming](https://docs.aws.amazon.com/ivs/latest/RealTimeUserGuide/doc-history.html)）に載った月で、主な追加を並べます。

| ドキュメント掲載 | 追加された機能                   |
| -------- | ------------------------- |
| 2021年4月  | S3への自動録画                  |
| 2022年4月  | IVS Chat                  |
| 2022年8月  | BASICが1080pまで対応（以前は480p）  |
| 2023年3月  | 複数ホスト（ステージAPIの初版）         |
| 2023年6月  | ADVANCED\_HD・ADVANCED\_SD |
| 2023年8月  | Real-Time Streamingとして独立  |
| 2023年11月 | サーバー側合成・合成録画              |
| 2024年1月  | 再生制限ポリシー（トークン不要の国・オリジン制限） |
| 2024年2月  | OBSからWHIPでステージへ送信         |
| 2024年4月  | SRTでの取り込み                 |
| 2024年6月  | ステージの個別参加者録画              |
| 2024年9月  | ステージへのRTMP取り込み            |
| 2024年11月 | マルチトラックビデオ入力              |
| 2026年4月  | サーバーサイド広告挿入（SSAI）         |

古い資料と照らし合わせるときに食い違いやすいのは3点です。チャネルタイプは2023年6月まではSTANDARDとBASICの2種類だけで、BASICの上限も2022年8月までは480pでした。複数人の出演（ステージ）は2023年3月以前の資料には出てきません。広告挿入は2026年4月にIVS自体の機能として加わったもので、それより前の資料にはIVSの広告挿入機能は出てきません。

## Twitch・MediaLive・Kinesis Video Streamsとの違い

IVSと名前や用途が近いサービスを、「誰が視聴者を管理するか」と「何を自分で組むか」の2軸で並べます。

| サービス                   | 位置づけ           | 視聴者の場所    | DRM | 構築の手間 |
| ---------------------- | -------------- | --------- | --- | ----- |
| Amazon IVS             | 組み込み型ライブ配信     | 自社サイト・アプリ | 非対応 | 小     |
| Twitch                 | 配信プラットフォーム     | Twitch上   | 対象外 | なし    |
| MediaLive＋MediaPackage | 放送品質の配信部品      | 自社サイト・アプリ | 対応  | 大     |
| Kinesis Video Streams  | デバイス映像の取り込み・保存 | 解析・監視用途   | 対象外 | 中     |

**Twitch**との違いは、視聴者を誰が抱えるかです。IVSのFAQによれば、Twitchは視聴者をプラットフォームへ送り込み、視聴者の管理もプラットフォームが担います。IVSは同じ技術を使いながら、視聴者を自社のサイトから外に出さずに配信する部品です。視聴者のコミュニティ作りや集客は自社で行う必要があります。

**MediaLive＋MediaPackage**は、エンコード、パッケージング、配信を別々のサービスとして組み合わせる構成です。DRM、SCTE-35マーカーによる広告の切り替え、HLSとDASHの同時出力、入力の二重化といった放送の要件に応えられる代わりに、CloudFrontを含めた設計と運用が必要になります。

**Kinesis Video Streams**は、カメラなどのデバイスから映像を取り込んで保存し、機械学習や監視に使うためのサービスです。多数の視聴者へ低遅延で届けることを目的にしたIVSとは用途が違います。

自前でWebRTCのSFUを立てる選択肢や、他社のリアルタイム配信SDKとの比較は、[WebRTCの仕組みとSFU選定](/tech/details/15817/)や[100ms.liveの料金と上限](/tech/details/8804/)で扱っています。

## IVSを選ぶべきでない5つの条件

IVSは取り込みから配信までをAWSが引き受けるマネージドサービスですが、次の条件に1つでも当てはまるなら、別の構成を検討したほうが後戻りが少なくなります。

- **DRMが必須**：IVSはコンテンツの暗号化とDRMに対応していません。権利者との契約でDRMが求められるならMediaLiveとMediaPackageで組みます。
- **13人以上が同時に映像を出す**：ステージのパブリッシャーは1つのステージにつき12人で、この値は引き上げできません。大人数のビデオ会議はIVSの守備範囲外です。
- **自社のHLSプレイヤーを変えられない**：5秒未満の遅延はIVSプレイヤーが前提です。BASIC・STANDARDのチャネルをサードパーティのプレイヤーで再生すると、設定を詰めても約10秒が公式の目安です（iOS SafariはIVSプレイヤーとサービスワーカーの構成で約6〜8秒）。
- **同時視聴が1.5万を超える見込みで、申請の時間がない**：同時視聴数の既定クォータはリージョンあたり1万5,000です。引き上げはできますが、大型イベントの直前では間に合わない可能性があります。
- **SCTE-35マーカーを自前のワークフローで扱う**：IVSの広告挿入は`InsertAdBreak` APIで広告枠を指示する方式です。放送機材や既存の広告システムから来るSCTE-35マーカーで広告を切り替える運用は、MediaLiveとMediaPackageの構成で組みます。

反対に、ライブコマースやクイズ番組、オンラインのオークションのように、視聴者の操作を映像とほぼ同時に反映させたい配信では、メタデータ、チャット、ステージを同じサービスのAPIで組み合わせられるIVSが第一候補になります。ライブ配信システム全体の設計を比較したい場合は、[ライブ配信システムの構築｜RTMP/SRT取り込みからLL-HLS配信・冗長化・費用設計まで](/tech/details/16498/)が参考になります。IVSとMediaLiveのどちらで組むかを含めて配信基盤の設計から任せたい場合は、一創の[動画配信システム開発](/service/system/vod/)でご相談を受けています。

## よくある質問

### Amazon IVSとTwitchは何が違いますか？

IVSはTwitchと同じ技術を使ったAWSのサービスで、視聴者を自社のサイトやアプリの中で抱えたまま配信できます。Twitchは視聴者をTwitch上に集めるプラットフォームで、視聴者の管理もTwitchが担います。

### Amazon IVSの料金はどのくらいかかりますか？

チャネルの場合、配信者側の入力が1時間0.20〜2.00 USD、視聴者側の出力が日本の視聴者1人1時間あたりHDで0.092 USDです（月間最初の1万時間）。ADVANCED\_HDで1時間、日本の視聴者100人がHDで見れば約10.05 USDです。

### Amazon IVSは日本（東京リージョン）で使えますか？

使えます。チャネル・ステージ・チャットのいずれも東京リージョン（ap-northeast-1）で提供されています。出力料金の課金地域は、リソースを作ったリージョンではなく、視聴者が接続したIVSの配信サーバーの場所で決まります。通常は視聴者に最も近い地域が選ばれますが、必ずそうなるとは限らないとAWSは説明しています。

### Amazon IVSの遅延は何秒ですか？

チャネルは5秒未満、ステージは300ミリ秒未満が公式の目安です。チャネルの5秒未満はAmazon IVSプレイヤーを使う前提です。iOS SafariではIVSプレイヤーにサービスワーカーを組み合わせて約6〜8秒、BASIC・STANDARDのチャネルをサードパーティのプレイヤーで再生する場合は設定次第で約10秒が公式の目安です。

### Amazon IVSで配信を録画できますか？

できます。チャネルに録画設定を紐づけると、配信がS3に自動保存されます。保存した録画はS3やCloudFrontからオンデマンド配信できますが、S3の保存料金とリクエスト料金は別にかかります。

## 関連記事

- [AWSとOBSでライブ配信基盤を構築する手順｜IVSとMediaLiveの選び方・東京リージョンの料金試算](/tech/details/5663/)
- [ライブ配信システムの構築｜RTMP/SRT取り込みからLL-HLS配信・冗長化・費用設計まで](/tech/details/16498/)
- [WebRTCとは？P2Pの仕組み・ICE/STUN/TURNからSFU選定・実装・運用判断まで実装者向けに解説](/tech/details/15817/)
- [CloudFrontの料金を実額で計算する：定額プラン4階層と従量課金の分岐点](/tech/details/17751/)
- [100ms.liveとは？WebRTC・HLSのライブ動画SDKの料金と上限、導入手順【2026年9月】](/tech/details/8804/)

---

出典: [Amazon IVS（Interactive Video Service）とは？低遅延配信・ステージ・チャットの仕組みと料金](<https://www.issoh.co.jp/tech/details/9696/>)（株式会社一創）
