Live Screenshot

最終更新日:2026-04-21 10:28:36

ライブストリームから静止画像のスナップショットを取得し、スケジュール設定、各ストリーム、またはオンデマンドで、直接オブジェクトストレージへ配信します。Live Screenshot APIは、動画サムネイル、ライブプレビュー、コンテンツモデレーション用サンプリング、コンプライアンスアーカイブなど、一般的なワークフローを実現します。

APIは3つの組み合わせ可能なレイヤーで構成されています:

  1. テンプレート — スクリーンショットを取得する方法を定義します(フォーマット、ストレージ、セグメンテーション、コールバック)。
  2. ルール — キャプチャをいつ実施するかを定義します。テンプレートをDomain、アプリ、またはストリームに紐付けます。
  3. リアルタイムコントロール — 任意のアクティブなストリームでアドホックキャプチャをトリガーします。

テンプレートは基盤です。 ルールとリアルタイムコントロールはどちらも templateId でテンプレートを参照するため、最初のAPIコールは必ずテンプレートの作成となります。

すべてのスクリーンショットAPIは、5分間あたり300リクエスト/ユーザーの共通レート制限が適用されます。

スクリーンショットテンプレートの作成(テンプレートAPI)

スクリーンショットパラメータテンプレートは、キャプチャの動作方法を定義します。たとえば、出力画像フォーマット(JPG、PNG、BMP)、サンプリング間隔、Object Storageの保存先、ファイル名の規則、および完了通知を受信するコールバックURLなどです。

すべてのスクリーンショット(自動/オンデマンド)には templateId が必要なため、テンプレートの作成が常に最初のステップです。

API名 機能
AddSnapshotParameterTemplate 画像フォーマット、保存先、サンプリング間隔、コールバックURLなどを定義した新しいテンプレートを作成します。
QuerySnapshotParameterTemplate 全てのテンプレートを一覧表示するか、IDを指定して単一テンプレートの詳細を取得します。
ModifySnapshotParameterTemplate 既存テンプレートの設定内容を更新します。
DeleteSnapshotParameterTemplate テンプレートを削除します。

警告: テンプレートがアクティブルールで参照されている場合、削除できません。全てのルールから当該テンプレートの参照を削除してから、テンプレートを削除してください。

スクリーンショットの自動取得ルールの設定(ルールAPI)

テンプレートが作成されると、スクリーンショットルールによってその適用が自動化されます。ルールは1つまたは複数のライブストリームにtemplateIdを関連付けることで、ストリーム配信開始時に自動でキャプチャが開始されます — 手動操作は不要です。

ストリームをターゲットとする際、3つの詳細レベルで指定できます:

  • デリバリードメイン — ドメイン配下のすべてのストリームに適用されます。
  • アプリケーション名 — 特定のアプリケーションパス配下のすべてのストリームに適用されます。
  • ストリーム名 — 特定の1つのストリームに適用されます。

システムは最長一致の原則に従ってルールを適用します。つまり、特定のストリーム名を対象としたルールは、より広範なドメインレベルのルールよりも優先されます。これにより、広範なデフォルトを設定しつつ、必要に応じて個々のストリームごとに動作を上書きすることが可能です。

API名 機能概要
- -
AddSnapshotRules テンプレートをDomain、アプリケーション、またはストリーム名ごとにストリームへバインドするルールを作成します。
QuerySnapshotRule テンプレートID、ルールID、Domain、アプリケーション、またはストリーム名ごとにフィルターできる既存ルールの一覧を表示します。
ModifySnapshotRules 既存ルールを更新します。
DeleteSnapshotRules ルールを削除します。

警告: ルールがスクリーンショットのキャプチャを実行中は、削除することはできません。ストリームが終了するのを待つか、まずキャプチャセッションを停止してください。

オンデマンドでスクリーンショットをトリガーする(Real-Time Control API)

自動化ルール以外でのキャプチャ(モデレーションイベント、ユーザーによるプレビューのトリガー、インシデントアーカイブなど)には、Real-Time Control API を使用してセッションの開始と停止を手動で行います。

ワークフローの連携方法:

  1. templateIdと最大5つのストリーム配信URLを指定してStartRealTimeSnapshotを呼び出します。
  2. APIは、そのキャプチャセッションを一意に識別するpersistentIdを返します。
  3. キャプチャはストリームが自然に終了するまで、あるいは同じpersistentIdを指定してStopRealTimeRecordを呼び出すまで続行されます。

persistentIdはStart APIによって返されます。必ず保管してください。これは特定のセッションを途中で停止する唯一の方法です。紛失すると、ストリームが自然に終了するのを待つしかありません。

API名 機能概要
StartRealTimeRecord 最大5つのアクティブなライブストリームURLに対して、即時にスクリーンショットセッションを開始します。
StopRealTimeRecord ストリームが終了する前に、アクティブなリアルタイムスクリーンショットセッションを停止します。