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

ApsaraVideo Live:RTS ライブ再生

最終更新日:Jan 22, 2026

リアルタイムストリーミング (RTS) は ApsaraVideo Live の付加価値機能です。ApsaraVideo Player SDK は RTS を使用して、何百万もの同時接続ユーザーにミリ秒レベルのレイテンシーでライブストリーミングを配信します。これにより、従来のライブストリーミングで見られる 3〜6 秒のレイテンシーの問題が解決されます。超低レイテンシー、低スタッタリング、インスタント再生体験を提供します。このトピックでは、RTS 再生を実装する方法について説明します。

重要

特徴、API ドキュメント、よくある質問の詳細については、「Android プレーヤー」をご参照ください。

RTS 再生

ApsaraVideo Player SDK for Android は、ネイティブ RTS SDK を統合して、ネイティブクライアントでの低レイテンシーライブストリーミングを可能にします。詳細については、「Android での RTS ストリームフェッチングの実装」をご参照ください。

詳細なコード例については、API-ExampleRTS 超低遅延ライブ再生 (RtsLiveStream) モジュールをご参照ください。この ApsaraVideo Player SDK for Android 向けの Java ベースのサンプルプロジェクトは、開発者が SDK のコア機能を統合する方法をすぐに習得するのに役立ちます。

RTS 解像度切り替え

説明
  • この機能は、ApsaraVideo Live の再生 URL とトランスコードされたストリーム URL をサポートします。デフォルトおよびカスタムのトランスコーディングの両方がサポートされています。ライブストリームトランスコーディングの詳細については、「トランスコーディング管理」をご参照ください。ストリーミング URL の生成方法の詳細については、「ストリーミング URL の生成」をご参照ください。

  • 解像度切り替えは、RTS および HTTP-FLV プロトコルを使用するライブストリームでサポートされています。

  • 入力ストリームの Group of Pictures (GOP) サイズは 1 秒または 2 秒である必要があります。GOP サイズが大きいと、ストリームを切り替える際に再生がスキップする可能性があります。

  • ストリーミングドメインでは、「FLV 再生中の RTMP タイムスタンプを出力」および「アップストリーム中断後の RTMP タイムスタンプを出力」オプションを有効化してください。トランスコーディング設定では、「ソースタイムスタンプ」および「ソースキーフレーム」オプションを有効化してください。そうしないと、ストリームの切り替えでカクつきや失敗が発生する可能性があります。これらのオプションを有効化するには、チケットを送信してください。

  • これらの要件を満たさないストリーム URL に切り替えた場合、切り替えは失敗します。

解像度の切り替え

解像度を切り替えるには、switchStream メソッドを呼び出し、新しい解像度の URL を渡します。

// 再生を開始
aliPlayer.setUrlSource(oldUrl);
aliPlayer.prepare();
aliPlayer.start();

// 再生中に別の URL に切り替え
aliPlayer.switchStream(newUrl);

解像度切り替えの通知

解像度の切り替えが成功または失敗したときに、以下のコールバックがトリガーされます。

aliPlayer.setOnStreamSwitchedListener(new IPlayer.OnStreamSwitchedListener() {
    @Override
    public void onSwitchedSuccess(String url) {
        Log.i("SwitchStream", "switch success, url = " + url);
    }

    @Override
    public void onSwitchedFail(String url, ErrorInfo errorInfo) {
        Log.i("SwitchStream", "switch failed, url = " + url + ", error=" + errorInfo.getMsg());
    }
});