ApsaraVideo Player SDK for iOS をプロジェクトに素早く統合します。
要件
オペレーティングシステム: iOS 8.0 以降。
開発ツール: Xcode を推奨します。このトピックでは Xcode を使用します。ダウンロード先: Xcode。
ApsaraVideo Player SDK for iOS はシミュレーターをサポートしていません。アプリケーションは実機で実行する必要があります。
前提条件
プレーヤー認証用のライセンスファイル (
AliVideoCert-********.crtなど) を取得済みです。 詳細については、「ライセンスを取得する」をご参照ください。手動統合の場合は、最新の ApsaraVideo Player SDK for iOS パッケージをダウンロードします。詳細については、「ダウンロード」をご参照ください。
注意事項
アプリをパッケージ化する際、 dSYM ファイルはクラッシュレポートをシンボリケートするために使用されます。
ApsaraVideo Player SDK for iOS には、AlivcFFmpeg と AliyunPlayer のフレームワークが必要です。プレーヤーのヘッダーファイルは AliyunPlayer にあります。
プレーヤー SDK とショートビデオ SDK の両方を統合する場合、コンポーネント間の競合を避けるために、オールインワン SDK for iOS の使用を推奨します。個別の SDK を統合する必要がある場合は、ショートビデオ SDK、プレーヤー SDK、および AlivcFFmpeg 間のバージョンの互換性を確認してください。バージョンが一致しないと、機能が失敗する可能性があります。詳細については、「AlivcFFmpeg の依存関係」をご参照ください。
ApsaraVideo Player SDK for iOS パッケージには、シミュレーターアーキテクチャが含まれています。App Store にアプリを提出する前に、リジェクトを避けるためにこれらを削除してください。
ビデオチュートリアル
手順1:SDK の統合
CocoaPods による統合
CocoaPods をインストールします。これには Ruby 環境が必要です。
// ターミナルで、次のコマンドを実行します: sudo gem install cocoapodsCocoaPods のインストールを確認します。
ターミナルで
pod --versionを実行して、インストールを確認します。xxx@ ~ % pod --version 1.16.2Podfile を作成します。
ターミナルでプロジェクトディレクトリに移動し、
pod initを実行して Podfile を作成します。// プロジェクトディレクトリに移動します。 xxx@ ~ % cd /path/yourProject // Podfile を生成します。 xxx@ yourProject % pod initPodfile を編集して、プレーヤー SDK の依存関係を追加します。
説明プレーヤー SDK とショートビデオ SDK の両方を統合するには、以下のコードの
AliPlayerSDK_iOSをAliPlayerPartSDK_iOSに置き換えます。AliPlayerPartSDK_iOSは FFmpeg を含まないため、ショートビデオ SDK の FFmpeg との競合を防ぎます。プレーヤー SDK の正しいバージョン番号を入力してください。そうでない場合、インポートが失敗し、エラーが報告されます。プレーヤー SDK のバージョンについては、「ApsaraVideo Player SDK for iOS リリースノート」をご参照ください。
source 'https://github.com/CocoaPods/Specs.git' platform:ios, '8.0' target 'yourProject' do # プレーヤー SDK。最新バージョンの使用を推奨します。 pod 'AliPlayerSDK_iOS' end(オプション) 特定バージョンのプレーヤー SDK への依存関係を追加します。
source 'https://github.com/CocoaPods/Specs.git' platform:ios, '8.0' player_sdk_version = '7.18.0' target 'yourProject' do # プレーヤー SDK。最新バージョンの使用を推奨します。 pod 'AliPlayerSDK_iOS' , player_sdk_version end依存関係をインストールします。
次のコマンドを実行して、依存関係をインストールします。
pod install次の出力は、インストールが成功したことを示します:
xxx@ yourProject % pod install Analyzing dependencies Downloading dependencies Installing AliPlayerSDK_iOS (7.18.0) Generating Pods project Integrating client project Pod installation complete! There is 1 dependency from the Podfile and 1 total pod installed.次のコマンドを実行して、プレーヤー SDK を更新します。
pod update AliPlayerSDK_iOS
手動統合
個別の SDK を使用してプレーヤー SDK とショートビデオ SDK の両方を統合する場合、AlivcFFmpeg フレームワークを 1 つだけインポートし、正しいバージョンを使用していることを確認してください。
ApsaraVideo Player SDK for iOS をダウンロードします。
プレーヤーフレームワークを [Frameworks, Libraries, and Embedded Content] に追加し、[Embed] を [Embed & Sign] に設定します。
alivcffmpeg.framework:プレーヤーの基盤となるフレームワーク。
AliyunMediaDownloader.framework:オフラインダウンロードに使用します。
AliyunPlayer.framework:プレーヤーフレームワーク。

[ビルド設定] タブをクリックします。
[検索パス] セクションで、[フレームワーク検索パス] をローカルのフレームワークディレクトリに設定します。
CocoaPods による RTS の統合 (オプション)
リアルタイムストリーミング (RTS) コンポーネントを統合するには、「iOS での RTS ベースのストリームプルの実装」をご参照ください。
手順2:ライセンスの設定
中国本土、香港、マカオ以外の地域 (国際サイト) でプレーヤーを使用する場合、他のプレーヤー API を呼び出す前に、次の API を呼び出して環境を設定する必要があります。
方法1: 次の API を呼び出して、デフォルト設定を国際サイト環境に更新します。
// 国際サイトの場合、他のプレーヤー API の前にこの API を呼び出して // 環境を設定する必要があります。この設定は実行時に変更できません。 AlivcBase.EnvironmentManager.globalEnvironment = ENV_SEA;方法 2(推奨): プレーヤー SDK バージョン 7.6.0 以降では、
Info.plistファイルで国際サイト環境を設定できます。Info.plistファイルを開き、AlivcEnvの値をSEAに変更します。// 現在の環境を国際サイトとして設定します。 <key>AlivcEnv</key> <string>SEA</string>次の図は設定例です:

iOS クライアントでライセンスを設定するには、「iOS でのライセンス設定」をご参照ください。
手順3:ロギングの有効化 (オプション)
問題のトラブルシューティングに役立てるために、ロギングを有効にしてください。ログの取得方法については、「SDK ログの取得」をご参照ください。
// ロギングを有効にします。
[AliPlayer setEnableLog:YES];
// ログレベルを設定します。デフォルトは LOG_LEVEL_INFO です。トラブルシューティングのためには、LOG_LEVEL_TRACE に設定します。
[AliPlayer setLogCallbackInfo:LOG_LEVEL_INFO callbackBlock:nil];プロジェクト構造
フレームワーク | 説明 |
alivcffmpeg.framework | プレーヤーの基盤となるフレームワーク。必須。 |
AliyunMediaDownloader.framework | オフラインダウンロードに使用します。オプション。 |
AliyunPlayer.framework | プレーヤーフレームワーク。必須。 |
artcSource.framework | ARTC プロトコルをサポートします。オプション。 説明 ARTC プロトコルをサポートするには、RtsSDK.framework も追加する必要があります。統合の詳細については、「iOS での RTS ベースのストリームプルの実装」をご参照ください。 |
aemFilter.framework | オーディオエンハンスメントを有効にします。オプション。 |
libPluginSR.framework | 超解像を有効にします。オプション。 |
normalsrFilter.framework | 超解像を有効にします。オプション。 |
srFilter.framework | 超解像を有効にします。オプション。 |
vfiFilter.framework | ビデオフレーム挿入を有効にします。オプション。 |
vvcCodecPlugin.framework | H.266 デコーディングプラグイン。オプション。 |
よくある質問
CocoaPods の使用
AlivcFFmpeg とのシンボルの競合
解決策:
AlivcFFmpeg とのシンボルの競合が発生した場合は、冗長な依存関係を削除してください。ApsaraVideo Player SDK for iOS で提供されているバージョンを保持し、サードパーティ製のものを削除してください。これにより、サードパーティ製プレーヤーの機能に影響が出る可能性があります。
サンドボックスエラー
問題:

解決策:
[Build Settings] の [User-Defined] で、
User Script SandboxingをNOに設定してください。
プレーヤー SDK とショートビデオ SDK を同時に統合するにはどうすればよいですか?
ApsaraVideo Player SDK for iOS とショートビデオ SDK の両方を統合する場合、クラスの重複やコンパイルの失敗などの問題を避けるために、オールインワン SDK for iOS を使用することを強く推奨します。
プレーヤーに関するその他の問題と解決策については、「ApsaraVideo Player に関するよくある質問」をご参照ください。