最終更新日:2026-04-21 10:28:36
ライブストリームから静止画像のスナップショットを取得し、スケジュール設定、各ストリーム、またはオンデマンドで、直接オブジェクトストレージへ配信します。Live Screenshot APIは、動画サムネイル、ライブプレビュー、コンテンツモデレーション用サンプリング、コンプライアンスアーカイブなど、一般的なワークフローを実現します。
APIは3つの組み合わせ可能なレイヤーで構成されています:
テンプレートは基盤です。 ルールとリアルタイムコントロールはどちらも templateId でテンプレートを参照するため、最初のAPIコールは必ずテンプレートの作成となります。
すべてのスクリーンショットAPIは、5分間あたり300リクエスト/ユーザーの共通レート制限が適用されます。
スクリーンショットパラメータテンプレートは、キャプチャの動作方法を定義します。たとえば、出力画像フォーマット(JPG、PNG、BMP)、サンプリング間隔、Object Storageの保存先、ファイル名の規則、および完了通知を受信するコールバックURLなどです。
すべてのスクリーンショット(自動/オンデマンド)には templateId が必要なため、テンプレートの作成が常に最初のステップです。
| API名 | 機能 |
|---|---|
| AddSnapshotParameterTemplate | 画像フォーマット、保存先、サンプリング間隔、コールバックURLなどを定義した新しいテンプレートを作成します。 |
| QuerySnapshotParameterTemplate | 全てのテンプレートを一覧表示するか、IDを指定して単一テンプレートの詳細を取得します。 |
| ModifySnapshotParameterTemplate | 既存テンプレートの設定内容を更新します。 |
| DeleteSnapshotParameterTemplate | テンプレートを削除します。 |
警告: テンプレートがアクティブルールで参照されている場合、削除できません。全てのルールから当該テンプレートの参照を削除してから、テンプレートを削除してください。
テンプレートが作成されると、スクリーンショットルールによってその適用が自動化されます。ルールは1つまたは複数のライブストリームにtemplateIdを関連付けることで、ストリーム配信開始時に自動でキャプチャが開始されます — 手動操作は不要です。
ストリームをターゲットとする際、3つの詳細レベルで指定できます:
システムは最長一致の原則に従ってルールを適用します。つまり、特定のストリーム名を対象としたルールは、より広範なドメインレベルのルールよりも優先されます。これにより、広範なデフォルトを設定しつつ、必要に応じて個々のストリームごとに動作を上書きすることが可能です。
| API名 | 機能概要 |
|---|---|
| - | - |
| AddSnapshotRules | テンプレートをDomain、アプリケーション、またはストリーム名ごとにストリームへバインドするルールを作成します。 |
| QuerySnapshotRule | テンプレートID、ルールID、Domain、アプリケーション、またはストリーム名ごとにフィルターできる既存ルールの一覧を表示します。 |
| ModifySnapshotRules | 既存ルールを更新します。 |
| DeleteSnapshotRules | ルールを削除します。 |
警告: ルールがスクリーンショットのキャプチャを実行中は、削除することはできません。ストリームが終了するのを待つか、まずキャプチャセッションを停止してください。
自動化ルール以外でのキャプチャ(モデレーションイベント、ユーザーによるプレビューのトリガー、インシデントアーカイブなど)には、Real-Time Control API を使用してセッションの開始と停止を手動で行います。
ワークフローの連携方法:
templateIdと最大5つのストリーム配信URLを指定してStartRealTimeSnapshotを呼び出します。persistentIdを返します。persistentIdを指定してStopRealTimeRecordを呼び出すまで続行されます。persistentIdはStart APIによって返されます。必ず保管してください。これは特定のセッションを途中で停止する唯一の方法です。紛失すると、ストリームが自然に終了するのを待つしかありません。
| API名 | 機能概要 |
|---|---|
| StartRealTimeRecord | 最大5つのアクティブなライブストリームURLに対して、即時にスクリーンショットセッションを開始します。 |
| StopRealTimeRecord | ストリームが終了する前に、アクティブなリアルタイムスクリーンショットセッションを停止します。 |