Media Services ライブ イベント
警告
Azure Media Services は、2024 年 6 月 30 日に廃止されます。 詳細については、 AMS 廃止ガイドを参照してください。
Azure Media Services では、Azure クラウドで顧客にライブ イベントを配信できます。
ヒント
Media Services v2 API から移行する場合、 ライブ イベント エンティティは v2 の Channel を置き換え、 ライブ出力 は プログラムを置き換えます。
ライブ イベント
ライブ イベントは、ライブ ビデオ フィードを取り込んで処理します。 ライブ イベントを作成すると、取り込みエンドポイントが作成されます。 取り込みエンドポイントは、リモート エンコーダーからのライブ信号を使用します。 リモート ライブ エンコーダーは、 RTMP または Smooth Streaming (fragmented-MP4) 入力プロトコルを使用して、フィードを入力エンドポイントに送信します。 RTMP 取り込みプロトコルの場合は、コンテンツを平文で (rtmp://
)、またはワイヤ上で安全に暗号化して (rtmps://
) 送信できます。 Smooth Streaming 取り込みプロトコルでサポートされる URL スキームは http://
と https://
です。
既定の割り当ては、Media Services アカウントごとに 5 つのライブ イベントです。 この上限を引き上げる場合は、Azure portal にサポート チケットを提出してください。
ライブ イベントの種類
ライブ イベントは、基本または標準のパススルーまたはライブ エンコードのいずれかに設定できます。 型は、ライブ イベント エンコード型を使用して作成時に設定されます。
- パススルー基本: オンプレミスのライブ エンコーダーは、複数のビットレート ストリームを送信します。 基本的なパススルーは、5 Mbps のピーク イングレス、8 時間の DVR ウィンドウに制限され、ライブ文字起こしはサポートされていません。
- パススルー標準: オンプレミスのライブ エンコーダーは、複数のビットレート ストリームを送信します。 標準のパススルーでは、取り込み制限が高く、25 時間の DVR ウィンドウがあり、ライブ文字起こしがサポートされます。
- Standard: オンプレミスのライブ エンコーダーは 1 つのビットレート ストリームをライブ イベントに送信し、Media Services は複数のビットレート ストリームを作成します。 投稿フィードの解像度が 720p 以上である場合、Default720p プリセットは 6 つの解像度とビットレートのペアのセットをエンコードします。
- Premium 1080p: オンプレミスのライブ エンコーダーは、1 つのビットレート ストリームをライブ イベントに送信し、Media Services は複数のビットレート ストリームを作成します。 Default1080p プリセットは、解像度とビットレートのペアの出力セットを指定します。
注意
最大フレームレートは、Standard と Premium の両方のエンコードで 30 fps です。
パススルー ライブ イベント
基本または標準のパススルー ライブ イベントを使用する場合は、オンプレミスのライブ エンコーダーを使用して複数のビットレートのビデオ ストリームを生成し、ライブ イベントに送信します (RTMP または fragmented-MP4 プロトコルを使用)。 その後、ライブ イベントは追加の処理なしで受信ビデオ ストリームを通過します。 パススルー ライブ イベントは、長時間実行されるライブ イベントや 24 時間 365 日のリニア ライブ ストリーミング向けに最適化されています。 この種類のライブ イベントを作成する場合は、"基本的" または "標準" のパススルーを指定します。
H.264/AVC または H.265/HEVC (スムーズインジェストのみ) ビデオ コーデックと AAC (AAC-LC、HE-AACv1、または HE-AACv2) オーディオ コーデックを使用して、最大 4K の解像度で、60 フレーム/秒のフレーム レートでフィードを送信できます。 詳細については、ライブ イベントの種類の比較に関するページを参照してください。
注意
長期にわたって複数のイベントを配信する場合で、かつオンプレミスのエンコーダーを既に導入済みである場合、ライブ ストリーミングの手段としてはパススルー方式が最も低コストです。 価格の詳細を参照してください。
ライブ エンコード ライブ イベント
ライブ エンコードを使用する場合は、(RTMP または Fragmented-Mp4 プロトコルを使用して) シングル ビットレート ビデオをライブ イベントに送信するようにオンプレミスのライブ エンコーダーを構成します。 次に、受信シングル ビットレート ストリームを複数のビットレート のビデオ ストリームにエンコードするようにライブ イベントを設定します。 これにより、MPEG-DASH、HLS、Smooth Streaming などのプロトコルを使用してデバイスを再生するために出力を配信できるようになります。
この場合、貢献フィードは、H.264/AVC ビデオ コーデックと AAC (AAC-LC、HE-AACv1、または HE-AACv2) オーディオ コーデックを使用して、30 フレーム/秒のフレーム レートで最大 1080p の解像度でのみ送信できます。 詳細については、ライブ イベントの種類の比較に関するページを参照してください。
低待機時間 HLS と DASH ストリーミング オプション
ライブ イベント エンコードを使用して低待機時間を実現する方法の詳細については、低待機時間 HLS (LL-HLS) と DASH ストリーミング オプションとライブ ストリーミングのベスト プラクティス ガイドを参照してください。
ライブ エンコード出力の解像度とビットレート
ライブ エンコーダーからの結果の出力の解像度とビットレートは、プリセットによって決まります。
- Standard ライブ エンコーダーを使用する場合、Default720p プリセットは、3.5 Mbps の 720p から 200 kbps で 192p まで、6 つの解像度/ビット レート ペアのセットを指定します。
- Premium1080p ライブ エンコーダーを使用する場合、Default1080p プリセットは 6 つの解像度/ビット レート ペアのセットを指定します。3.5 Mbps では 1080p から 200 kbps で 180p まで下がります。
詳細については、システムのプリセットに関するページを参照してください。
注意
ライブ エンコード プリセットをカスタマイズする必要がある場合は、Azure portal 経由でサポート チケットを開いてください。 ビデオの解像度/ビットレートとオーディオのビットレートの任意のテーブルを指定する必要があります。 ビデオの場合、720p で 1 層のみ、最大 6 層までであることを確認してください。 オーディオの場合は、次の個別の AAC オーディオ ビットレート (96k、112k、128k、160k、192k、224k、256k、320k、384k、448k、512k) でカスタマイズできます。 異なるビットレートで複数のオーディオ トラックを使用でき、カスタム プリセットに含めることができます。 また、サポート チケットでカスタムプリセットを要求していることを明記してください。
LiveEventEncodingType の REST API または .Net、 Node.JS、または Python SDK を参照してください。 さらに、 ライブ イベントのサンプル コードを試すことができます。
ライブ イベントのオプション
ライブ イベントの作成時には次のオプションを指定できます。
- 名前 と 説明。
- Standard エンコードと Premium エンコードの場合は、エンコードされたビデオの ストレッチ モード を選択できます。
- なし: 入力ビデオのピクセル縦横比または表示縦横比を考慮せずに、エンコード プリセットで指定された出力解像度を厳密に尊重します。
- AutoSize: 出力解像度をオーバーライドし、埋め込みなしで入力の表示縦横比に合わせて変更します。 たとえば入力が 1920 x 1080 であるとき、エンコード プリセットによって 1280 x 1280 が要求された場合、プリセットの値がオーバーライドされ、出力は 1280 x 720 となり、入力の縦横比 (16:9) が維持されます。
- 自動調整: 出力の解像度を考慮して出力を埋め込み(レターボックスまたはピラーボックス)、出力内のアクティブなビデオ領域の縦横比が入力と同じであることを確認します。 例として、入力が 1920 x 1080 であるとき、エンコード プリセットによって 1280 x 1280 が要求された場合、出力は 1280 x 1280 となりますが、縦横比が 16:9 である 1280 x 720 の四角形を挟むように、幅 280 ピクセルのピラー ボックス領域が左右に追加されます。
- ストリーミング プロトコル RTMP またはスムーズ ストリーミング。 注: ライブ イベントまたはその関連するライブ出力の実行中にプロトコル オプションを変更することはできません。 別のプロトコルが必要な場合は、ストリーミング プロトコルごとに別のライブ イベントを作成します。
- ライブ イベント入力ストリームのグローバル一意識別子である入力 ID。
- none を含む静的ホスト名プレフィックス (この場合はランダムな 128 ビットの 16 進文字列が使用されます)、ライブ イベント名を使用するか、カスタム名を使用します。 顧客名の使用を選択した場合、この値はカスタム ホスト名プレフィックスになります。
- 入力キー フレーム間隔。HLS 出力内の各メディア セグメントの継続時間 (秒単位) です。 値は、0.5 から 20 秒の範囲の 0 以外の整数である必要があります。 入力キー フレーム間隔と出力キー フレーム間隔のどちらも設定されていない場合は、値の既定値は 2 秒です。 キー フレームの間隔は、パススルー イベントでのみ許可されます。
- 自動開始。 自動開始が true に設定されている場合、ライブ イベントは作成された後に開始されます。 ライブ イベントの実行が開始されるとすぐに課金が開始されます。 今後の課金を停止するには、ライブ イベントを明示的に停止する必要があります。 または、ストリーミングを開始する準備ができたら、イベントを開始できます。
- 取り込みとプレビューの IP 制限。 このライブ イベントへのビデオの取り込みが許可される IP アドレスを定義できます。 許可される IP アドレスは、1 つの IP アドレス (例: '10.0.0.1')、IP アドレスと CIDR サブネット マスクを使用した IP 範囲 (例: '10.0.0.1/22')、IP アドレスとピリオドで区切られた 10 進数のサブネット マスクを使用した IP 範囲 (例: '10.0.0.1(255.255.252.0)') のいずれかの形で指定できます。
- IP アドレスが指定されておらず、規則の定義もない場合は、どの IP アドレスも許可されません。 すべての IP アドレスを許可するには、規則を作成し、0.0.0.0/0 に設定します。 IP アドレスは、4 つの数値または CIDR アドレス範囲を持つ IpV4 または IPv6 アドレスのいずれかの形式である必要があります。 IPv4 または IPv6 の使用の詳細については、「 IP 許可リストを使用して DRM ライセンスと AES キー配信へのアクセスを制限する」を参照してください。
- 自分のファイアウォールで特定の IP を有効にする場合、またはライブ イベントへの入力を Azure IP アドレスに制限する場合は、Azure Datacenter IP のアドレス範囲に関するページから JSON ファイルをダウンロードします。 このファイルについて詳しくは、ページの「詳細」セクションを選択してください。
- 既定では無効になっているライブ文字起こし。 ライブの文字起こしの詳細については、「ライブ文字起こし」を参照してください。
StandBy モード
ライブ イベントを作成する際に、それを StandBy モードに設定できます。 イベントが StandBy モードの間は、説明と静的ホスト名プレフィックスを編集したり、入力とプレビューのアクセス設定を制限したりできます。 StandBy モードはまだ課金対象モードですが、ライブ ストリームを開始する場合とは異なる価格設定になります。
詳細については、ライブ イベントの状態と課金に関するページを参照してください。
ライブ出力
オンプレミス エンコーダーからライブ イベントへのストリームを設定したら、 アセット、 ライブ出力、ストリーミング ロケーターを作成して ストリーミング イベントを開始できます。 ライブ出力により、ストリームがアーカイブされ、ストリーミング エンドポイントを介して視聴者がストリームを使用できるようになります。
ライブ イベント出力の質問
FAQ のライブ イベントの質問に関する記事を参照してください。 ライブ イベント クォータの詳細については、クォータと制限に関する記事を参照してください
ライブ イベントの設定の詳細
名前付け規則
- ライブ イベントの名前は最大 32 文字です。
- 名前は、次の regex パターン
^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$
に従う必要があります。
ストリーミング エンドポイントの命名規則に関するページも参照してください。
ヒント
ライブ イベント名の一意性を保証するには、GUID を生成してから、すべてのハイフンと中かっこを削除します (存在する場合)。 文字列はすべてのライブ イベントで一意であり、長さは 32 であることが保証されています。
ライブ イベントの取り込み URL
ライブ イベントが作成されると、ライブ オンプレミス エンコーダーに提供する取り込み URL を取得できます。 ライブ エンコーダーは、これらの URL を使用して、ライブ ストリームを入力します。 詳細については、「おすすめのライブ ストリーミング エンコーダー」を参照してください。
Note
2020-05-01 API リリース現在、"バニティ" URL は静的ホスト名 (useStaticHostname: true) と呼ばれています。
注意
ハードウェア エンコーダーのセットアップで使用するために取り込み URL を静的で予測可能にするには、useStaticHostname プロパティを true に設定し、各作成時に accessToken プロパティを同じ GUID に設定します。
非静的ホスト名
LiveEvent を作成するとき、非静的ホスト名は Media Services v3 の既定のモードです。 ライブ イベントの割り当ては少し速くなりますが、ライブ エンコード ハードウェアまたはソフトウェアに必要な取り込み URL はランダムになります。 ライブ イベントを停止または開始すると、URL は変わります。 非静的ホスト名は、エンド ユーザーがライブ イベントを非常に迅速に取得する必要があるアプリを使用し、動的な取り込み URL を持つことが問題でないようなストリーミングを行う場合にのみ役立ちます。
ライブ イベントが作成される前にクライアント アプリが取り込み URL を事前に生成する必要がない場合は、ライブ イベント用のアクセス トークンが Media Services で自動生成されるようにします。
静的ホスト名
静的ホスト名モードは、特定のライブ イベントの作成や停止/開始時に変更されることのない RTMP 取り込み URL を使用してライブ エンコード ハードウェアまたはソフトウェアを事前に構成する大半の演算子で推奨されています。 これらの演算子は、時間が経過しても変化しない、予測的な RTMP 取り込み URL を必要としています。 これは、BlackMagic Atem Mini Pro などのハードウェア エンコード デバイス、または同様のハードウェア エンコードや製作ツールの構成設定に静的な RTMP 取り込み URL をプッシュする必要がある場合にも非常に便利です。
注意
Azure portal では、静的ホスト名 URL は "静的ホスト名プレフィックス" と呼ばれます。
API でこのモードを指定するには、作成時に
useStaticHostName
をtrue
に設定します (既定値はfalse
)。useStaticHostname
が true に設定されている場合、hostnamePrefix
は、ライブ イベント プレビューおよび取り込みエンドポイントに割り当てられたホスト名の最初の部分を指定します。 最終的なホスト名は、このプレフィックス、メディア サービス アカウント名、および Azure Media Services データ センターの短いコードの組み合わせになります。URL でのランダム トークンを避けるため、作成時に自身のアクセス トークン (
LiveEventInput.accessToken
) を渡す必要もあります。 このアクセス トークンは、有効な GUID 文字列 (ハイフン付きまたはなし) である必要があります。 モードはいったん設定されると、更新できません。アクセス トークンは、Azure リージョンと Media Services アカウントに対して一意である必要があります。 アプリで静的ホスト名の取り込み URL を使用する必要がある場合は、リージョン、Media Services アカウント、ライブ イベントの特定の組み合わせで使用するために、常に新しい GUID インスタンスを作成することをお勧めします。
静的ホスト名 URL を有効にしたり、アクセス トークンを有効な GUID (たとえば
"accessToken": "1fce2e4b-fb15-4718-8adc-68c6eb4c26a7"
) に設定したりするには、次の API を使用します。言語 静的ホスト名 URL を有効にする アクセス トークンを設定する REST properties.useStaticHostname LiveEventInput.useStaticHostname CLI --use-static-hostname --access-token .NET LiveEvent.useStaticHostname LiveEventInput.AccessToken
ライブ取り込み URL の名前付け規則
- 以下の "ランダム" な文字列は 128 ビットの 16 進数です (32 文字の 0-9 a-f で構成されています)。
- "アクセス トークン": 静的ホスト名設定を使用するときに設定する有効な GUID 文字列。 たとえば、「
"1fce2e4b-fb15-4718-8adc-68c6eb4c26a7"
」のように入力します。 - ストリーム名:特定の接続のためのストリーム名を示します。 ストリーム名の値は通常、使用するライブ エンコーダーによって追加されます。 接続を説明するために任意の名前 ("video1_audio1"、"video2_audio1"、"stream" など) を使用するようにライブ エンコーダーを構成できます。
警告
ストリームの名前に特殊文字またはスペースを使用すると、ライブインジェストは失敗します。 開発者向け概念の概要については、「Media Services リソース の名前付け規則 」を参照してください。
非静的ホスト名の取り込み URL
RTMP
rtmp://<random 128bit hex string>.channel.media.azure.net:1935/live/<auto-generated access token>/<stream name>
rtmp://<random 128bit hex string>.channel.media.azure.net:1936/live/<auto-generated access token>/<stream name>
rtmps://<random 128bit hex string>.channel.media.azure.net:2935/live/<auto-generated access token>/<stream name>
rtmps://<random 128bit hex string>.channel.media.azure.net:2936/live/<auto-generated access token>/<stream name>
スムーズ ストリーミング
http://<random 128bit hex string>.channel.media.azure.net/<auto-generated access token>/ingest.isml/streams(<stream name>)
https://<random 128bit hex string>.channel.media.azure.net/<auto-generated access token>/ingest.isml/streams(<stream name>)
静的ホスト名の取り込み URL
次のパスでは、<live-event-name>
は、イベントに指定された名前、またはライブ イベントの作成で使用されるカスタム名のいずれかを意味します。
RTMP
rtmp://<live event name>-<ams account name>-<region abbrev name>.channel.media.azure.net:1935/live/<your access token>/<stream name>
rtmp://<live event name>-<ams account name>-<region abbrev name>.channel.media.azure.net:1936/live/<your access token>/<stream name>
rtmps://<live event name>-<ams account name>-<region abbrev name>.channel.media.azure.net:2935/live/<your access token>/<stream name>
rtmps://<live event name>-<ams account name>-<region abbrev name>.channel.media.azure.net:2936/live/<your access token>/<stream name>
スムーズ ストリーミング
http://<live event name>-<ams account name>-<region abbrev name>.channel.media.azure.net/<your access token>/ingest.isml/streams(<stream name>)
https://<live event name>-<ams account name>-<region abbrev name>.channel.media.azure.net/<your access token>/ingest.isml/streams(<stream name>)
ライブ イベント プレビュー URL
ライブ イベントが投稿フィードの受信を開始したら、ライブ ストリームを公開する前に、そのプレビュー エンドポイントを使用して、ライブ ストリームが受信されていることをプレビューして検証できます。 プレビュー ストリームが良好であることを確認したら、ライブ イベントを使用して、そのライブ ストリームを 1 つ以上の (事前に作成された) ストリーミング エンドポイント経由で配信可能にすることができます。 これを実現するために、ライブ イベントに新しいライブ出力を作成します。
重要
続行する前に、ビデオがプレビュー URL に送信されていることを確認してください。
ライブイベントの長時間にわたって実行される操作
詳細については、「長時間にわたって実行される操作」を参照してください。
ヘルプとサポート
質問がある場合は Media Services に問い合わせるか、次のいずれかの方法で更新内容に従ってください。
- Q & A
-
Stack Overflow。 質問に タグを付けます
azure-media-services
。 - @MSFTAzureMedia するか 、@AzureSupport を使用してサポートを要求します。
- Azure portalからサポート チケットを開きます。