すべてのプロダクト
Search
ドキュメントセンター

ApsaraVideo VOD:SDK のインテグレーション

最終更新日:Feb 11, 2026

本トピックでは、iOS 向け ApsaraVideo Player SDK を迅速にインテグレーションする方法について説明します。

環境要件

  • システム:iOS 8.0 以降。

  • 開発ツール:Xcode の使用を推奨します。本トピックの手順は Xcode に基づいています。ダウンロード URL:Xcode

  • 制限事項:iOS 向け ApsaraVideo Player SDK はエミュレーターをサポートしていません。インテグレーション後、アプリケーションは物理デバイスで実行する必要があります。

前提条件

  • ApsaraVideo Player SDK のライセンスを登録し、ライセンスファイル AliVideoCert-********.crt を取得済みであること。詳細については、「ライセンスの取得」をご参照ください。

  • SDK をローカルでインテグレーションする場合、まず iOS 向け ApsaraVideo Player SDK パッケージをダウンロードする必要があります。最新バージョンのダウンロードを推奨します。

注意事項

  • アプリケーションをパッケージ化する際、dSYM ファイルはクラッシュシンボル解析に使用されます。

  • iOS 向け ApsaraVideo Player SDK を使用する場合、AlivcFFmpeg と AliyunPlayer が必要です。プレーヤーのヘッダーファイルは AliyunPlayer にあります。

  • ApsaraVideo Player SDK とショートビデオ SDK の両方をインテグレーションする場合は、ショートビデオ SDK、ApsaraVideo Player SDK、および AlivcFFmpeg 間のバージョン依存関係にご注意ください。そうしない場合、ショートビデオ SDK または ApsaraVideo Player SDK の機能が失敗する可能性があります。詳細については、「AlivcFFmpeg の依存関係」をご参照ください。

  • iOS 向け ApsaraVideo Player SDK のインストールパッケージには、シミュレーターアーキテクチャが含まれています。アプリケーションを公開する前に、シミュレーターアーキテクチャを削除する必要があります。そうしない場合、アプリケーションの App Store への提出に失敗します。

ステップ 1:SDK のインテグレーション

CocoaPods によるインテグレーション

  1. CocoaPods をインストールします。CocoaPods は Ruby 環境に依存します。

    // ターミナルでこのコマンドを実行します
    sudo gem install cocoapods
  2. CocoaPods を確認します。

    インストールが完了したら、ターミナルで pod --version を実行して CocoaPods がインストールされていることを確認します。

    xxx@ ~ % pod --version
    1.16.2
  3. Podfile を作成します。

    ターミナルで、ご利用のプロジェクトディレクトリに移動します。pod init コマンドを実行して Podfile を作成します。

    // ご利用のプロジェクトディレクトリに移動します。
    xxx@ ~ %  cd /path/yourProject
    // ファイルを生成します。
    xxx@ yourProject % pod init
  4. Podfile を編集して、ApsaraVideo Player SDK の依存関係を追加します。

    説明
    • ApsaraVideo Player SDK とショートビデオ SDK の両方をインテグレーションする場合は、次のコードの AliPlayerSDK_iOSAliPlayerPartSDK_iOS に置き換えてください。AliPlayerPartSDK_iOS には FFmpeg フレームワークが含まれていません。これにより、ショートビデオ SDK の FFmpeg フレームワークとの競合を防ぐことができます。

    • ApsaraVideo Player SDK のバージョン番号が正しいことを確認してください。そうしない場合、エラーが報告され、SDK のインポートに失敗します。SDK のバージョンに関する詳細については、「iOS 向け ApsaraVideo Player SDK のリリースノート」をご参照ください。

    source 'https://github.com/CocoaPods/Specs.git'
    platform:ios, '8.0'
    
    target 'yourProject' do
        # ApsaraVideo Player SDK の最新バージョンを使用することを推奨します。
        pod 'AliPlayerSDK_iOS'
    end
  5. オプションで、特定のバージョンの ApsaraVideo Player SDK への依存関係を追加します。

    source 'https://github.com/CocoaPods/Specs.git'
    platform:ios, '8.0'
    
    player_sdk_version = '7.12.0'
    
    target 'yourProject' do
        # ApsaraVideo Player SDK の最新バージョンを使用することを推奨します。
        pod 'AliPlayerSDK_iOS' , player_sdk_version
    end
  6. 依存関係をインストールします。

    インストールコマンドを実行して、ApsaraVideo Player SDK の依存関係をローカルリポジトリに追加します。

    pod install

    次のサンプル結果は、インストールが成功したことを示しています。

    xxx@ yourProject % pod install
    Analyzing dependencies
    Downloading dependencies
    Installing AliPlayerSDK_iOS (7.11.0)
    Generating Pods project
    Integrating client project
    Pod installation complete! There is 1 dependency from the Podfile and 1 total pod installed.

    次のコマンドを実行して、ApsaraVideo Player SDK を更新します。

    pod update AliPlayerSDK_iOS

ローカルでのインテグレーション

説明

ApsaraVideo Player SDK とショートビデオ SDK の両方をインテグレーションする場合、インポートする AlivcFFmpeg は 1 つだけです。正しいバージョンの AlivcFFmpeg をインポートしていることを確認してください。

  1. iOS プレーヤー SDK をダウンロードします。

  2. プレーヤーフレームワークを [Frameworks, Libraries, and Embedded Content] セクションに追加し、[Embed][Embed & Sign] に設定します。

    • alivcffmpeg.framework:プレーヤーの基盤となるフレームワーク。

    • AliyunMediaDownloader.framework:オフラインダウンロード用のフレームワーク。

    • AliyunPlayer.framework:プレーヤーフレームワーク。

      本地集成

  3. [Build Settings] タブをクリックします。

  4. [Search Paths] セクションで、[Framework Search Paths] をフレームワークファイルが保存されているディレクトリに設定します。

(オプション) リアルタイムストリーミング (RTS) のインテグレーション (CocoaPods)

リアルタイムストリーミング (RTS) コンポーネントをインテグレーションするには、「iOS での RTS ストリームフェッチングの実装」をご参照ください。

ステップ 2:ライセンスの設定

重要

グローバル環境 (中国本土、香港、マカオ、台湾以外のリージョン) を使用する場合、プレーヤー API を呼び出す前に、必ず次の API を呼び出してデフォルト設定を国際環境に更新してください。

  1. 方法 1:次の API を呼び出して、デフォルト設定を国際環境に更新します。

    // グローバル環境 (中国本土、香港、マカオ、台湾以外のリージョン) を使用する場合、プレーヤー API を呼び出す前に、必ず次の API を呼び出してデフォルト設定を国際環境に更新してください。これにより、後続のすべてのサービスが国際環境で実行されるようになります。
    // 統一された AlivcBase インターフェイスを使用して国際環境を設定します。環境はランタイム中に変更できません。
    AlivcBase.EnvironmentManager.globalEnvironment = ENV_SEA;
  2. 方法 2 (推奨):ApsaraVideo Player SDK V7.6.0 以降では、Info.plist ファイルで国際環境を設定できます。

    Info.plist ファイルを開き、AlivcEnv の値を SEA に変更します。

    // 現在の環境を国際環境として設定します。
    <key>AlivcEnv</key>
    <string>SEA</string>

    次の図は設定例です。1754557498401-1d235342-3c0b-4c83-bcee-ae7656e8ff23

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

Alibaba Real-Time Communication (ARTC) プロトコルをサポートするフレームワーク。このフレームワークはオプションです。

説明

ARTC プロトコルをサポートするには、RtsSDK.framework も追加する必要があります。詳細については、「iOS での RTS ストリームフェッチングの実装」をご参照ください。

aemFilter.framework

オーディオエンハンスメントはオプションです。

libPluginSR.framework

ビデオ超解像用のフレームワーク。このフレームワークはオプションです。

normalsrFilter.framework

ビデオ超解像用のフレームワーク。このフレームワークはオプションです。

srFilter.framework

ビデオ超解像用のフレームワーク。このフレームワークはオプションです。

vfiFilter.framework

ビデオフレーム補間はオプションです。

vvcCodecPlugin.framwork

H.266 デコーディング用のプラグイン。このフレームワークはオプションです。

よくあるインテグレーションの問題

CocoaPods の使用方法

CocoaPods の使用方法

// プロジェクトを CocoaPods の依存関係から統合解除します。
pod deintegrate 

// ローカルの CocoaPods ソースのインデックスを更新します。
// シナリオ:
// このコマンドにより、新しい依存関係を追加する際に、利用可能な最新バージョンを確実に取得できます。
// ライブラリの特定のバージョンが利用できない場合や、新しいバージョンがリリースされてもプロジェクトに表示されない場合に、このコマンドを実行してインデックスを更新できます。
pod repo update

// プロジェクト内の Pod を更新します。
// シナリオ:
// プロジェクト内のすべての Pod をサポートされている最新バージョンに更新したい場合に、このコマンドを実行します。
// Podfile で依存関係のバージョン範囲を指定している場合、このコマンドはライブラリをその範囲を満たすバージョンに更新しようとします。
pod update

// pod install と同じ機能を実行しますが、インストールの前にローカルの CocoaPods リポジトリのインデックスを強制的に更新します。
// シナリオ:
// 新しいライブラリを追加する場合や、Podfile で指定されたライブラリの最新バージョンを使用したい場合に、このコマンドを実行することを推奨します。これは、要求されたライブラリのバージョンが利用できないことを示すエラーメッセージが表示された場合に役立ちます。
pod install --repo-update

// Pod のキャッシュをクリアします。
// 注意事項:
// 1. キャッシュをクリアしても、Podfile.lock や Podfile は変更されません。pod install または pod update を実行すると、CocoaPods はマニフェストファイルとロックファイルに基づいて必要なライブラリを再ダウンロードします。
// 2. キャッシュのクリアは日常的な操作ではありません。特定の問題が発生した場合にのみ、この操作を実行してください。通常の場合、CocoaPods は自身のキャッシュを適切に管理できます。
pod cache clean --all

インテグレーション中に、ご自身のコードまたは参照するサードパーティコードが AlivcFFmpeg のシンボルと競合する場合

解決策:

  • AlivcFFmpeg のシンボルとの競合:AlivcFFmpeg を 1 つだけ保持し、余分な AlivcFFmpeg の依存関係を削除します。AlivcFFmpeg は、Alibaba Cloud が FFmpeg をベースに開発したカスタム依存関係であり、ApsaraVideo Player SDK の重要な部分です。サードパーティ SDK の AlivcFFmpeg 依存関係を削除し、ApsaraVideo Player SDK の AlivcFFmpeg 依存関係を保持することを推奨します。ただし、これによりサードパーティのプレーヤーでエラーが発生する可能性があります。

サンドボックスエラー

  • 問題は次のとおりです:

    截屏2024-12-06 16

  • 解決策:

    UserSettings の User Script SandBoxing を NO に設定します。

    1735888658101-5633103e-468d-4341-adaa-f5f52814aa36

ショートビデオのインテグレーション

iOS プレーヤー SDK とショートビデオ SDK の両方をプロジェクトにインテグレーションするには、iOS オールインワン SDK を使用してインテグレーションすることを推奨します。これにより、クラスの重複エラーやコンパイルの失敗を防ぐことができます。

ApsaraVideo Player SDK の使用時に発生する可能性のあるその他の問題と対応する解決策については、「ApsaraVideo Player に関するよくある質問」をご参照ください。

機能関連ドキュメント

基本機能

高度な機能