Alibaba Cloudのメディアサービス群に、ApsaraVideo Liveが追加されたので調べてみました。
1. Alibaba Cloudのメディアサービス群
Alibaba Cloudのメディアサービス群は、Media ServicesとMedia Technologyのカテゴリに分かれています。
-
Media Services
- ApsaraVideo Live
- オーディオ/ビデオプラットフォーム
- 広域分散型ネットワーク
- 大規模分散型リアルタイムトランスコーディング
- オーディオ/ビデオプラットフォーム
- ApsaraVideo Vod
- オンデマンドオーディオおよびビデオストリーミング用ソリューション
- 自動トランスコーディング
- メディアリソースの管理
- Alibaba Cloud CDNと連携したメディア配信
- オンデマンドオーディオおよびビデオストリーミング用ソリューション
- ApsaraVideo Live
-
Media Technology
- ApsaraVideo for Media Processing
- メディアプロセッシングサービス
- オーディオやメディアファイルのトランスコード
- トランスコード用のコスト削減
- プロセスの管理
- コンソール
- API/SDK
- トランスコード用のコスト削減
- オーディオやメディアファイルのトランスコード
- メディアプロセッシングサービス
- ApsaraVideo for Media Processing
2.ApsaraVideo Liveについて
ApsaraVideo Liveは、オーディオ/ビデオプラットフォームです。
最新のコンテンツアクセス方式、広域分散型ネットワーク、大規模分散型リアルタイムトランスコーディングといった技術が使われています。
特徴
ApsaraVideo Liveの大きな特徴として4つほどピックアップしてみました。
- 全世界をカバーする1,500以上のライブビデオノード
- 複数のプラットフォーム(iOSやAndroidなど)をカバーするSDK
- 低レイテンシ
- 大量同時接続
機能
機能として大きく8のカテゴリがあります。
- ライブストリーム取り込み
- ライブストリーム再生
- ライブストリームセキュリティ
- ライブストリーム管理
- データ統計
- コンソール管理
- API管理
- SDKのサポート
多くの機能がありますが、今回はAPI管理にフォーカスしてみたいと思います。
3.API管理
ApsaraVideo Liveの機能としてAPIに関するカテゴリが5つあります。
このカテゴリの中に、複数のAPIが準備されており基本的な操作が一通り行えるようになっています。
また、保存先にOSSを指定できるためとても便利ですが、リージョンの選択に注意が必要です。
- ドメイン名の管理
- ドメイン名の作成・削除・変更・表示
- ストリーム管理
- ストリーミングドメイン名の作成・変更・削除・有効/無効化
- 同時視聴者数の照会
- タスクの記録作成・停止
- スナップショットタスクの作成・停止
- ライブストリーム録音
- ライブストリームの記録
- OSS(Object Storage Service)への保存
- 対応している保存形式:m3u8/flv/mp4
- OSSのバケット名とエンドポイントを指定する必要があります
- OSS(Object Storage Service)への保存
- ライブストリームの記録
- ライブストリームスナップショット
- ライブストリーミング中にスナップショットをキャプチャ
- OSSに保存
- OSSはライブセンターと同一リージョンであることが必要です
- OSSに保存
- ライブストリーミング中にスナップショットをキャプチャ
- ライブストリームのトランスコード
- ライブストリームを複数形式にトランスコード
- サポートされているエンコード形式
- 標準設定:lld/lsd/lhd/lud
- Narrowband HD設定:ld/sd/hd/ud
- サポートされているエンコード形式
- ライブストリームを複数形式にトランスコード
QPS制限について
API操作するにあたり、QPS制限に注意する必要があります。
QPS制限とは、APIを呼び出す際の1秒あたりのクエリ数の上限です。
この制限を超えると、スロットリングがトリガーされ処理が中断されます。
たとえば、ライブドメイン追加のAPIである「AddLiveDomain」のQPSは30のため、1秒間に30回以内呼び出すことが可能です。
それ以上呼び出すとスロットリングがトリガーされます。
ただし、すべてのAPIにQPS制限が設けられているわけではないので、利用する際に確認が必要です。
APIコール後のレスポンスとエラーコードについて
APIをコールした後のレスポンスですが、APIの種類によって内容が変わります。
しかし、正常に処理されると「RequestId」が返ってくることが共通の様です。
また、APIコール後にエラーが発生した際に返ってくるHTTPステータスコードは400でまとめられているので、エラーコードの内容まで確認して対応処理を行う必要がありそうです。
次回はSDKについて調べてみたいと思います。