ApsaraVideo VOD は、モバイルクライアントからのメディアファイルの直接アップロードをサポートしています。 アプリケーションサーバーからのアップロードと比較して、この方法では中間ファイル転送が不要になるため、サーバーリソースを節約できます。
機能概要
クライアントアップロード SDK は、ローカルファイルとオンラインファイルのアップロードをサポートしています。
機能 | 説明 | 注記 |
対応プラットフォーム | Web、iOS、Android、および WeChat ミニプログラム | 該当なし |
メディアファイル |
|
説明 オンラインファイルをアップロードするには、URL 内の特殊文字によって発生するエラーを防ぐために、URL をエンコードします。 |
ストレージの場所 | デフォルトのストレージの場所を使用することも、指定することもできます。 | デフォルトのストレージの場所を変更できます。 ストレージの場所を指定するには、アップロード URL と認証情報を取得する操作を呼び出すときに、StorageLocation パラメーターを設定します。 |
メディアアセット管理 | タイトル、タグ、カテゴリ、サムネイルなどのメタデータ構成をサポートしています。 | メタデータを構成するには、アップロード URL と認証情報を取得する操作を呼び出すときに、Title、Tags、CateId、および CoverURL を設定します。 |
オーディオとビデオのトランスコード | アップロードされたオーディオファイルとビデオファイルをトランスコードするために、トランスコードテンプレートまたはワークフローを指定できます。 | ファイルをトランスコードするには、アップロード URL と認証情報を取得する操作を呼び出すときに、TemplateGroupId と WorkflowId を設定します。 |
アップロード認証 |
| アップロード URL と認証情報方式を使用することをお勧めします。 2 つの方式の違いについては、「アップロードプロセス」をご参照ください。 |
アップロード制御 | アップロードを開始、停止、一時停止、および再開できます。 | 再開可能なアップロードは、SDK によって自動的に処理されます。 例外が原因で動画のアップロードに失敗した場合、アップロードは停止した時点から再開されます。 |
アップロードの高速化 | アップロードの高速化を有効にするには、Yida でリクエストを送信するします。 | 機能が有効になったら、 |
ネットワークタイプの切り替え | 3G または 4G モバイルネットワークと Wi-Fi を切り替えることができます。 | 3G または 4G ネットワークでのデータ使用量を削減するために、ネットワークが 3G または 4G に切り替わったときにアップロードを一時停止し、ネットワークが Wi-Fi に戻ったときにアップロードを再開できます。 |
イベント通知 | アップロードイベントに関する通知を受信するようにコールバックを構成できます。 サポートされているイベント通知については、「メディアのアップロード」をご参照ください。 | コールバックの設定方法の詳細については、「コールバック構成」をご参照ください。 |
アップロードプロセス
クライアントアップロード SDK は、オブジェクトアップロード用の Object Storage Service (OSS) SDK のロジックをカプセル化しています。 ファイルは ApsaraVideo VOD 用の OSS バケットに直接アップロードされるため、サーバーを介した中間ファイル転送が不要になります。
この場合、アプリケーションサーバーに認証サービスをデプロイして、アップロードリクエストを認証する必要があります。 クライアントアップロード SDK は、STS トークンベースの認証と認証情報ベースの認証の 2 つの方式をサポートしています。
認証情報ベースの認証を使用することをお勧めします。 STS トークンベースの認証と比較して、よりシンプルで柔軟な構成、強化されたセキュリティ、およびより高い冗長性を備えており、単一の動画の権限を制御し、複数のレスポンスパラメーターを設定できます。
認証情報ベースの認証
次の図は、アップロード URL とアップロード認証情報を使用してメディアファイルをアップロードする完全なプロセスを示しています。
アップロード URL と認証情報を取得するために、アプリケーションサーバーに ApsaraVideo VOD SDK などの認証サービスをデプロイします。
説明API リファレンス
CreateUploadVideo:オーディオファイルとビデオファイルのアップロード URL と認証情報を取得します。
RefreshUploadVideo:オーディオファイルとビデオファイルのアップロード URL と認証情報を更新します。
CreateUploadImage:画像ファイルのアップロード URL と認証情報を取得します。
CreateUploadAttachedMedia:補助メディアアセットのアップロード URL と認証情報を取得します。
クライアントは、アップロード URL とアップロード認証情報をリクエストするために、アプリケーションサーバーにリクエストを送信します。
アプリケーションサーバーは、アップロード URL と認証情報をリクエストするために、ApsaraVideo VOD にリクエストを送信します。
ApsaraVideo VOD は、アップロード URL と認証情報を返します。
説明ApsaraVideo VOD は、メディアライフサイクル管理とメディア処理で参照されるメディア ID も生成します。
動画の場合、メディア ID は
VideoIdパラメーターで返されます。画像の場合、メディア ID は
ImageIdパラメーターで返されます。補助メディアアセットの場合、メディア ID は
MediaIdパラメーターで返されます。
アップロード結果をサブスクライブするためにコールバックを設定することもできます。
アプリケーションサーバーは、アップロード URL と認証情報をクライアントに返します。
クライアントは、アップロード URL と認証情報を使用してアップロードインスタンスを初期化します。
クライアントは、アップロードリクエストを送信するためにアップロードパラメーターを作成します。
OSS はアップロード結果を返します。
STS トークンベースの認証
次の図は、STS トークンを使用してメディアファイルをアップロードする完全なプロセスを示しています。
一時的な STS トークンを取得するために、アプリケーションサーバーに STS SDK などの認証サービスをデプロイします。
説明API リファレンス
AssumeRole:Resource Access Management (RAM) ロールを引き受けるための STS トークンを取得します。 詳細については、「STS トークンを取得する」をご参照ください。
クライアントは、STS トークンをリクエストするために、アプリケーションサーバーにリクエストを送信します。
アプリケーションサーバーは、STS トークンをリクエストするために、STS にリクエストを送信します。
STS はトークンを返します。
アプリケーションサーバーは、STS トークンをクライアントに返します。
クライアントは、STS トークンを使用して ApsaraVideo VOD からアップロード URL と認証情報をリクエストします。
ApsaraVideo VOD は、アップロード URL と認証情報をクライアントに返します。
クライアントは、アップロードリクエストを送信するためにアップロードパラメーターを作成します。
OSS はアップロード結果を返します。
クライアント側の統合
統合方法と使用方法プラットフォームによって異なります。 詳細については、以下のトピックをご参照ください。