ApsaraVideo Player SDK for iOS を使用して、動画の再生をすばやく開始します。
前提条件
ApsaraVideo Player SDK for iOS が統合されている必要があります。詳細については、「SDK の統合」をご参照ください。
オープンソースのデモプロジェクト
コード例については、API-Example の BasicPlayback モジュールをご参照ください。この Objective-C デモプロジェクトは、SDK のコア再生機能をすばやく統合するのに役立ちます。
手順
ステップ1:プレーヤーの作成
AliPlayer インスタンスを作成します。
// プレーヤーのインスタンスを作成します。
AliPlayer mAliPlayer = [[AliPlayer alloc] init];
// 動画を表示するビューコンテナを作成し、プレーヤーのレンダリングビューを設定します。
UIView playerView = [[UIView alloc] initWithFrame:self.view.bounds];
[self.view addSubview:playerView];
mAliPlayer.playerView = playerView;
[mAliPlayer setTraceID:traceId];
再生品質モニタリング、シングルポイント追跡、動画再生統計は、すべてインストルメンテーションログのレポート機能に依存します。再生品質モニタリングは、全体的な再生品質データを表示します。シングルポイント追跡は、特定のユーザーまたはデバイスを特定し、再生動作を分析し、問題を迅速に突き止めるのに役立ちます。
利用可能な機能は、setTraceID パラメーターによって異なります:
-
setTraceIDパラメーターを渡さない場合 (デフォルト) :インストルメンテーションログのレポート機能が有効になります。再生品質モニタリング機能と動画再生統計機能を使用できます。シングルポイント追跡機能は使用できません。 -
setTraceIDパラメーターに traceid を渡す場合: traceid はカスタム値で、ビジネスのユーザー ID、International Mobile Equipment Identity (IMEI)、広告主識別子 (IDFA) など、ユーザーまたはユーザーのデバイスの一意の識別子である必要があります。traceid を渡すと、インストルメンテーションログのレポート機能が有効になります。その後、再生品質モニタリング、シングルポイント追跡、動画再生統計の各機能を使用できます。 -
setTraceIDパラメーターをDisableAnalyticsに設定する場合:インストルメンテーションログのレポート機能が無効になります。再生品質モニタリング、シングルポイント追跡、動画再生統計の各機能は使用できません。
ステップ2:再生ソースの設定
VidAuth を使用した再生 (推奨)
AVPVidAuthSource *authSource = [[AVPVidAuthSource alloc] init];
authSource.vid = @"Video ID"; // 必須。動画 ID。
authSource.playAuth = @"<yourPlayAuth>"; // 必須。再生認証情報。ApsaraVideo VOD の GetVideoPlayAuth API を呼び出して認証情報を生成する必要があります。
authSource.region = @"Region"; // ApsaraVideo Player SDK V5.5.5.0 以降では、このパラメーターは非推奨です。プレーヤーがリージョンを自動的に解析するため、リージョンを設定する必要はありません。V5.5.5.0 より前のバージョンでは、このパラメーターは必須です。ApsaraVideo VOD が有効なリージョンを指定します。デフォルト値:cn-shanghai。
// authSource.authTimeout = 3600; // 再生 URL の有効期間 (秒単位) 。この値は、ApsaraVideo VOD コンソールで設定された URL 署名の有効期間を上書きします。このパラメーターを設定しない場合、デフォルト値の 3600 が使用されます。このパラメーターを設定する場合は、再生が完了する前に再生 URL が期限切れになるのを防ぐため、その値が実際の動画の長さよりも大きいことを確認してください。
// 再生ソースを設定します。
[mAliPlayer setAuthSource:authSource];
VidSts を使用した再生
AVPVidStsSource *source = [[AVPVidStsSource alloc] init];
source.vid = @"Video ID"; // 必須。動画 ID。
source.region = @"Region"; // 必須。ApsaraVideo VOD が有効なリージョン。デフォルト値:cn-shanghai。
source.securityToken = @"<yourSecurityToken>"; // 必須。Security Token Service (STS) トークン。STS の AssumeRole API を呼び出してトークンを生成する必要があります。
source.accessKeySecret = @"<yourAccessKeySecret>"; // 必須。一時的な AccessKey ペアの AccessKey Secret。STS の AssumeRole API を呼び出して AccessKey Secret を生成する必要があります。
source.accessKeyId = @"<yourAccessKeyId>"; // 必須。一時的な AccessKey ペアの AccessKey ID。STS の AssumeRole API を呼び出して AccessKey ID を生成する必要があります。
// source.authTimeout = 3600; // 再生 URL の有効期間 (秒単位) 。この値は、ApsaraVideo VOD コンソールで設定された URL 署名の有効期間を上書きします。このパラメーターを設定しない場合、デフォルト値の 3600 が使用されます。このパラメーターを設定する場合は、再生が完了する前に再生 URL が期限切れになるのを防ぐため、その値が実際の動画の長さよりも大きいことを確認してください。
// ApsaraVideo VOD コンソールで HLS 暗号化パラメーターのパススルーを有効にし、かつデフォルトのパラメーター名が MtsHlsUriToken である場合は、vid に加えて再生用の config も設定する必要があります。
// 再生ソースを設定します。
[mAliPlayer setStsSource:source]
UrlSource を使用した再生
// 再生ソースオブジェクトを作成し、再生 URL を設定します。
// 再生 URL には、サードパーティのビデオオンデマンド (VOD) URL、ApsaraVideo VOD の再生 URL、またはローカルビデオの URL を使用できます。
AVPUrlSource *urlSource = [[AVPUrlSource alloc] urlWithString:@"Playback URL"];
[mAliPlayer setUrlSource:urlSource];
再生ソースの詳細については、「基本機能」をご参照ください。
ステップ3:再生の開始
// 再生を準備します。
[mAliPlayer prepare];
// prepare を呼び出した後、start API を同期的に呼び出すことができます。onPrepared コールバックが完了すると、再生が自動的に開始されます。
[mAliPlayer start];
ステップ4:再生の停止
// プレーヤービューのバインドを解除します。
mAliPlayer.playerView = nil;
// 再生を停止します。
[mAliPlayer stop];
// リソースを同期的に破棄します。stop メソッドは自動的に呼び出されます。
[mAliPlayer destroy];
// メモリリークを防ぐために参照をクリアします。
mAliPlayer = nil;
関連ドキュメント
再生コントロールやイベントリスナーなどのプレーヤー機能の詳細については、「基本機能」をご参照ください。