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

ApsaraVideo Live:Flutter

最終更新日:Nov 10, 2025

ApsaraVideo Player SDK for Flutter は、オーディオおよびビデオ機能をモバイルアプリケーションに統合するための効率的なソリューションを提供します。これにより、開発者はライブストリーミングやビデオオンデマンドなどのコアビデオシナリオを迅速に実装できます。このトピックでは、ApsaraVideo Player SDK for Flutter のライブストリーミング再生機能について説明します。

標準ライブストリーミング再生

  1. SDK を統合します。

    詳細については、「ApsaraVideo Player SDK for Flutter を統合する」をご参照ください。

  2. ライブストリーミング再生を実装します。

    1. 開始します。

      基本的な再生を実装するには、「ApsaraVideo Player for Flutter のクイックスタート」をご参照ください。

    2. ライブストリームソースを設定します。

      ApsaraVideo Player SDK for Flutter は、ライブストリーム再生に UrlSource メソッドのみをサポートします。

      UrlSource を使用したライブストリームの再生

      UrlSource メソッドを使用してライブストリームを再生するには、プレーヤーの setUrl プロパティをストリーミング URL に設定します。URL は、サードパーティプロバイダーからのもの、または ApsaraVideo Live からのストリームフェッチング URL を使用できます。

      ApsaraVideo Live コンソールの URL ジェネレーターを使用して、ストリームフェッチング URL を生成できます。詳細については、「ApsaraVideo Live URL ジェネレーター」をご参照ください。

      void onViewPlayerCreated(viewId) async {
        // プレーヤーのレンダリングビューを設定します。
        fAliplayer.setPlayerView(viewId);
        // 再生ソースを設定します。
        switch (_playMode) {
          // UrlSource 再生メソッド。
          case ModeType.URL:
            this.fAliplayer.setUrl("リソースの再生 URL を入力してください。"); // 再生 URL は、サードパーティのストリーミング URL または ApsaraVideo Live からのストリームフェッチング URL を使用できます。
            break;
          default:
        }
      }

RTS ライブストリーミング再生

説明
  • Android または iOS 用のネイティブ SDK を統合します。

    Android 統合の場合、次の例に示すように、依存関係を build.gradle ファイルに追加します。

    dependencies{
        def player_sdk_version = "7.2.0"
        def rts_sdk_version = "7.2.0"
        
        // プレーヤーと RTS (AlivcArtc) 間のブリッジレイヤー。バージョン番号はプレーヤーのバージョン番号と一致する必要があります。これは RTS コンポーネントと統合する必要があります。
        implementation 'com.aliyun.sdk.android:AlivcArtc:$player_sdk_version'
        // RTS コンポーネント。独立したバージョン番号を持ちます。
        implementation 'com.aliyun.rts.android:RtsSDK:$rts_sdk_version'
    }

    iOS 統合の場合、次の例に示すように、依存関係を Podfile ファイルに追加します。

    # player_sdk_version は ApsaraVideo Player SDK for iOS のバージョン番号です (例: 7.2.0)。
    player_sdk_version = '7.2.0'
    # rts_sdk_version は RTS SDK のバージョン番号で、独立しています (例: 7.2.0)。
    rts_sdk_version = '7.2.0'
    
    target 'Runner' do
      flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
      # プレーヤーと RTS (AlivcArtc) 間のブリッジレイヤー。バージョン番号はプレーヤーのバージョン番号と一致する必要があります。これは RTS コンポーネントと統合する必要があります。
      pod 'AliPlayerSDK_iOS_ARTC', player_sdk_version 
      # RTS コンポーネント。
      pod 'RtsSDK', rts_sdk_version  
    
    end

Alibaba Real-Time Communication (ARTC) ストリームを再生するには、統合中に RTS 関連の依存関係をインポートする必要があります。Android の場合、プレーヤーを作成する前に FlutterAliPlayerFactory.loadRtsLibrary(); を呼び出して RTS SDK 動的ライブラリを読み込む必要もあります。次の例にこのプロセスを示します。

  1. pubspec.yaml ファイルを設定します。

    name: your_project
    description: A new Flutter project.
    version:  1.0.0+1
    
    # 次の行は、パッケージが誤って公開されるのを防ぎます
    # `pub publish` を使用して pub.dev に公開します。これは非公開パッケージに推奨されます。
    publish_to: 'none' # pub.dev に公開したい場合は、この行を削除してください
    
    environment:
      sdk: ">=2.15.0 <4.0.0"
    
    dependencies:
      flutter:
        sdk: flutter
    
      // flutter_aliplayer を追加します。
      flutter_aliplayer: "7.3.1"
    
    dev_dependencies:
      flutter_test:
        sdk: flutter
    
    # このファイルの一般的な Dart 部分に関する情報については、
    # 次のページを参照してください: https://dart.dev/tools/pub/pubspec
    
    # 次のセクションは Flutter に固有です。
    flutter:
    
      # 次の行は、Material Icons フォントが
      # アプリケーションに含まれるようにします。これにより、
      # material Icons クラスのアイコンを使用できます。
      uses-material-design: true
  2. RTS SDK を読み込みます。

    説明
    1. ApsaraVideo Player for Android V7.3.1 以前を使用する場合、RTS SDK を手動で読み込む必要があります。

    2. useAIOFramework=true の場合、All-in-One Media SDK が使用されます。それ以外の場合は、ApsaraVideo Player SDK と RTS SDK が使用されます。このプロパティのデフォルト値は false です。

    3. 最新の SDK バージョンを使用してください:

      1. All-in-One Media SDK については、「All-in-One Media SDK for Android」および「All-in-One Media SDK for iOS」をご参照ください。

      2. ApsaraVideo Player SDK については、「ApsaraVideo Player SDK のダウンロード」をご参照ください。

      3. RTS コンポーネントについては、「Android での RTS ストリームフェッチングの実装」および「iOS での RTS ストリームフェッチングの実装」をご参照ください。

    dependencies {
        // SDK カーネルを定義します。
        def useAIOFramework = false
    
        // SDK バージョンを定義します。
        // All-in-One Media SDK。
        def aio_sdk_version = "7.1.0"
        // ApsaraVideo Player SDK。
        def player_sdk_version = "7.2.0"
        // RTS コンポーネント。
        def rts_sdk_version = "7.2.0"
    
        // useAIOFramework の値に基づいて SDK を選択します。
        if (useAIOFramework) {
            // All-in-One Media SDK (インタラクティブストリーム): アップストリーミング (RTS および RTC 共同ストリーミングを含む) + プレーヤー。
            implementation "com.aliyun.aio:AliVCSDK_InteractiveLive:$aio_sdk_version"
        } else {
            // スタンドアロン ApsaraVideo Player SDK。
            implementation "com.aliyun.sdk.android:AliyunPlayer:$player_sdk_version-full"
            implementation "com.aliyun.sdk.android:AlivcArtc:$player_sdk_version"
            implementation "com.aliyun.rts.android:RtsSDK:$rts_sdk_version"
        }
    
        implementation 'com.google.code.gson:gson:2.10.1'
    }
    

    RTS SDK を手動で読み込みます。

    FlutterAliPlayerFactory.loadRtsLibrary(true);
  3. ビデオを再生します。

    FlutterAliplayer player = FlutterAliPlayerFactory.createAliPlayer();
    player.setUrl("artc://xxxx");
    
    player.prepare();
    player.play();