このトピックでは、Android 向け ApsaraVideo Real-time Communication SDK に含まれる API について説明します。
目次
基本インターフェイス
|
API |
説明 |
|
シングルトンパターンを使用して AliRtcEngine インスタンスを作成します。 | |
|
AliRtcEngine インスタンスを作成します(シングルトンパターン)。 | |
|
AliRtcEngine オブジェクトを破棄します。 | |
|
AliRtcEngine オブジェクトを破棄します。 | |
|
HTML5 互換モードを有効にします。 | |
|
現在の環境が HTML5 と互換性があるかどうかを確認します。 | |
|
ローカルユーザーの動作に関するコールバックイベントのリスナーを設定します。 | |
|
リモートユーザーの動作に関する通知イベントのリスナーを設定します。 | |
|
現在の SDK バージョンを照会します。 |
チャネル関連メソッド
|
API |
説明 |
|
チャネルモードを設定します。 | |
|
音声エンコーディングおよびシナリオモードを設定します。 | |
|
音声のみモードが有効かどうかを照会します。 | |
|
音声のみモードまたは音声・映像モードを設定します。 | |
|
チャネルに参加します。 | |
|
チャネルに参加します。 | |
|
チャネルに参加します。 | |
|
チャネルから退出します。 | |
|
チャネル内にいるかどうかを確認します。 | |
|
ユーザーのロールを設定します。 | |
|
ユーザーのロールを取得します。 | |
|
認証情報を更新します。 | |
|
認証情報を更新します。 |
配信およびサブスクリプション関連メソッド
|
API |
説明 |
|
ローカルの映像ストリームの配信を停止または再開します。配信はデフォルトで有効になっています。 | |
|
音声ストリームが配信されているかどうかを照会します。 | |
|
リモートユーザーの音声トラックをサブスクライブするかどうかを指定します。デフォルトでは、すべてのリモート音声トラックがサブスクライブされます。このメソッドはチャネル参加前に呼び出す必要があります。 | |
|
特定のリモートユーザーの音声ストリームのフェッチを停止または再開します。 | |
|
すべてのリモートユーザーからの音声ストリームの受信を停止または再開します。 | |
ローカルの映像ストリームをプッシュするかどうかを指定します。SDK はデフォルトでプッシュします。 | |
|
映像ストリームが配信されているかどうかを照会します。 | |
|
リモートユーザーの映像ストリームをサブスクライブするかどうかを指定します。デフォルトでは、すべてのリモート映像ストリームがサブスクライブされます。このメソッドはチャネル参加前に呼び出す必要があります。 | |
|
指定されたリモート映像ストリームのサブスクリプションを停止または再開します。 | |
|
すべてのリモート映像ストリームの受信を停止または再開します。 | |
|
特定のリモートユーザーのメディアストリームのサブスクリプションを開始または停止します。音声トラックと映像トラックの両方が利用可能で管理が必要な場合にこのメソッドを呼び出します。 | |
|
特定のリモートユーザーのメディアストリームを停止または再開します。この API は、オーディオとビデオの両方が含まれ、コントロールが必要な場合に使用します。 | |
|
チャネル間で特定のリモートユーザーのメディアストリームを停止または再開します。 | |
|
チャネル間ですべてのユーザーのストリームサブスクリプションを停止または再開します。 | |
|
ストリームフェッチ再生ボリュームを調整します。 |
音声デバイス管理関連メソッド
|
API |
説明 |
|
ローカル音声の配信を停止するかどうかを指定します。 | |
|
リモート音声ストリームの再生を停止するかどうかを設定します。 | |
|
すべてのリモート音声の再生を停止または再開します。 | |
|
音声収集を開始します。 | |
|
音声収集を開始します。 | |
|
音声キャプチャをシャットダウンします。 | |
|
デフォルトの音声出力デバイスを設定します。 | |
|
音声出力をイヤホンまたはスピーカーに設定します。 | |
|
現在の音声出力デバイスがイヤホンかスピーカーかを照会します。 | |
|
ボリューム検出を有効にします。 | |
|
インイヤーモニタリングを有効にします。 | |
|
インイヤーモニタリングのボリュームを設定します。 | |
|
音声再生デバイスをオンにします。 | |
|
音声再生デバイスをシャットダウンします。 | |
|
ローカル再生ボリュームを設定します。 | |
|
録音ボリュームを設定します。 | |
|
オーディオファイルを再生します。 | |
|
オーディオファイルの再生を停止します。 | |
|
通話前の音声キャプチャデバイス検出を有効にします。 | |
|
音声キャプチャ検出をシャットダウンします。 |
音声変更および残響関連メソッド
|
API |
説明 |
|
音声変更のサウンドエフェクトモードを設定します。 | |
|
ピッチパラメーターを設定します。 | |
|
残響モードを設定します。 | |
|
残響モードとそのパラメーターを設定します。 | |
|
プリセットの音声強調サウンドエフェクトパターンを設定します。 | |
|
オーディオイコライザー(EQ)パラメーターを設定して、指定された周波数帯のゲインを調整します。 |
カスタム音声入力
|
API |
説明 |
|
外部音声ストリームを追加します。 | |
|
外部音声ストリームデータを入力します。 | |
|
アップストリーミング用の外部音声のボリュームを設定します。 | |
|
アップストリーミング用の外部音声のボリュームを照会します。 | |
|
外部音声ストリームの再生ボリュームを設定します。 | |
|
外部音声ストリームの再生ボリュームを取得します。 | |
|
外部音声ストリームを削除します。 |
音楽伴奏
|
API |
機能説明 |
|
オーディオファイル情報を取得します。 | |
|
伴奏ミキシングを開始します。 | |
|
伴奏ミキシングを停止します。 | |
|
伴奏のローカル再生およびアップストリーミング用のボリュームを設定します。 | |
|
アップストリーミング用の伴奏ボリュームを設定します。 | |
|
アップストリーミング用の伴奏ボリュームを取得します。 | |
|
伴奏のローカル再生ボリュームを設定します。 | |
|
ローカル伴奏再生ボリュームを取得します。 | |
|
伴奏ミキシングを一時停止します。 | |
|
伴奏ミキシングを再開します。 | |
|
伴奏ファイルの長さをミリ秒単位で取得します。 | |
|
伴奏ファイルの再生進捗をミリ秒単位で取得します。 | |
|
伴奏ファイルの再生位置を設定します。 |
効果音ファイル
|
API |
説明 |
|
効果音をプリロードします。 | |
|
プリロードされた効果音ファイルを削除します。 | |
|
効果音の再生を開始します。 | |
|
効果音の再生を停止します。 | |
|
すべての効果音の再生を停止します。 | |
|
効果音の再生を一時停止します。 | |
|
すべての効果音の再生を一時停止します。 | |
|
効果音の再生を再開します。 | |
|
すべての効果音ファイルを復元します。 | |
|
アップストリーミング用の効果音のボリュームを設定します。 | |
|
アップストリーミング用の効果音のミキシングボリュームを取得します。 | |
|
アップストリーミング用のすべての効果音のボリュームを設定します。 | |
|
ローカル再生用の効果音のボリュームを設定します。 | |
|
ローカル再生用の効果音のボリュームを照会します。 | |
|
ローカル再生用のすべての効果音のボリュームを設定します。 |
音声・映像ファイルの録画
|
API |
機能説明 |
|
音声・映像ファイルを録画します(aac、wav、mp4)。 | |
|
音声・映像ファイルの録画を停止します。 |
映像デバイス管理関連メソッド
|
API |
説明 |
|
SurfaceView レンダリングビューを作成します。 | |
|
ローカルプレビューのレンダリングウィンドウおよび描画パラメーターを設定します。 | |
|
リモート映像のレンダリングウィンドウおよび描画パラメーターを設定します。 | |
|
カメラ収集のプリファレンスを設定します。 | |
|
ローカル映像キャプチャを無効または再有効にします。 | |
|
ローカル映像ストリームの配信を停止するかどうかを指定します。 | |
|
カメラがオンになっているかどうかを確認します。 | |
|
映像エンコーディングプロパティを設定します。 | |
|
映像デコーディングプロパティを設定します。 | |
|
フロントカメラとリアカメラを切り替えます。デフォルトではフロントカメラが使用されます。 | |
|
現在のカメラ方向を照会します。 | |
|
ローカルプレビューを開始します。 | |
|
ローカルプレビューを停止します。 | |
|
カメラのスケーリング比を設定します。 | |
|
カメラの最大ズーム比を取得します。 | |
|
現在のカメラスケーリング設定を取得します。 | |
|
カメラの露出を設定します。 | |
|
カメラの露出を取得します。 | |
|
カメラがサポートする最小露出を取得します。 | |
|
カメラがサポートする最大露出を取得します。 | |
|
カメラフラッシュの切り替えを設定します。 | |
|
デバイスが手動フォーカスをサポートしているかどうかを示します。 | |
|
カメラの手動フォーカスポイントを設定します。 | |
|
カメラが露出ポイントの設定をサポートしているかどうかを指定します。 | |
|
カメラの露出ポイントを設定します。 | |
|
カメラが顔に自動的にフォーカスするかどうかを指定します。 | |
|
カメラの顔フォーカスを設定します。 | |
|
プレビューおよびアップストリーミング用の映像ミラーリングを設定します。 | |
|
映像キャプチャのスケーリングタイミングを設定します。 |
映像データコールバック関連メソッド
|
API |
機能説明 |
|
映像データ出力オブジェクトを登録します。 | |
|
映像データ出力オブジェクトの登録を解除します。 | |
|
ローカルカメラ映像ストリームの OpenGL テクスチャデータのオブザーバーを登録します。 | |
|
ローカルカメラストリーム映像の OpenGL テクスチャデータオブザーバーの登録を解除します。 | |
|
映像スクリーンショット機能。 |
音声データコールバック関連メソッド
|
API |
機能説明 |
|
ボリュームデータ出力オブジェクトを登録します。 | |
|
ボリュームデータ出力オブジェクトの登録を解除します。 | |
|
音声コールバックパラメーターを設定します。 | |
|
音声データコールバックを登録します。 |
カスタム映像入力
|
API |
説明 |
|
外部映像入力ソースを有効にします。 | |
|
外部映像データをインポートします。 |
画面共有関連メソッド
|
API |
機能説明 |
|
画面共有アップストリーミングを有効にします。 | |
|
画面と音声ストリームの共有を開始します。 説明
このインターフェイスはまもなく非推奨になります。 | |
|
画面共有を開始します。 説明
この API はまもなく非推奨になります。 | |
|
画面共有ストリームを停止します。 | |
|
共有音声ストリームのボリュームを設定します。 | |
|
画面共有のプッシュ状態を照会します。 | |
|
画面ストリームの映像エンコーディングプロパティを設定します。 |
ライブストリーミングバイパスインターフェイス
|
API |
説明 |
|
中継ライブストリーミングを開始します。 | |
|
中継ライブストリーミングのパラメーターを更新します。 | |
|
バイパスライブストリーミングを停止します。 | |
|
中継ライブストリーミングのステータスを照会します。 |
ネットワーク品質プローブ API
|
API |
説明 |
|
ネットワーク品質テストを開始します。 | |
|
ネットワーク品質テストを停止します。 |
SEI
|
API |
機能説明 |
|
SEI ストリームをプッシュします。 | |
|
SEI ストリームをプッシュします(拡張)。 |
その他の API
|
API |
説明 |
|
カスタムパラメーターを設定します。 | |
|
カスタムパラメーターを取得します。 | |
|
SDK ログファイルの保存パスを設定します。 | |
|
ログレベルを設定します。 | |
|
デバイスの向きを設定します。 | |
|
オーディオフォーカスを要求します。 | |
|
オーディオフォーカスを解放します。 | |
|
現在のネットワーク時間を取得します。 | |
|
データチャネルのカスタムメッセージを送信します。 |
AliveEnv メソッド
|
API |
機能説明 |
|
グローバル環境を設定します。 |
コールバック
AliRtcEngineEventListener
|
API |
機能説明 |
|
ネットワーク接続ステータスのコールバックです。このコールバックに注意してください。 | |
|
オンプレミスデバイスの異常に関するコールバックです。お客様はこのコールバックを処理する必要があります。 | |
|
チャネル参加結果のコールバックです。 | |
|
チャネル退出結果のコールバックです。 | |
|
音声ストリームアップストリーミングの変更に関するコールバックです。 | |
|
音声サブスクリプションステータスの変更に関するコールバックです。 | |
|
映像ストリームアップストリーミングの変更コールバックです。 | |
|
カメラストリームサブスクリプションの変更に関するコールバックです。 | |
|
バイパスストリームアップストリーミングステータスの変更コールバックです。 | |
|
バイパスタスクのステータスが変更されたときのコールバックです。 | |
|
ネットワーク品質の変化に関するコールバックです。 | |
|
ネットワーク品質検出のコールバックです。このコールバックは検出開始後約 3 秒でトリガーされます。 | |
|
ネットワーク品質検出結果のコールバックです。このコールバックは検出開始後約 30 秒で提供されます。 | |
|
スクリーンショット結果のコールバックインターフェイスです。 | |
|
画面共有ストリームアップストリーミングの変更に関するコールバックです。 | |
|
画面共有ストリームサブスクリプションの変更に関するコールバックです。 | |
|
障害通知です。 | |
|
ローカルオーディオデバイスのステータスコールバックです。 |
AliRtcEngineNotify
|
API |
機能説明 |
|
この通知は、ユーザー認証が 30 秒後に期限切れになることを示します。お客様はこのコールバックを処理する必要があります。 | |
|
ユーザーが認証を必要とするインターフェイスを呼び出し、サーバー側が期限切れ情報を返します。 | |
|
リモートユーザーのオフライン通知 | |
|
リモートユーザーのオンライン通知です。 | |
|
リモートストリームアップストリーミングの通知です。 | |
|
サーバーからキックアウトされたか、ミーティングチャネルが閉じられたというメッセージです。 | |
|
リモートユーザーがミュートされたことを通知します。 | |
|
オーディオデバイスが開始通知を中断します。 | |
|
オーディオデバイスの割り込み完了通知です。 | |
|
ピアユーザーはビデオブラックフレームデータに関する通知を送信します。 | |
|
ピアユーザーがカメラストリームキャプチャをシャットダウンしたときに通知を送信します。 | |
|
リモートユーザーのアプリケーションがバックグラウンドに移動しました。 | |
|
リモートユーザーのアプリケーションがフォアグラウンドに戻りました。 | |
|
ローカル効果音再生終了コールバック | |
|
オーディオファイル情報のコールバックです。 | |
|
メディア拡張情報のコールバックを受信します。 | |
|
このメッセージは、リモートユーザーの最初の映像フレームが表示されたときにトリガーされます。 | |
|
このメッセージは、プレビュー開始時に最初の映像フレームが表示され始めたときにトリガーされます。 | |
|
リモートユーザーから最初の映像フレームを受信した際のコールバックです。 | |
|
最初の映像パッケージが送信された際のコールバックです。 | |
|
最初の音声パッケージ送信コールバックです。 | |
|
最初の映像パッケージを受信した際のコールバックです。 | |
|
音声の最初のパケット受信コールバックです。 | |
|
最初にデコードされたリモート音声フレームのコールバックです。 | |
|
ローカル伴奏再生ステータスのコールバックです。 | |
|
リモートユーザー同行の再生が開始されました。 | |
|
リモートユーザーの伴奏再生終了コールバックです。 | |
|
リアルタイムデータコールバック(2 秒ごとにトリガーされます)。 | |
|
ローカル映像ストリームのアップストリーミングデータ統計(2 秒ごとにトリガーされます)。 | |
|
リモートビデオストリームのデータ統計を購読します(2秒ごとにトリガーされます)。 | |
|
サブスクライブされたリモート音声ストリームのデータ統計(2 秒ごとにトリガーされます)。 | |
|
アップストリーミングされたローカル音声ストリームのデータ統計です。2 秒ごとにトリガーされます。 | |
|
オーディオフォーカスの変更コールバック(Android のみ)。 | |
オーディオルーティングの変更に関するコールバックです(Android および iOS プラットフォームでのみ適用されます)。 | |
このコールバックは、データチャネルメッセージの送信を開始できるようになったときにトリガーされます。 | |
|
データチャネルのカスタムメッセージ受信コールバックです。 |
AliRtcAudioVolumeObserver
|
API |
機能説明 |
|
ユーザーのボリューム表示に関するコールバックです。 | |
|
音声アクティベーションは、アクティブユーザーのコールバックを検出します。 | |
|
通話前チェック中のボリューム情報に関するコールバックです。 |
AliRtcAudioFrameObserver
|
API |
機能説明 |
|
音声キャプチャの生データコールバックです。 | |
|
3A 処理後の音声データコールバックです。 | |
|
アップストリーミング用の音声データコールバックです。 | |
|
再生データコールバックです。 | |
|
リモートストリームフェッチングデータのコールバックです。 |
AliRtcDestroyCompletionObserver
|
API |
機能説明 |
|
DPI エンジンの破棄完了コールバックです。 |
AliRtcTextureObserver
|
API |
機能説明 |
|
OpenGL コンテキスト作成コールバックです。 | |
|
OpenGL テクスチャ更新コールバックです。 | |
|
OpenGL コンテキスト破棄コールバックです。 |
AliRtcVideoObserver
|
API |
機能説明 |
|
ローカルでキャプチャされた映像データのサブスクリプションコールバックです。 | |
|
ローカル映像データのエンコード前サブスクリプションコールバックです。 | |
|
サブスクライブされたリモート映像データのコールバックです。 | |
|
映像データ出力フォーマット | |
|
映像データ出力です。 |
詳細
getInstance[1/2]
AliRtcEngine のシングルトンインスタンスを取得できます。
public static AliRtcEngineImpl getInstance(Context context);このメソッドと getInstance[2/2] はどちらも AliRtcEngine インスタンスを作成します。違いは、
getInstance[2/2]がインスタンス作成時に追加の構成をサポートすることです。
呼び出しタイミング
他の ARTC SDK API を呼び出す前に、このメソッドを呼び出して AliRtcEngine インスタンスを作成します。
制限事項
SDK は 1 つのアプリあたり 1 つの AliRtcEngine インスタンスのみをサポートします。
パラメーター
|
パラメーター |
型 |
説明 |
|
context |
Context |
Android アクティビティのコンテキストです。 |
戻り値の説明
SDK は 1 つのアプリあたり 1 つの AliRtcEngine インスタンスのみをサポートします。
getInstance[2/2]
AliRtcEngine インスタンスを取得します(シングルトンパターン)。
public static AliRtcEngineImpl getInstance(Context context, String extras);このメソッドと
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#8f628e533bein" id="72113a6d4d6t8">getInstance[1/2]</a>はどちらも AliRtcEngine インスタンスを作成できます。違いは、このメソッドがインスタンス作成時に追加の構成を指定できることです。
呼び出しのタイミング
他の ARTC SDK API を呼び出す前に、このメソッドを呼び出して AliRtcEngine インスタンスを作成します。
制限事項
SDK は 1 つのアプリあたり 1 つの AliRtcEngine インスタンスのみをサポートします。
パラメーター
|
パラメーター |
型 |
説明 |
|
context |
Context |
Android アクティビティのコンテキストです。 |
|
extras |
String |
SDK のカナリアリリース中に特殊機能を設定するための JSON 構成を指定します。空文字列でも構いません。 |
戻り値の説明
AliRtcEngine のサブクラスである AliRtcEngineImpl クラスのシングルトンインスタンスを返します。
destroy[1/2]
AliRtcEngine インスタンスを破棄します。
public abstract void destroy();シングルトンの AliRtcEngine インスタンスを破棄します。このメソッドを呼び出すと、すべての内部リソースが解放されます。その後、他の AliRtcEngine メソッドやコールバックを使用することはできません。エンジンを再利用するには、getInstance を呼び出して新しいインスタンスを作成します。
このメソッドと destroy[2/2] はどちらもエンジンインスタンスを破棄します。違いは、
destroy[2/2]が完了オブザーバーを渡せることです。破棄後に新しい AliRtcEngine インスタンスを作成する場合は、このメソッドが完了した後にのみ行ってください。
呼び出しタイミング
リアルタイム通信が終了した後(つまり、AliRtcEngine 機能が不要になった場合)にこのメソッドを呼び出すことを推奨します。これにより、インスタンスが解放され、不要なリソース使用を削減できます。
制限事項
デッドロックを回避するため、このメソッドを SDK コールバック内から呼び出さないでください。
このメソッドを呼び出した後、エンジンオブジェクトを null に設定します。例:
mAliRtcEngine.destroy(); mAliRtcEngine = null;
destroy[2/2]
AliRtcEngine インスタンスを破棄します。
public abstract void destroy(AliRtcDestroyCompletionObserver observer);シングルトンの AliRtcEngine インスタンスを破棄します。このメソッドを呼び出すと、すべての内部リソースが解放されます。その後、他の AliRtcEngine メソッドやコールバックを使用することはできません。エンジンを再利用するには、getInstance を呼び出して新しいインスタンスを作成します。
このメソッドは非同期呼び出しであり、開発者が破棄完了を追跡できるようにオブザーバーを提供します。OnDestroyCompletion が完了するまで、新しい作成は実行できません。また、オブザーバーコールバックが実行される前に破棄は完了しません。
呼び出しタイミング
リアルタイム通信が終了した後にこのメソッドを呼び出すことを推奨します。これにより、インスタンスが解放されます。
制限事項
デッドロックを回避するため、このメソッドを SDK コールバック内から呼び出さないでください。
関連コールバック
SDK エンジンオブジェクトが破棄されると、OnDestroyCompletion コールバックがトリガーされ、新しい作成が可能になったことを示します。
パラメーター
|
パラメーター |
型 |
説明 |
|
observer |
エンジン破棄の通知コールバックです。このコールバックをリッスンすることで、リソースが完全に解放されたことを確認できます。 |
setH5CompatibleMode
HTML5 互換モードを有効にするかどうかを指定します。
public static int setH5CompatibleMode(int enable);パラメーター
|
パラメーター |
型 |
説明 |
|
enable |
int |
HTML5 互換モードを有効にするかどうかを指定します。有効値:
|
AliRtcEngine インスタンス作成後に現在のバージョンの HTML5 互換設定を変更することはできません。このメソッドはインスタンス作成前に呼び出す必要があります。
getH5CompatibleMode
HTML5 互換モードが有効かどうかを照会します。
public static int getH5CompatibleMode();応答の説明
値が 1 の場合、HTML5 互換モードが有効であることを示します。
値が 0 の場合、HTML5 互換モードが無効であることを示します。
setRtcEngineEventListener
ローカルユーザーの動作に関するコールバックイベントのリスナーを設定します。
public abstract void setRtcEngineEventListener(AliRtcEngineEventListener listener);このメソッドは、チャネル参加・退出結果、ユーザーのロール変更、音声・映像ストリームのアップストリーミングステータス変更、音声・映像ストリームのサブスクリプションステータス変更、ネットワーク品質の変化とプローブ結果、スクリーンショット結果、デバイスのステータスと例外、SDK のエラーなど、ローカルユーザーに関連するイベントのコールバックを設定します。開発者はこれらのコールバックメソッドを実装することで、RTC アプリケーションにおけるローカルユーザーのライフサイクルと状態変化を処理できます。
すべてのコールバックは空のデフォルト実装を持ちます。すべてのコールバックを実装する必要はありません。ビジネス要件に関連するもののみを実装してください。
リモートユーザーに関連するコールバックを実装するには、まず
AliRtcEngineNotifyクラスを実装し、setRtcEngineNotifyを呼び出す必要があります。コールバック内で時間のかかる操作(destroy メソッドの呼び出しなど)を実行しないでください。これによりブロッキングが発生し、SDK のパフォーマンスに影響を与える可能性があります。
呼び出しタイミング
チャネル参加前にこのメソッドを呼び出します。
関連コールバック
例外が発生した場合、SDK はまず内部でリトライを行い、自動的に回復を試みます。回復に失敗した場合、SDK は事前に定義されたコールバックを通じてアプリケーションに通知します。以下はアプリケーションレベルでの処理が必要な主なコールバックです。
|
異常の原因 |
コールバックとパラメーター |
解決策 |
注記 |
|
認証失敗 |
onJoinChannelResult コールバックの result パラメーターが AliRtcErrJoinBadToken を返します。 |
エラーが発生した場合、アプリケーションはトークンの正確性を確認する必要があります。 |
API 呼び出しが認証に失敗した場合、システムは認証エラーメッセージをコールバックで返します。 |
|
ネットワーク接続の異常 |
onConnectionStatusChange コールバックが AliRtcConnectionStatusFailed を返します。 |
このエラーが発生した場合、アプリケーションは会議に再参加する必要があります。 |
SDK は短時間のネットワーク障害から自動的に回復します。ただし、障害が事前に設定されたタイムアウトしきい値よりも長く続く場合、接続がタイムアウトして切断されます。このような場合、アプリケーションはネットワークステータスを確認し、ユーザーに会議への再参加を促す必要があります。 |
|
オンプレミスデバイスの異常 |
onLocalDeviceException |
この異常状態が発生した場合、アプリケーションが必要な権限を持っているか、デバイスハードウェアが正常に動作しているかを確認してください。 |
RTC サービスはデバイスの検出と診断をサポートしています。ローカルデバイスに問題が発生した場合、RTC サービスはアプリケーションにコールバックを送信します。SDK が自力で問題を解決できない場合、アプリケーションが介入してデバイスが正常に機能しているかを確認する必要があります。 |
パラメーター
|
パラメーター |
型 |
説明 |
|
listener |
ローカルユーザーの動作に関する通知イベントのリスナーを設定します。 |
setRtcEngineNotify
リモートユーザーの動作に関するコールバックイベントのリスナーを設定します。
public abstract void setRtcEngineNotify(AliRtcEngineNotify listener);このメソッドは、リモートユーザーのオンライン・オフライン通知、音声・映像ストリームのアップストリーミングステータス、解像度の変化、ローカルおよびリモートの音声・映像の最初のフレームおよび最初のパケットの送受信、ローカルおよびリモートの効果音および音楽伴奏の再生ステータス、ミュートステータス、ローカルおよびリモートの音声・映像ストリームの統計情報、SEI 受信、カスタムメッセージ受信、認証の変化など、リモートユーザーに関連するイベントのコールバックを設定します。開発者はこれらのコールバックメソッドを実装することで、リモートユーザーとのインタラクションを処理できます。
すべてのコールバックは空のデフォルト実装を持ちます。すべてのメソッドを実装する必要はありません。ビジネス要件に関連するもののみを実装してください。
コールバック内で時間のかかる操作(destroy メソッドの呼び出しなど)を実行しないでください。これによりブロッキングが発生し、SDK のパフォーマンスに影響を与える可能性があります。
呼び出しタイミング
チャネル参加前にこのメソッドを呼び出します。
関連コールバック
例外が発生した場合、SDK はまず内部でリトライを行い、自動的に回復を試みます。回復に失敗した場合、SDK は事前に定義されたコールバックを通じてアプリケーションに通知します。以下はアプリケーションレベルでの処理が必要な主なコールバックです。
|
異常の原因 |
コールバックとパラメーター |
解決策 |
注記 |
|
オフライン |
onBye |
|
RTC サービスは、管理者が参加者を削除できる機能を提供しています。 |
|
認証がまもなく期限切れ |
onWillAuthInfoExpire |
この例外が発生した場合、アプリケーションは最新の認証情報を再度取得し、`refreshAuthInfo` を呼び出して更新する必要があります。 |
認証の期限切れエラーは、ユーザーが API を呼び出したときとプログラム実行中の 2 つの状況で発生します。そのため、エラーフィードバックは API コールバックまたは個別のエラーコールバックとして提供されます。 |
|
認証の期限切れ |
onAuthInfoExpired |
このエラーが発生した場合、アプリケーションは会議に再参加する必要があります。 |
認証の期限切れは、ユーザーが API を呼び出したときとプログラム実行中の 2 つのケースで発生します。そのため、エラーフィードバックは API コールバックまたは個別のエラーコールバックとして表示されます。 |
パラメーター
|
パラメーター |
型 |
説明 |
|
listener |
リモートユーザーの動作に関する通知イベントのリスナーを設定し、エンジンからのメッセージを受信します。 |
getSdkVersion
現在の SDK バージョンを取得します。
public static String getSdkVersion();戻り値の説明
現在の SDK バージョン番号で、文字列形式(例:「2.5.0.x」)で返されます。
setChannelProfile
チャネルプロファイルを設定します。
public abstract int setChannelProfile(AliRTCSdkChannelProfile channelProfile);このメソッドはチャネルプロファイルを設定します。現在、主にビデオ通話モードとインタラクティブライブストリーミングモードの 2 つのプロファイルがサポートされています。
ビデオ通話モードでは、すべてのユーザーがストリーマーとなり、音声・映像ストリームをアップストリーミングおよびフェッチングできます。
インタラクティブライブストリーミングモードでは、
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#84f350f904s98" id="18edf3ea54po4">setClientRole</a>を呼び出す必要があります。チャネル内でストリームをアップストリーミングするユーザーには、ストリーマー(AliRTCSdkInteractive)ロールを設定します。ストリームをフェッチングするだけでアップストリーミングしないユーザーには、視聴者(AliRTCSdkLive)ロールを設定します。このモードは RTC シナリオに推奨されます。
すべての RTC シナリオではインタラクティブライブストリーミングモードの使用を推奨します。このメソッドを呼び出してプロファイルを
AliRTCSdkInteractiveLiveに設定してください。同じチャネル内のすべてのユーザーは同じチャネルプロファイルを使用する必要があります。
呼び出しタイミング
このメソッドはチャネル参加前のみに呼び出すことができます。チャネル内ではプロファイルを変更できません。チャネル退出後に変更可能です。
パラメーター
|
パラメーター |
型 |
説明 |
|
channelProfile |
チャネルタイプです。すべての RTC シナリオではインタラクティブモードを使用します。 |
応答の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します:1 は SDK が初期化されていないか、すでに破棄されていることを意味します。
setAudioProfile
音声エンコーディングモードと音声シナリオモードを設定します。
public abstract int setAudioProfile(AliRtcAudioProfile profile, AliRtcAudioScenario scenario);この API は音声エンコーディングモードと音声シナリオモードを設定します。詳細については、「一般的な音声操作と構成」をご参照ください。ARTC SDK はデフォルトで高品質音声モード(AliRtcEngineHighQualityMode)と音楽シナリオモード(AliRtcSceneMusicMode)を使用します。デフォルト設定が要件を満たさない場合は、この API を呼び出して変更する必要があります。
呼び出しのタイミング
このメソッドはチャネル参加前のみに呼び出すことができます。参加後は設定を変更できません。チャネル退出後に変更可能です。
パラメーター
|
パラメーター |
型 |
説明 |
|
profile |
音声収集またはエンコーディングモードのパラメーターです。高品質モード(AliRtcEngineHighQualityMode)を使用してください。 説明
Web との相互運用性を確保するには、サンプルレートを 48 kHz に設定してください。
| |
|
scenario |
音声シナリオモードのパラメーターには以下が含まれます:
説明
ARTC SDK バージョン v6.21 以降では、チャットルームシナリオ( |
戻り値の説明
0:呼び出しが成功しました。0 未満:呼び出しが失敗しました。
isAudioOnly
音声のみモードが有効かどうかを確認します。
public abstract boolean isAudioOnly();戻り値の説明
true の値は音声のみモードを示し、false の値は音声・映像モードを示します。
setAudioOnlyMode
音声のみモードを有効にするかどうかを指定します。
public abstract int setAudioOnlyMode(boolean audioOnly);パラメーター
|
パラメーター |
型 |
説明 |
|
audioOnly |
boolean |
音声のみモードまたは音声・映像モードを設定します。有効値:
|
応答の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します。
joinChannel[1/3]
単一パラメーターのトークンを使用してチャネルに参加します。
public abstract int joinChannel(String token, String channelId, String userId, String userName);このメソッドはチャネルに参加します。ARTC はユーザーをチャネルにまとめます。ユーザーはチャネルに参加して初めて、音声・映像ストリームのアップストリーミングまたはサブスクリプションが可能になります。このメソッド、joinChannel[2/3]、および joinChannel[3/3] はすべてチャネルに参加しますが、認証方法と渡されるユーザー情報が異なります。
これは単一パラメーター参加 API です。トークン認証 を使用して生成された単一パラメーター参加トークンを渡すことで、チャネルに参加できます。この API は RTC シナリオでのチャネル参加に推奨されます。
joinChannel[2/3]は複数パラメーター参加 API です。トークン認証 から生成された複数パラメーター参加トークンと、トークン生成に使用されたユーザー情報を渡す必要があります。joinChannel[3/3]は AI リアルタイムインタラクションシナリオ用です。単一パラメーターのトークンを渡し、シナリオに基づいてユーザー属性capabilityProfileを設定します。
デフォルトでは、チャネルに参加すると、チャネル内の他のすべてのユーザーの音声・映像ストリームをサブスクライブし、リモートユーザーに自分の音声・映像ストリームをプッシュします。このデフォルトのサブスクリプションをキャンセルしたい場合は、このメソッドを呼び出す前に <a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#0155f66448env" id="33438e1082mi8">setDefaultSubscribeAllRemoteAudioStreams</a> および <a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#c90127d90d22o" id="243e9483a0suk">setDefaultSubscribeAllRemoteVideoStreams</a> を呼び出して、音声または映像ストリームのサブスクリプションを無効にできます。
呼び出しタイミング
エンジン作成後にこのメソッドを呼び出します。
制限事項
チャネル参加に成功した後、セッション中に別のチャネルに参加する必要がある場合は、まず
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#fef395c4beqdt" id="4de6ecc1a4pa2">leaveChannel</a>を呼び出して現在のチャネルから退出し、<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#8c189be470bsp" id="70c68b0236xdt">onLeaveChannelResult</a>コールバックをAliRtcEngineEventListenerから確実に受信した後でなければ、再度チャネルに参加できません。このメソッドは一度に 1 つのチャネルにのみ参加できます。
異なる App ID を使用するアプリケーションは相互運用できません。
チャネル参加失敗時の再試行では、呼び出しは必要ありません。
関連コールバック
このメソッドを正常に呼び出した後、以下のコールバックがトリガーされます。
ローカルクライアントのチャネル参加結果は、
AliRtcEngineEventListenerの<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#89f5ad2d0bnd1" id="712006e223y8z">onJoinChannelResult</a>コールバックを通じて通知されます。チャネルに正常に参加した後、リモートクライアントは
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#7298cad465wnd" id="40a9273affui1">onRemoteUserOnLineNotify</a>コールバックをトリガーします。
パラメーター
|
パラメーター |
型 |
説明 |
|
token |
String |
単一パラメーターで会議に参加するための認証情報です。 |
|
channelId |
String |
参加するチャネルの ID で、トークン生成時に使用したものと同じである必要があります。 |
|
userId |
String |
チャネルに参加するユーザー ID で、トークン生成時に使用したものと同じである必要があります。 |
|
userName |
String |
ユーザーの表示名です。ユーザー ID ではありません。 |
戻り値の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します。
joinChannel[2/3]
マルチパーティ会議に参加します。
public abstract int joinChannel(AliRtcAuthInfo authInfo, String userName);このメソッドはチャネルに参加します。ARTC はユーザーをチャネルにまとめます。ユーザーはチャネルに参加して初めて、音声・映像ストリームのアップストリーミングまたはサブスクリプションが可能になります。このメソッド、joinChannel[1/3]、および joinChannel[3/3] はすべてチャネルに参加しますが、認証方法と渡されるユーザー情報が異なります。
joinChannel[1/3]はチャネル参加の単一パラメーターインターフェイスです。チャネルに参加するには、トークン認証 を使用して生成されたトークンを渡します。このインターフェイスは RTC シナリオでのチャネル参加に推奨されます。このインターフェイスは複数パラメーターのチャネル参加インターフェイスです。チャネルに参加するには、トークン認証 によって生成された複数パラメーターのチャネル参加トークンと、トークン生成に使用されたユーザー情報を提供する必要があります。
joinChannel[3/3]は AI リアルタイムインタラクションシナリオ用です。単一パラメーターのトークンを渡し、ユーザー属性capabilityProfileを設定します。
特別な構成を適用しない場合、チャネル参加時にデフォルトでチャネル内の他のすべてのユーザーの音声・映像ストリームをサブスクライブし、リモートユーザーに自分の音声・映像ストリームをプッシュします。このデフォルトのサブスクリプションを無効にするには、このインターフェイスを呼び出す前に
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#0155f66448env" id="474adcf738uxu">setDefaultSubscribeAllRemoteAudioStreams</a>および setDefaultSubscribeAllRemoteVideoStreamsを呼び出して、音声ストリームまたは映像ストリームのサブスクリプションを無効にしてください。この API は複数パラメーターでチャネルに参加するために使用されます。この API を呼び出す前に、トークン認証 を参照して必要なトークンを生成してください。
制限事項
チャネル参加に成功した後、セッション中に別のチャネルに参加する必要がある場合は、まず
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#fef395c4beqdt" id="e2525ba6a0k3s">leaveChannel</a>を呼び出して現在のチャネルから退出し、<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#8c189be470bsp" id="6aefdfedb0op3">onLeaveChannelResult</a>コールバックをAliRtcEngineEventListenerから確実に受信した後でなければ、再度チャネルに参加できません。このメソッドは一度に 1 つのチャネルにのみ参加できます。
異なる App ID を使用するアプリケーションは相互運用できません。
関連コールバック
このメソッドを正常に呼び出した後、以下のコールバックがトリガーされます。
ローカルクライアントのチャネル参加結果は、
AliRtcEngineEventListenerの<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#89f5ad2d0bnd1" id="fb41cdcfc6acj">onJoinChannelResult</a>コールバックを通じて通知されます。チャネルに正常に参加した後、リモート側は
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#7298cad465wnd" id="8e9d69ebe54sr">onRemoteUserOnLineNotify</a>コールバックをトリガーします。
パラメーター
|
パラメーター |
型 |
説明 |
|
authInfo |
認証情報です。トークンは複数パラメーターのトークンです。トークン生成に関連する他のパラメーターは、トークン生成時に使用されたものと一致しており、空であってはなりません。 | |
|
userName |
String |
ユーザーの表示名です。ユーザー ID ではありません。空でも構いません。 |
戻り値の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します。
joinChannel[3/3]
AI リアルタイムインタラクションシナリオ用にチャネルに参加します。
public abstract int joinChannel(String token, AliRTCSdkChannelParam channelParam);このメソッドはチャネルに参加します。ARTC はユーザーをチャネルにまとめます。ユーザーはチャネルに参加して初めて、音声・映像ストリームのアップストリーミングまたはサブスクリプションが可能になります。このメソッド、joinChannel[1/3]、および joinChannel[2/3] はすべてチャネルに参加しますが、認証方法と渡されるユーザー情報が異なります。
joinChannel[1/3]は RTC シナリオ用の単一パラメーターのチャネル参加インターフェイスです。トークン認証 を通じて生成されたトークンを渡すことで、チャネルに参加できます。RTC シナリオでのチャネル参加にはこのインターフェイスの使用を推奨します。joinChannel[2/3]はマルチ参加者参加用のインターフェイスです。トークン認証 を通じて生成されたトークンを渡す必要があり、トークン生成に使用されたユーザー情報を同時に渡す必要があります。このメソッドは AI リアルタイムインタラクションシナリオ用です。単一パラメーターのトークンを渡し、ユーザー属性
capabilityProfileを設定します。AI エージェントとの通信時には、AliCapabilityProfileAiHumanに設定してください。
デフォルトでは、チャネルに参加すると、チャネル内の他のすべてのユーザーの音声・映像ストリームをサブスクライブし、リモートユーザーに自分の音声・映像ストリームをプッシュします。このデフォルトのサブスクリプションを無効にするには、この API を呼び出す前に <a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#0155f66448env" id="5423d42229iih">setDefaultSubscribeAllRemoteAudioStreams</a> を呼び出して音声ストリームのサブスクリプションを無効にするか、<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#c90127d90d22o" id="0112175788ybe">setDefaultSubscribeAllRemoteVideoStreams</a> を呼び出して映像ストリームのサブスクリプションを無効にしてください。
制限事項
チャネル参加に成功した後、チャネル内にいる間に別のチャネルに参加する必要がある場合は、まず
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#fef395c4beqdt" id="719d580348a95">leaveChannel</a>を呼び出して現在のチャネルから退出し、<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#8c189be470bsp" id="d128acfee2fpd">onLeaveChannelResult</a>コールバックをAliRtcEngineEventListenerから確実に受信した後でなければ、再度チャネルに参加できません。このメソッドは一度に 1 つのチャネルにのみ参加できます。
異なる App ID を使用するアプリケーションは相互運用できません。
チャネル参加失敗時の再試行では、このメソッドを再度呼び出す必要はありません。
関連コールバック
このメソッドを正常に呼び出した後、以下のコールバックがトリガーされます。
ローカルクライアントのチャネル参加結果は、
AliRtcEngineEventListenerの<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#89f5ad2d0bnd1" id="879ae2fa04zjd">onJoinChannelResult</a>コールバックを通じて報告されます。チャネルに正常に参加した後、リモートユーザーは
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#7298cad465wnd" id="9b5662c5a0nvf">onRemoteUserOnLineNotify</a>コールバックをトリガーします。
パラメーター
|
パラメーター |
型 |
説明 |
|
token |
String |
チャネルに参加するためのトークンです。 |
|
channelParam |
チャネルに参加するためのパラメーターです。主に AI を活用したリアルタイムインタラクションシナリオで使用され、以下を含みます。
|
戻り値の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します。
leaveChannel
チャネルから退出します。このメソッドを呼び出すと、SDK はリアルタイム通信を終了し、現在のチャネルから退出します。
public abstract int leaveChannel();このメソッドは非同期操作であり、正常に呼び出された場合、SDK はすぐにチャネルから退出するわけではありません。
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#8c189be470bsp" id="7e49937108skj">onLeaveChannelResult</a>コールバックが呼び出されるのを待ってから、実際にチャネルから退出します。leaveChannel が完了した後、エンジンを破棄し、エンジンオブジェクトを null に設定します。
mAliRtcEngine.leaveChannel(); mAliRtcEngine.destroy(); mAliRtcEngine = null;
呼び出しタイミング
チャネルに参加した後、退出する必要がある場合にこのメソッドを呼び出します。
チャネルに参加している状態で別のチャネルに参加する必要がある場合は、まずこのメソッドを呼び出します。
関連コールバック
ローカル側:このメソッドを呼び出した後、
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#8c189be470bsp" id="80f5e30245vfn">onLeaveChannelResult</a>コールバックがトリガーされ、チャネル退出の結果が通知されます。リモート側:この操作を正常に呼び出した後、リモートユーザーは
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#75c700a2376c1" id="69bf5ff199oda">onRemoteUserOffLineNotify</a>コールバックをトリガーします。
戻り値の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します。
isInCall
チャネル内にいるかどうかを確認します。
public abstract boolean isInCall();戻り値の説明
true の値はチャネル内にいることを示し、false の値はチャネル内にいないことを示します。
setClientRole
ユーザーのロールを指定します。
public abstract int setClientRole(AliRTCSdkClientRole clientRole);このメソッドは、ユーザーのロールをストリーマーまたは視聴者として設定します。
インタラクティブモードで、チャネルに参加する前に:
ユーザーのロールをストリーマーに設定すると、SDK は自動的にローカルの音声・映像ストリームをアップストリーミングし、他のストリーマーの音声・映像ストリームをフェッチングします。
ユーザーのロールを視聴者に設定すると、SDK はローカルの音声・映像ストリームをアップストリーミングせず、他のストリーマーの音声・映像ストリームをフェッチングします。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。参加前にロールを設定するか、参加後にロールを切り替えることができます。
制限事項
このメソッドはインタラクティブモードでのみ機能します。つまり、setChannelProfile が AliRTCSdkInteractiveLive に設定されている場合に限ります。
インタラクティブモードでは、チャネルに参加する前にユーザーのロールを明示的に設定することを推奨します。
パラメーター
|
パラメーター |
型 |
説明 |
|
clientRole |
ユーザーのロールタイプです。このロールはインタラクティブモードでのみ適用されます。 |
getCurrentClientRole
ユーザーのロールを照会します。
public abstract AliRTCSdkClientRole getCurrentClientRole();戻り値の説明
現在のユーザーのロールを返します。
refreshAuthInfo[1/2]
認証情報を更新します。
public abstract int refreshAuthInfo(AliRtcAuthInfo authInfo);このメソッドは認証情報を更新します。トークンは一定期間後に期限切れとなり、SDK がサーバーに接続できなくなります。
この API と refreshAuthInfo[2/2] API はどちらも認証情報を更新します。ただし、この API はマルチ参加者会議のトークンを更新し、refreshAuthInfo[2/2] API は単一参加者会議のトークンを更新します。トークン生成の詳細については、「トークン認証」をご参照ください。
呼び出しタイミング
以下の場合:
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#e9acb46a25uym" id="7e1510bec7s3s">onAuthInfoWillExpire</a>コールバックで認証情報がまもなく期限切れになると報告された場合、サーバー側でトークンを再生成し、このメソッドを呼び出して新しいトークンを渡すことを推奨します。トークンを時間内に更新しない場合、
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#8fa7e60f9f5qq" id="97664f9e46fhp">onAuthInfoExpired</a>コールバックがトリガーされ、認証が期限切れになったことが通知されます。この時点で、トークンを再生成し、joinChannelを呼び出してチャネルに再参加する必要があります。
パラメーター
|
パラメーター |
型 |
説明 |
|
authInfo |
認証情報です。 |
戻り値の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します。
refreshAuthInfo[2/2]
認証情報を更新します。
public abstract int refreshAuthInfo(String token);このメソッドはトークンを更新します。トークンは一定期間後に期限切れとなり、SDK がサーバーに接続できなくなります。
この API と refreshAuthInfo[1/2] 操作はどちらも認証情報を更新します。この API は単一パラメーターで会議に参加するためのトークンを更新し、refreshAuthInfo[1/2] は複数パラメーターで会議に参加するためのトークンを更新します。トークン生成の詳細については、「トークン認証」をご参照ください。
呼び出しタイミング
以下の場合は、サーバーでトークンを再生成し、このメソッドを新しいトークンで呼び出すことを推奨します。
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#e9acb46a25uym" id="d708af68eevs9">onAuthInfoWillExpire</a>コールバックで認証情報がまもなく期限切れになると報告された場合。トークンを時間内に更新しない場合、
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#8fa7e60f9f5qq" id="3fd674e985gl8">onAuthInfoExpired</a>がトリガーされ、認証が期限切れになったことが通知されます。この時点で、joinChannelを呼び出してチャネルに再参加する必要があります。
パラメーター
|
パラメーター |
型 |
説明 |
|
token |
String |
単一パラメーター入力の認証情報です。 |
戻り値の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します。
publishLocalAudioStream
ローカルの映像ストリームの配信を停止または再開できます。
public abstract int publishLocalAudioStream(boolean enable);このメソッドは、ローカルでキャプチャされた音声ストリームを配信するかどうかを制御します。デフォルトでは、SDK は音声ストリームを配信します。音声ストリームの配信を無効にするには、チャネルに参加する前に publishLocalAudioStream(false) を呼び出します。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。参加前に呼び出すと、デフォルトの構成が変更され、参加時に有効になります。
関連コールバック
ローカル音声ストリームのアップストリーミング結果が変更されると、ローカルクライアントは <a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#b7e3bb51c2ga9" id="4ced92c3f5hmj">onAudioPublishStateChanged</a> コールバックをトリガーしてローカル音声ストリームのアップストリーミングステータスが変更されたことを通知し、リモートクライアントは <a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#7078e15087a0z" id="2b5460d448ga9">onRemoteTrackAvailableNotify</a> コールバックをトリガーしてリモートユーザーの音声・映像ストリームが変更されたことを通知します。
パラメーター
|
パラメーター |
型 |
説明 |
|
enable |
boolean |
音声ストリームを配信するかどうかを指定します。有効値:
|
戻り値の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します。
isLocalAudioStreamPublished
音声ストリームが配信されているかどうかを照会します。
public abstract boolean isLocalAudioStreamPublished();返品手順
true の値は音声ストリームが配信されていることを示し、false の値は音声ストリームが配信されていないことを示します。
setDefaultSubscribeAllRemoteAudioStreams
リモートユーザーの音声ストリームをデフォルトでサブスクライブするかどうかを指定します。
public abstract int setDefaultSubscribeAllRemoteAudioStreams(boolean sub);このメソッドは、システムがリモートユーザーの音声ストリームをデフォルトでサブスクライブするかどうかを構成します。この設定は、チャネルに参加する新しいユーザーの音声ストリームサブスクリプションの動作に影響します。特別な要件がない限り、これを true に設定することを推奨します。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。
参加前:
デフォルトでは、SDK はチャネル参加時にリモートユーザーの音声ストリームをサブスクライブします。この動作を変更するには、参加前にこのメソッドを呼び出します。
参加後:
デフォルトのサブスクリプションを停止するには、
setDefaultSubscribeAllRemoteAudioStreams(false)を呼び出します。その後、新しく参加したユーザーの音声ストリームはサブスクライブされません。デフォルトのサブスクリプションを停止した後、subscribeRemoteAudioStream API を呼び出して指定したユーザーの音声ストリームのサブスクリプションを再開し、複数回呼び出すことで複数のユーザーのサブスクリプションを再開できます。
デフォルトのサブスクリプションを停止した後、
setDefaultSubscribeAllRemoteAudioStreams(true)を呼び出すと、呼び出し後に参加したユーザーのサブスクリプションのみが再開されます。停止期間中に参加したリモートユーザーのサブスクリプションは再開されません。
パラメーター
|
パラメーター |
型 |
説明 |
|
sub |
boolean |
デフォルトで音声ストリームを受け入れるかどうか。有効値は次のとおりです。
|
戻り値の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します。
subscribeRemoteAudioStream
特定のリモートユーザーの音声ストリームのフェッチを停止または再開します。
public abstract int subscribeRemoteAudioStream(String uid, boolean sub);このメソッドは、特定のリモートユーザーの音声ストリームのサブスクリプションを停止または再開します。特別な要件がない限り、これを true に設定することを推奨します。
SDK は、会議に参加する際にデフォルトでリモートユーザー全員の音声ストリームをサブスクライブします。この動作を変更するには、会議に参加する前に <a baseurl="t2309760_v6_1_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#0155f66448env" id="d319c7806ej0h">setDefaultSubscribeAllRemoteAudioStreams</a>(false) を呼び出して、このデフォルト構成を無効にすることができます。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
リモートユーザーの ID です。 |
|
sub |
boolean |
特定のリモートユーザーの音声ストリームのサブスクリプションを一時停止または再開するかどうかを指定します。
|
戻り値の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します。
subscribeAllRemoteAudioStreams
すべてのリモートユーザーの音声ストリームを受信するかどうかを指定します。
public abstract int subscribeAllRemoteAudioStreams(boolean sub);このメソッドは、リモート音声ストリームのサブスクリプションのマスター スイッチです。true に設定することを推奨します。false に設定すると、以下のようになります。
現在のセッション内のすべてのリモート音声ストリームのサブスクリプションが停止します。
後から参加する新しいユーザーもサブスクライブされません。
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#e09342eeb0z4k" id="a56b5f2a3f56k">subscribeRemoteAudioStream</a>を使用して、指定したユーザーの音声ストリームを個別に制御することはできません。
サブスクリプションを再開するには、このメソッドを再度呼び出して true に設定します。
SDK は、会議に参加する際にデフォルトでリモートユーザー全員の音声ストリームをサブスクライブします。この動作を変更するには、会議に参加する前に <a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#0155f66448env" id="5a57cb846fzb2">setDefaultSubscribeAllRemoteAudioStreams</a>(false) を呼び出して、このデフォルト構成を無効にすることができます。
パラメーター
|
パラメーター |
型 |
説明 |
|
sub |
boolean |
すべてのリモート音声ストリームを受信するかどうかを指定します。有効値:
|
戻り値の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します。
publishLocalVideoStream
カメラストリームを配信するかどうかを指定します。
public abstract int publishLocalVideoStream(boolean enable);このメソッドは、ローカルでキャプチャされた映像ストリームを配信するかどうかを制御します。
SDK はデフォルトで映像ストリームを配信します。映像ストリームの配信を無効にするには、チャネルに参加する前に publishLocalVideoStream(false) を呼び出します。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。
参加前に呼び出すと、デフォルトの構成が変更され、参加時に有効になります。
関連コールバック
ローカル音声ストリームのアップストリーミングステータスが変更されると、ローカル側は <a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#afe6d3c4b1rvg" id="8b70bc353aj68">onVideoPublishStateChanged</a> コールバックをトリガーして、音声ストリームのアップストリーミングの最新ステータスを通知し、リモート側は <a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#7078e15087a0z" id="176ee94b46lb7">onRemoteTrackAvailableNotify</a> コールバックをトリガーして、リモートユーザーの音声・映像ストリームが変更されたことを通知します。
パラメーター
|
パラメーター |
型 |
説明 |
|
enable |
boolean | 映像トラックを配信するかどうかを指定します。有効値:
|
戻り値の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します。
isLocalVideoStreamPublished
カメラストリームが配信されているかどうかを照会します。
public abstract boolean isLocalVideoStreamPublished();戻り値の説明
true の値はカメラストリームが配信されていることを示し、false の値はカメラストリームが配信されていないことを示します。
setDefaultSubscribeAllRemoteVideoStreams
リモートユーザーの映像ストリームをデフォルトでサブスクライブするかどうかを指定します。
public abstract int setDefaultSubscribeAllRemoteVideoStreams(boolean sub);このメソッドは、リモートユーザーの映像ストリームをデフォルトでサブスクライブするかどうかを指定します。SDK はデフォルトでサブスクライブします。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。参加後に setDefaultSubscribeAllRemoteVideoStreams(false) を呼び出すと、その後参加するユーザーの映像ストリームは受信されません。
映像ストリームの受信を停止した後、subscribeRemoteVideoStream を呼び出してリモートユーザーの ID を指定することで、そのユーザーの映像ストリームの受信を再開できます。複数のユーザーの映像ストリームの受信を再開するには、subscribeRemoteVideoStream を複数回呼び出す必要があります。setDefaultSubscribeAllRemoteVideoStreams(true) は、後からチャネルに参加するユーザーの映像ストリームの受信のみを再開します。
このメソッドは、リモートユーザーの映像ストリームをデフォルトでサブスクライブするかどうかを指定します。
デフォルトでは、SDK はチャネル参加時にリモートユーザーの音声・映像ストリームをサブスクライブします。この動作を変更するには、参加前にこのメソッドを呼び出します。
パラメーター
|
パラメーター |
型 |
説明 |
|
sub |
boolean |
リモートユーザーの映像トラックをサブスクライブするかどうかを指定します。有効値:
|
戻り値の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します。
subscribeRemoteVideoStream
指定されたリモート映像ストリームのサブスクリプションを停止または再開します。
public abstract int subscribeRemoteVideoStream(String uid, AliRtcVideoTrack track, boolean sub);指定されたユーザーの映像ストリームをサブスクライブまたはサブスクライブ解除します。
デフォルトでは、SDK は会議に参加する際にすべてのリモートユーザーの映像ストリームをサブスクライブします。この動作を変更するには、会議に参加する前に <a baseurl="t2309760_v6_1_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#c90127d90d22o" id="2a6fd8903ce5s">setDefaultSubscribeAllRemoteVideoStreams</a>(false) を呼び出して、このデフォルト構成をキャンセルできます。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。
パラメーター
|
パラメーター |
型 | 説明 |
|
uid |
String |
ユーザー ID |
|
track |
映像ストリームタイプです。 | |
|
sub |
boolean |
指定されたユーザーからの映像ストリームを受信するかどうかを指定します。
|
戻り値の説明
0:メソッドは正常に実行されました。
0 以外:メソッドは失敗しました。
subscribeAllRemoteVideoStreams
すべてのリモート映像ストリームの受信を停止または再開します。
public abstract int subscribeAllRemoteVideoStreams(boolean sub);このメソッドは、リモート映像ストリームのサブスクリプションのマスター スイッチです。false に設定すると、以下のようになります。
現在のセッション内のすべてのリモート映像ストリームのサブスクリプションが停止します。
後から参加する新しいユーザーはサブスクライブしません(デフォルトのサブスクリプションを有効化するために
setDefaultSubscribeAllRemoteVideoStreams(true) を設定した場合でも)。<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#b738a1b498bc1" id="19b0cea8593i5">subscribeRemoteVideoStream</a>を使用して、指定したユーザーの映像ストリームを個別に制御することはできません。
サブスクリプションを再開するには、このメソッドを再度呼び出して true に設定します。
デフォルトでは、SDK はチャネル参加時にすべてのリモートユーザーの映像ストリームをサブスクライブします。この動作を変更するには、参加前に setDefaultSubscribeAllRemoteVideosStreams(false) を呼び出します。
パラメーター
|
パラメーター |
型 |
説明 |
|
sub |
boolean |
すべてのリモートユーザーの映像トラックをサブスクライブするかどうかを指定します。有効値:
|
戻り値の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します。
subscribeRemoteMediaStream[1/2]
特定のリモートユーザーのメディアストリームを停止または再開します。
public abstract int subscribeRemoteMediaStream(String uid, AliRtcVideoTrack videoTrack, boolean subVideo, boolean subAudio);このメソッドは、リモートの音声・映像ストリームのサブスクリプションを組み合わせます。
このメソッドでは、AliRtcVideoTrackNo は無効であり、無視されます。
関連メソッド
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#4cec275051vr6" id="faff82a053mev">subscribeRemoteMediaStream[2/2]</a> と比較して、この API は 2 つのブール値パラメーター subVideo と subAudio を利用して、リモートの音声・映像ストリームをサブスクライブするかどうかを指定します。videoTrack パラメーターは、どの映像ストリームをフェッチングするかを制御します。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
リモートユーザーの ID です。 |
|
videoTrack |
映像ストリームのタイプです。 | |
|
subVideo |
boolean |
リモートユーザーの映像ストリームをサブスクライブするかどうかを指定します。有効値:
|
|
subAudio |
boolean |
特定のリモートユーザーの音声ストリームのフェッチを停止または再開します。有効値:
|
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は、呼び出しが失敗したことを示します。
subscribeRemoteMediaStream[2/2]
リモートユーザーの音声・映像ストリームのサブスクリプションを 1 回の呼び出しで停止または再開します。
public abstract int subscribeRemoteMediaStream(String uid, AliRtcVideoTrack videoTrack, AliRtcAudioTrack audioTrack) ;このインターフェイスは、サブスクライブされたリモートの音声・映像ストリームをマージします。
関連メソッド
subscribeRemoteMediaStream[1/2] とは異なり、このメソッドは videoTrack と audioTrack パラメーターを使用して、1 回の API 呼び出しで目的のサブスクリプション状態を指定します。例:
カメラストリームとマイクストリームをサブスクライブしたい場合は、呼び出し時に videoTrack と audioTrack をそれぞれ
AliRtcVideoTrackCameraとAliRtcAudioTrackMicに設定します。カメラストリームのサブスクリプションを解除し、マイクストリームのサブスクリプションを継続するには、
videoTrackパラメーターをAliRtcVideoTrackNoに、audioTrackパラメーターをAliRtcAudioTrackMicに設定します。両方のサブスクリプションを解除するには、videoTrack と audioTrack をそれぞれ
AliRtcVideoTrackNoとAliRtcAudioTrackNoに設定します。カメラストリームと画面共有ストリームの両方をサブスクライブするには、videoTrack パラメーターを
AliRtcVideoTrackBothに設定します。音声ストリームにも同じロジックが適用されます。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
ユーザー ID は、アプリケーションサーバーが割り当てる一意の識別子です。 |
|
videoTrack | 映像ストリームのタイプです。 | |
|
audioTrack |
音声ストリームのタイプです。 |
戻り値の説明
0:成功。
<0:失敗。
subscribeRemoteDestChannelStream
チャネル間で特定のユーザーのストリームをサブスクライブします。
public abstract int subscribeRemoteDestChannelStream(String channelId, String uid, AliRtcVideoTrack track, boolean sub_audio, boolean sub);パラメーター
|
パラメーター |
型 |
説明 |
|
channelId |
String |
リモートチャネルの ID です。 |
|
uid |
String |
リモートユーザーの ID です。 |
|
track |
サブスクライブする映像ストリームです。 | |
|
sub_audio |
boolean |
特定のリモートユーザーの音声ストリームのフェッチを停止または再開するかどうかを制御します。有効値:
|
|
sub |
boolean |
チャネル間で指定されたユーザーのストリームのサブスクリプションを停止または再開します。 |
戻り値の説明
戻り値が 0 の場合、メソッド呼び出しが成功したことを示し、その他の値は呼び出しが失敗したことを示します。
subscribeRemoteDestChannelAllStream
チャネル間で全ユーザーのストリームのサブスクリプションを停止または再開します。
public abstract int subscribeRemoteDestChannelAllStream(String channelId, AliRtcVideoTrack track, boolean sub_audio, boolean sub);パラメーター
|
パラメーター |
型 |
説明 |
|
channelId |
String |
リモートターゲットチャネルの ID です。 |
|
videoTrack |
サブスクライブする映像ストリームのタイプです。 | |
|
sub_audio |
boolean |
リモートユーザーの音声ストリームをサブスクライブするかどうか。
|
|
sub |
boolean |
指定されたユーザーストリームのクロスチャネルサブスクリプションを停止または再開します。
|
戻り値の説明
0:メソッド呼び出しは成功しました。
0 以外:メソッド呼び出しは失敗しました。
setRemoteAudioVolume
フェッチした音声ストリームの再生ボリュームを調整します。
public abstract int setRemoteAudioVolume(String uid, int volume);このメソッドを使用して、ローカルデバイスで指定されたユーザーの音声ストリームの再生ボリュームを調整できます。
この設定はローカルデバイスでのリスニング体験にのみ影響します。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
ユーザー ID。ユーザーの一意の ID で、通常はアプリケーションサーバーによって割り当てられます。 |
|
volume |
int |
再生ボリューム。有効値の範囲は [0, 100] です。
|
戻り値の説明
0:メソッド呼び出しは成功しました。
0 以外:メソッド呼び出しは失敗しました。例えば、無効なボリューム値が原因です。
muteLocalMic
ローカル音声データの送信を停止または再開します。
public abstract int muteLocalMic(boolean mute, AliRtcMuteLocalAudioMode mode);ミュートすると無音フレームが送信されます。音声キャプチャとエンコーディングは引き続き実行されます。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。
関連コールバック
呼び出しが成功すると、リモートユーザーは <a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#ea457055e4izi" id="cce3d390a3xud">onUserAudioMuted</a> 通知をトリガーして、ミュートされているかどうかを示します。
パラメーター
|
パラメーター |
型 |
説明 |
|
mute |
boolean |
ローカル音声データの送信を停止または再開します。有効値:
|
|
mode |
ミュートモードです。デフォルトでは、マイクはミュートされています。 |
戻り値の説明
戻り値が 0 の場合、成功を示します。その他の値は失敗を示します。ミュートすると無音フレームが送信されますが、音声キャプチャとエンコーディングは引き続き実行されます。
muteRemoteAudioPlaying
リモート音声ストリームの再生を停止または再開します。
public abstract int muteRemoteAudioPlaying(String uid, boolean mute);この API は、指定されたリモートユーザーの音声ストリームの再生のみを制御します。リモート音声のストリームフェッチングやデコーディングには影響しません。ユーザーの音声ストリームのサブスクリプションを解除するには、<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#e09342eeb0z4k" id="66a2ef0919jjg">subscribeRemoteAudioStream</a> を呼び出します。
呼び出しタイミング
チャネル参加前または参加後に設定できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
リモートユーザーの ID です。 |
|
mute |
boolean |
リモート音声の再生を停止または再開します。有効値:
|
戻り値の説明
戻り値が 0 の場合、成功を示します。その他の値は失敗を示します。
muteAllRemoteAudioPlaying
すべてのリモート音声ストリームの再生を停止または再開します。
public abstract int muteAllRemoteAudioPlaying(boolean mute);このメソッドは、すべてのリモート音声ストリームを停止または再開します。
このメソッドは再生を停止するだけで、ストリームフェッチングやデコーディングには影響しません。
呼び出しタイミング
チャネルに参加する前または後に設定できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
mute |
boolean |
すべてのリモート音声の再生を停止または再開します。有効値は次のとおりです。
|
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は失敗を示します。
startAudioCapture[1/2]
音声キャプチャを開始します。
public abstract int startAudioCapture();このメソッドは音声キャプチャを開始します。チャネルに参加する前にこのメソッドを呼び出すことで、事前に音声キャプチャを有効にできます。このメソッドが呼び出されない場合、SDK は自動的に音声キャプチャデバイスを制御します。また、stopAudioCapture を呼び出した後に、このメソッドを呼び出して音声キャプチャを再度有効にすることもできます。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。
関連メソッド
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#b71a48f4b84n0" id="4565abdceeq8i">startAudioCapture[2/2]</a> API は、会議から退出した後も音声キャプチャデバイスを有効にしておくかどうかをパラメーターで制御します。
関連コールバック
このメソッドを呼び出した後、onLocalAudioStateChanged コールバックがローカル音声キャプチャステータスの変更を通知します。
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は、呼び出しが失敗したことを示します。
startAudioCapture[2/2]
音声キャプチャを開始します。
public abstract int startAudioCapture(boolean keepAlive);ミュート後にマイクキャプチャを無効にします。
このメソッドは音声キャプチャを開始します。チャネルに参加する前に呼び出すことで、事前に音声キャプチャを有効にできます。このメソッドを設定しない場合、SDK は自動的に音声キャプチャデバイスを制御します。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。
関連メソッド
startAudioCapture[1/2] と比較して、このメソッドは keepAlive パラメーターを使用して、チャネル退出後もキャプチャデバイスをアクティブにしておくかどうかを制御できます。
関連コールバック
このメソッドを呼び出してローカル音声キャプチャステータスを変更した後、onLocalAudioStateChanged コールバックを通じてステータスの変更を取得できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
keepAlive |
boolean |
チャネル退出後の音声収集デバイスのステータスです。有効値:
|
戻り値の説明
戻り値が 0 の場合、成功を示します。その他の値は失敗を示します。
stopAudioCapture
音声キャプチャを停止します。
public abstract int stopAudioCapture();SDK はデフォルトで音声キャプチャを有効にします。プレビューを開始するか、チャネルに参加すると、音声キャプチャが自動的に開始されます。このメソッドを呼び出して、音声デバイスのキャプチャを停止します。
関連コールバック
このメソッドを呼び出した後、SDK は onLocalAudioStateChanged コールバックをトリガーして、ローカル音声キャプチャステータスの変更を報告します。
戻り値の説明
戻り値が 0 の場合、呼び出しが成功したことを示します。その他の値は、呼び出しが失敗したことを示します。
setDefaultAudioRoutetoSpeakerphone
デフォルトの音声出力デバイスをスピーカーフォンにするかどうかを設定します。
public abstract int setDefaultAudioRoutetoSpeakerphone(boolean defaultToSpeakerphone);このメソッドは、チャネルに参加する前にデフォルトの音声ルーティングデバイスを構成します。デフォルトの出力をイヤホンまたはスピーカーフォンのいずれかに設定できます。デフォルトでは、SDK はスピーカーフォンを使用します。このデフォルトを変更するには、チャネルに参加する前にこのメソッドを呼び出します。
SDK は、現在の周辺機器の接続状況に基づいて自動的に切り替える音声ルーティングの優先順位を定義しています。優先順位は次のとおりです:有線ヘッドセット > Bluetooth ヘッドセット > ユーザー設定 > デフォルト設定。したがって、周辺機器が接続されておらず、enableSpeakerphone が設定されていない場合、SDK はデフォルト設定を適用します。
音声ルーティング設定の詳細については、「音声ルーティング設定」をご参照ください。
モバイルデバイスは通常、イヤホンとスピーカーフォンの 2 つの音声出力デバイスをサポートしています。
音声がイヤホンにルーティングされると、音は静かになり、電話を耳に近づける必要があります。これによりプライバシーが向上し、通話に適しています。
音声がスピーカーフォンにルーティングされると、音は大きくなり、電話を耳に近づけずにハンズフリーで使用できます。
関連メソッド
このメソッドはデフォルトの音声ルーティング構成を変更します。enableSpeakerphone メソッドは現在の音声ルーティングデバイスを設定します。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。
パラメーター
|
パラメーター |
型 |
説明 |
|
defaultToSpeakerphone |
boolean |
デフォルトでスピーカーを使用しますか?
|
応答の説明
0:メソッド呼び出しは成功しました。
<0:メソッド呼び出しは失敗しました。
enableSpeakerphone
音声出力デバイスをヘッドセットまたはスピーカーのいずれかに設定します。
public abstract int enableSpeakerphone(boolean enable);このメソッドは、チャネルに参加した後、現在の音声再生デバイスを選択し、イヤホンとスピーカーを切り替えます。このメソッドを呼び出さない場合、再生はデフォルトの音声ルートで指定されたデバイスを使用します。
SDK は、音声ルーティングの事前定義された優先順位を定義し、現在の周辺機器の接続状況に基づいて自動的に切り替えを行います。優先順位は次のとおりです:有線ヘッドセット > Bluetooth ヘッドセット > ユーザー設定 > デフォルト設定。したがって、周辺機器が接続されている場合、この API 呼び出しは効果がありません。音声ルーティング設定の詳細については、「音声ルーティング設定」をご参照ください。
呼び出しのタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。
関連メソッド
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#d4dab00b21ebx" id="944fb5797e773">setDefaultAudioRoutetoSpeakerphone</a> はデフォルトの音声ルーティング設定を変更し、現在のルーティングデバイスを設定します。
パラメーター
|
パラメーター |
型 |
説明 |
|
enable |
boolean |
音声出力をイヤホンまたはスピーカーのどちらを使用するかを指定します。有効値:
|
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は失敗を示します。
isSpeakerOn
現在の音声出力デバイスがイヤホンかスピーカーかを判断します。
public abstract boolean isSpeakerOn();戻り値の説明
true の値はスピーカーを示し、false の値はイヤホンを示します。
enableAudioVolumeIndication
ユーザーのボリュームプロンプトを有効にします。
public abstract int enableAudioVolumeIndication(int interval, int smooth, int reportVad);このメソッドは、SDK がローカルユーザーと現在最も音量の大きいリモートユーザーの音量を定期的に報告するようにします。この機能を使用するには、AliRtcAudioVolumeObserver クラスを実装し、registerAudioVolumeObserver を呼び出してオブザーバーを登録します。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。
関連コールバック
このメソッドを正常に呼び出した後、チャネル内でユーザーがストリームを配信している場合、SDK は指定された間隔で以下の 2 つのコールバックをトリガーします。
AliRtcAudioVolumeObserver#onAudioVolume コールバックは、各スピーカーの音量を報告します。このコールバックの頻度は interval パラメーターによって決まります。
音声アクティビティ検出:アクティブなスピーカーが検出されると、そのユーザー ID(UID)が AliRtcAudioVolumeObserver#onActiveSpeaker コールバックを通じて報告されます。
パラメーター
|
パラメーター |
型 |
説明 |
|
interval |
int |
時間間隔。
|
|
smooth |
int |
平滑化係数です。値が大きいほど平滑化の度合いが高まります。値が小さいほど平滑化は減少しますが、リアルタイム性能は向上します。
|
|
reportVad |
int |
ローカル音声検出のスイッチです。
|
戻り値の説明
戻り値が 0 の場合、メソッド呼び出しが成功したことを示します。その他の値は、呼び出しが失敗したことを示します。
enableEarBack
インイヤーモニタリングを有効にします。
public abstract int enableEarBack(boolean enable);このメソッドはインイヤーモニタリングを有効または無効にします。有線または Bluetooth ヘッドフォンを装着している場合、インイヤーモニタリングを有効にすることでより良い結果が得られます。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。
パラメーター
|
パラメーター |
型 |
説明 |
|
enable |
boolean |
インイヤーモニタリングを有効にするかどうかを指定します。有効値:
|
戻り値の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します。
setEarBackVolume
インイヤーモニタリングのボリュームを設定します。
public abstract int setEarBackVolume(int volume) ;このメソッドは、enableEarBack を呼び出してインイヤーモニタリングを有効にした後にのみ有効になります。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。
パラメーター
|
パラメーター |
型 |
説明 |
|
Volume |
int |
ボリューム。有効値:0 から 100。デフォルト値:100。
|
返却手順
0:メソッド呼び出しは成功しました。
<0:メソッド呼び出しは失敗しました。
startAudioPlayer
音声再生デバイスを開始します。
public abstract int startAudioPlayer();このメソッドを使用して、事前に音声再生を有効にできます。このメソッドを呼び出さない場合、SDK は音声ストリームをサブスクライブした後に自動的に音声再生を有効にします。
戻り値の説明
0:呼び出しは成功しました。
0 以外:呼び出しは失敗し、エラーコードを返します。
stopAudioPlayer
音声再生デバイスを停止します。
public abstract int stopAudioPlayer();このインターフェイスは音声再生を停止し、startAudioPlayer の対となるものです。
戻り値の説明
0:呼び出しは成功しました。
0 以外:呼び出しは失敗しました。エラーコードが返されます。
setPlayoutVolume
ローカル再生ボリュームを設定できます。
public abstract int setPlayoutVolume(int volume);パラメーター
|
パラメーター |
型 |
説明 |
|
volume |
int |
録音ボリューム。値の範囲:[0, 400]。
|
応答の説明
0:呼び出しは成功しました。
0 以外:呼び出しは失敗しました。
setRecordingVolume
録音ボリュームを設定できます。
public abstract int setRecordingVolume(int volume);パラメーター
|
パラメーター |
型 |
説明 |
|
volume |
int |
録音ボリュームです。値の範囲は [0, 400] です。
|
戻り値の説明
0:メソッド呼び出しは成功しました。
0 以外のリターンコードは、呼び出しが失敗したことを示します。
playAudioFileTest
オーディオファイルを再生できます。
public abstract int playAudioFileTest(String filePath) ;このメソッドを使用して、チャネルに参加する前にオーディオファイルを再生し、音声再生をテストできます。
呼び出しタイミング
このメソッドはチャネル参加前のみに呼び出すことができます。
呼び出し制限
複数回の呼び出しは以前のものを上書きします。このメソッドを呼び出すと、現在再生中のファイルは停止します。
パラメーター
|
パラメーター |
型 |
説明 |
|
filePath |
filePath |
ファイルパスです。 |
戻り値の説明
0:メソッド呼び出しは成功しました。
0 以外の値は、呼び出しが失敗したことを示します。
stopAudioFileTest
オーディオファイルの再生を停止します。
public abstract int stopAudioFileTest();このインターフェイスは playAudioFileTest インターフェイスに対応し、オーディオファイルの再生を停止します。
制限事項
このメソッドはチャネルに参加する前にのみ呼び出すことができます。
戻り値の説明
0:呼び出しが成功しました。
0 以外:呼び出しが失敗しました。
startAudioCaptureTest
通話前に音声キャプチャデバイスのテストを開始します。
public abstract int startAudioCaptureTest();通話の前にこのメソッドを呼び出して、ローカルオーディオキャプチャデバイスが正常に動作しているかテストできます。このメソッドを呼び出すと、SDK は AliRtcAudioVolumeObserver::OnTestAudioVolume コールバックを介してオーディオキャプチャデバイスのボリュームを報告します。
呼び出しタイミング
このメソッドはチャネルに参加する前に呼び出す必要があります。テストが完了したら、stopAudioCaptureTest を呼び出してテストを停止し、音声デバイスを解放する必要があります。
戻り値の説明
0:呼び出しは成功です。
0 以外:呼び出しは失敗しました。エラーコードが返されます。
stopAudioCaptureTest
音声キャプチャ検出を無効にします。
public abstract int stopAudioCaptureTest();このメソッドは音声キャプチャデバイスのテストを停止します。startAudioCaptureTest を呼び出した後、このメソッドを呼び出してテストを停止する必要があります。
呼び出しタイミング
このメソッドはチャネル参加前に呼び出すことができます。
戻り値の説明
0:呼び出しは成功しました。
0 以外:呼び出しは失敗し、エラーコードが返されます。
setAudioEffectVoiceChangerMode
音声変更モードを設定します。
public abstract int setAudioEffectVoiceChangerMode(AliRtcAudioEffectVoiceChangerMode mode);パラメーター
|
パラメーター |
型 |
説明 |
|
mode |
ボイスチェンジャーモードです。デフォルト値は AliRtcSdk_AudioEffect_Voice_Changer_OFF(オフ)です。 |
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は失敗を示します。
setAudioEffectPitchValue
ピッチ調整パラメーターを設定できます。
public abstract int setAudioEffectPitchValue(double value);パラメーター
|
パラメーター |
型 |
説明 |
|
value |
double |
有効値:0.5 から 2.0。デフォルト値は 1.0 で、ピッチが変わらないことを示します。 |
戻り値の説明
値が 0 の場合、メソッド呼び出しが成功したことを示します。その他の値は失敗したことを示します。
setAudioEffectReverbMode
残響モードを設定します。
public abstract int setAudioEffectReverbMode(AliRtcAudioEffectReverbMode mode);パラメーター
|
パラメーター |
型 |
説明 |
|
mode |
残響モードです。デフォルト値は AliRtcAudioEffectReverb_Off で、残響なしを示します。 |
戻り値の説明
戻り値が 0 の場合、メソッド呼び出しが成功したことを示します。その他の値は、メソッド呼び出しが失敗したことを示します。
setAudioEffectReverbParamType
残響サウンドエフェクトのタイプとパラメーターを設定できます。
public abstract int setAudioEffectReverbParamType(AliRtcAudioEffectReverbParamType type, float value);パラメーター
|
パラメーター |
型 |
説明 |
|
type |
サウンドエフェクトの残響パラメーターです。 | |
|
value |
float |
パラメーター値です。 |
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は失敗を示します。
setAudioEffectBeautifyMode
事前定義された音声美化モードを設定します。
public abstract int setAudioEffectBeautifyMode(AliRtcAudioEffectBeautifyMode mode);このメソッドは、SDK が提供する事前定義された音声美化モードを設定します。音声ライブストリーミング、カラオケ、音声ソーシャルネットワーキングなど、ボーカル品質の向上が求められるシナリオに適しています。音声美化モードを選択することで、人の声の響きを良くしたり、明瞭度を向上させたりするなど、音質を変更できます。これにより、リモートユーザーのリスニング体験が向上します。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。
パラメーター
|
パラメーター |
型 |
説明 |
|
Mode |
ボーカルサウンドエフェクトモードです。列挙定義をご参照ください。 |
戻り値
0:操作は成功しました。
0 以外:操作は失敗しました。
setAudioEffectEqualizationParam
オーディオイコライザー(EQ)パラメーターを設定して、指定された周波数帯のゲインを調整します。
public abstract int setAudioEffectEqualizationParam(AliRtcAudioEffectEqualizationBandFrequency bandIndex, float gain);このメソッドは、ローカルでキャプチャされた音声およびオーディオ信号のグラフィックイコライザーを調整します。特定の周波数帯のゲイン(dB)を調整することで、音声の明瞭度の最適化、ボーカルの強調、ノイズリダクションの改善などの目的でサウンドをカスタマイズできます。
イコライザーは、31 Hz から 16 kHz までの全オーディオスペクトルを 10 の標準バンドでサポートします。各バンドのゲインは、-15 dB から 15 dB の値に独立して設定できます。デフォルト値は 0 dB で、これは強調も減衰もないことを示します。
制限事項
このメソッドを呼び出す前に、
setAudioEffectBeautifyModeを呼び出して音声美化モードを有効にする必要があります。
パラメーター
|
パラメーター |
型 |
説明 |
|
bandIndex |
調整するバンドインデックスで、中心周波数範囲(31 Hz から 16 kHz)内のセグメントに対応します。 | |
|
gain |
float |
ゲイン値(dB)。有効値の範囲は -15 から 15 です。 |
戻り値の説明
0:メソッド呼び出しは成功しました。
0 以外:メソッド呼び出しは失敗しました。
addExternalAudioStream
外部音声ストリームを追加できます。
public abstract int addExternalAudioStream(AliRtcExternalAudioStreamConfig config);このメソッドは外部音声ストリームを追加します。以下の手順に従ってください。
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#42b363024fich" id="20c33a9acb0ui">addExternalAudioStream</a>API を呼び出して外部音声ストリームを追加し、その ID を取得します。<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#930f22d3dcdco" id="d3deb62b2fl0f">pushExternalAudioStreamRawData</a>を呼び出して、外部音声ストリームに音声データをプッシュします。通話終了時には、
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#0333f86114078" id="16d826dedcli6">removeExternalAudioStream</a>を呼び出して外部音声ストリームを削除する必要があります。
チャネルでカスタム音声キャプチャを配信したい場合は、「カスタム音声キャプチャ」をご参照ください。
呼び出しタイミング
|
パラメーター |
型 |
説明 |
|
config |
AliRtcExternalAudioStreamConfig |
外部音声ストリームの構成です。 |
戻り値の説明
戻り値が 0 より大きい場合、メソッド呼び出しが成功し、外部音声ストリームの ID を表します。その他の値は、メソッド呼び出しが失敗したことを示します。
pushExternalAudioStreamRawData
外部音声ストリームデータを入力できます。
public abstract int pushExternalAudioStreamRawData(int streamId, AliRtcAudioFrame rawData);このインターフェイスを使用して、指定された音声ストリームにデータを送信します。手順は次のとおりです。
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#42b363024fich" id="8822f2932e9ep">addExternalAudioStream</a>を呼び出して外部音声ストリームを追加し、外部音声ストリーム ID を取得します。<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#930f22d3dcdco" id="880fe8cd02j10">pushExternalAudioStreamRawData</a>を呼び出して、作成した音声ストリームに音声データをプッシュします。通話終了後、
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#0333f86114078" id="106c7aefa27c0">removeExternalAudioStream</a>を呼び出して外部音声ストリームを削除します。
チャネルでカスタムソースから音声を配信する方法の詳細については、「カスタム音声キャプチャ」をご参照ください。
呼び出しタイミング
チャネル参加後にこのメソッドを呼び出します。
パラメーター
|
パラメーター |
型 |
説明 |
|
streamId |
int |
外部音声ストリームの ID です。 |
|
rawData |
AliRtcAudioFrame |
音声データ |
戻り値の説明
戻り値が 0 の場合、メソッド呼び出しが成功したことを示します。その他の値は、メソッド呼び出しが失敗したことを示します。
setExternalAudioStreamPublishVolume
外部音声ストリームの配信ボリュームを設定します。
public abstract int setExternalAudioStreamPublishVolume(int streamId, int publishVolume);パラメーター
|
パラメーター |
型 |
説明 |
|
streamId |
int |
外部音声ストリームの ID です。 |
|
publishVolume |
int |
アップストリーミング用の外部音声のボリュームです。有効値:0 から 100。 |
戻り値の説明
戻り値が 0 の場合、呼び出しが成功したことを示します。その他の値は、呼び出しが失敗したことを示します。
getExternalAudioStreamPublishVolume
外部音声ストリームのアップストリーミングボリュームを取得します。
public abstract int getExternalAudioStreamPublishVolume(int streamId);パラメーター
|
パラメーター |
型 |
説明 |
|
streamId |
int |
外部音声ストリームの ID です。 |
戻り値の説明
アップストリーミングボリューム:有効値は 0 から 100 です。0 未満の値は失敗を示します。
setExternalAudioStreamPlayoutVolume
外部音声ストリームの再生ボリュームを設定します。
public abstract int setExternalAudioStreamPlayoutVolume(int streamId, int playoutVolume);パラメーター
|
パラメーター |
型 |
説明 |
|
streamId |
int |
外部音声ストリームの ID です。 |
|
playoutVolume |
int |
再生ボリュームです。有効値:0 から 100。 |
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は、呼び出しが失敗したことを示します。
getExternalAudioStreamPlayoutVolume
外部音声ストリームの再生ボリュームを取得します。
public abstract int getExternalAudioStreamPlayoutVolume(int streamId);パラメーター
|
パラメーター |
型 |
説明 |
|
streamId |
int |
外部音声ストリームの ID です。 |
応答の説明
再生ボリュームの有効値は 0 から 100 です。0 未満の値は失敗を示します。
removeExternalAudioStream
外部音声ストリームを削除します。
public abstract int removeExternalAudioStream(int streamId);このメソッドは、指定されたストリーム ID に対応する外部音声ストリームを削除します。addExternalAudioStream メソッドの対となるものです。
呼び出しタイミング
カスタム音声入力機能を使用するには、まず addExternalAudioStream メソッドを呼び出して音声ストリームを追加し、そのストリーム ID を取得する必要があります。次に、pushExternalAudioStreamRawData メソッドを呼び出して音声データを SDK にプッシュします。カスタム音声入力の使用を停止したい場合は、このメソッドを呼び出して音声ストリームを削除し、そのリソースを解放します。
パラメーター
|
パラメーター |
型 |
説明 |
|
streamId |
int |
外部音声ストリーム ID、`addExternalAudioStream` メソッドの正常な呼び出しからの戻り値です。 |
戻り値の説明
0:呼び出しは成功です。
<0:呼び出しは失敗しました。エラーコードが返されます。
getAudioFileInfo
オーディオファイル情報を取得します。
public abstract int getAudioFileInfo(String fileName);このインターフェイスを非同期で呼び出すと、ファイルの持続時間を取得できます。これは非同期インターフェイスであり、onAudioFileInfo を使用して音声ファイル情報を取得できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
fileName |
String |
オーディオファイルのパスです。 |
はじめにに戻る
0:呼び出しは成功しました。
0 以外:エラーコードが返されます。
startAudioAccompany
音声伴奏ミキシングを開始します。
public abstract int startAudioAccompany(String fileName, AliRtcAudioAccompanyConfig config) ;このインターフェイスは、ローカルまたはオンラインの伴奏ファイルを再生します。これは非同期インターフェイスです。このインターフェイスを呼び出した後、AliRtcEngineNotify#onAudioAccompanyStateChanged を使用して伴奏の再生ステータスをモニターできます。
呼び出しタイミング
このメソッドはチャネルに参加した後にのみ呼び出すことができます。
制限事項
効果音とは異なり、一度に再生できる伴奏は 1 つだけです。繰り返し呼び出すと、以前の伴奏再生が上書きされます。
パラメーター
|
パラメーター |
型 |
説明 |
|
fileName |
String |
伴奏ファイルのパスです。 |
|
config |
伴奏再生の構成には、ローカル再生のみ、マイクの置き換え、ループ回数、再生開始位置、ボリューム、その他の設定が含まれます。 |
戻り値の説明
0:呼び出しは成功しました。
0 以外:呼び出しは失敗し、エラーコードを返します。
stopAudioAccompany
ヘッドセットまたはスピーカーを音声出力デバイスとして設定します。
public abstract int stopAudioAccompany() ;このインターフェイスは startAudioAccompany の対となるもので、音声伴奏の再生を停止します。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。
応答の説明
0:呼び出しは成功しました。
0 以外:呼び出しは失敗し、エラーコードを返します。
setAudioAccompanyVolume
音声伴奏のローカル再生およびアップストリーミング用のボリュームを設定します。
public abstract int setAudioAccompanyVolume( int volume) ;この API は、ローカル再生および配信用の音声伴奏のボリュームを設定します。ローカル再生用のボリュームのみを設定するには、setAudioAccompanyPlayoutVolume を使用します。配信用のボリュームのみを設定するには、setAudioAccompanyPublishVolume を使用します。
パラメーター
|
パラメーター |
型 |
説明 |
|
volume |
int |
伴奏ボリューム。有効値:[0, 100]。 0:ミュート。 100:元のファイルボリューム。 |
応答の説明
0:呼び出しは成功しました。
0 以外:呼び出しは失敗し、エラーコードを返します。
setAudioAccompanyPublishVolume
アップストリーミングの音声伴奏のボリュームを設定します。
public abstract int setAudioAccompanyPublishVolume(int volume) ;パラメーター
|
パラメーター |
型 |
説明 |
|
volume |
int |
伴奏ボリューム。範囲:[0, 100]。 0:ミュート。 100:元のファイルボリューム。 |
戻り値の説明
0:呼び出しは成功しました。
0 以外:呼び出しは失敗しました。返される値はエラーコードです。
getAudioAccompanyPublishVolume
伴奏ストリームのインジェスト ボリュームを取得します。
public abstract int getAudioAccompanyPublishVolume() ;応答の説明
伴奏音楽ストリームのアップストリーミングボリュームです。
0 から 100:成功。
その他の値:エラーコード。
setAudioAccompanyPlayoutVolume
伴奏のローカル再生ボリュームを設定します。
public abstract int setAudioAccompanyPlayoutVolume(int volume) ;パラメーター
|
パラメーター |
型 |
説明 |
|
volume |
int |
伴奏ボリューム。有効値:[0, 100]。 0:ミュート。 100:元のファイルボリューム。 |
戻り値の説明
0:呼び出しは成功しました。
0 以外:呼び出しは失敗し、エラーコードが返されます。
getAudioAccompanyPlayoutVolume
伴奏のローカル再生ボリュームを照会します。
public abstract int getAudioAccompanyPlayoutVolume() ;戻り値の説明
伴奏のローカル再生ボリュームです。
[0-100]:成功。
その他の値:エラーコード。
pauseAudioAccompany
伴奏ミキシングを一時停止します。
public abstract int pauseAudioAccompany();戻り値の説明
0:呼び出しは成功しました。
0 以外:呼び出しは失敗し、エラーコードが返されました。
resumeAudioAccompany
伴奏ミキシングを再開できます。
public abstract int resumeAudioAccompany();戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。
0 以外の値は、呼び出しが失敗し、エラーコードを返すことを示します。
getAudioAccompanyDuration
伴奏ファイルの長さをミリ秒単位で取得します。
public abstract int getAudioAccompanyDuration();このメソッドは、現在の伴奏ファイルの長さを取得します。
戻り値の説明
>= 0:伴奏ファイルの長さ。
< 0:呼び出しは失敗し、エラーコードを返します。
getAudioAccompanyCurrentPosition
伴奏ファイルの再生進捗をミリ秒単位で取得します。
public abstract int getAudioAccompanyCurrentPosition();このメソッドは、現在の伴奏ファイルの再生進捗をミリ秒単位で取得します。
応答の説明
0 以上の値:伴奏ファイルの再生進捗。
0 未満の値:呼び出しは失敗しました。エラーコードが返されます。
setAudioAccompanyPosition
伴奏の再生位置を設定します。
public abstract int setAudioAccompanyPosition(int posMs);このメソッドは伴奏の再生進捗を設定します。プログレスバーのドラッグなどの機能に便利です。このメソッドが正常に呼び出されると、伴奏は指定された位置から再生されます。
パラメーター
|
パラメーター |
型 |
説明 |
|
posMs |
int |
プログレスバーの位置(ミリ秒)。 |
戻り値の説明
0:呼び出しは成功しました。
0 以外:呼び出しは失敗しました。エラーコードが返されます。
preloadAudioEffect
効果音をプリロードします。
public abstract int preloadAudioEffect(int soundId, String filePath);パラメーター
|
パラメーター |
型 |
説明 |
|
soundId |
int |
ユーザーが割り当てた効果音ファイルの ID です。 |
|
filePath |
String |
効果音のパスです。 |
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は失敗を示します。
unloadAudioEffect
プリロードされた効果音ファイルを削除します。
public abstract int unloadAudioEffect(int soundId);パラメーター
|
パラメーター |
型 |
説明 |
|
soundId |
int |
ユーザーが割り当てた効果音ファイルの ID です。 |
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は失敗を示します。
playAudioEffect
効果音の再生を開始します。
public abstract int playAudioEffect(int soundId, String filePath, int cycles, boolean publish);パラメーター
|
パラメーター |
型 |
説明 |
|
soundId |
int |
ユーザーが効果音ファイルに割り当てた ID です。 |
|
filePath |
String |
効果音のパスです。 |
|
cycles |
int |
ループ数です。値 -1 は無限ループを指定します。 |
|
publish |
boolean |
効果音の音声ストリームをリモート側にプッシュするかどうかを指定します。有効値:
|
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。0 以外の値は、呼び出しが失敗したことを示します。
stopAudioEffect
効果音の再生を停止します。
public abstract int stopAudioEffect(int soundId);パラメーター
|
パラメーター |
型 |
説明 |
|
soundId |
int |
ユーザーが割り当てた効果音ファイルの ID です。 |
戻り値の説明
戻り値が 0 の場合、呼び出しが成功したことを示します。0 以外の値は、呼び出しが失敗したことを示します。
stopAllAudioEffects
すべての効果音の再生を停止します。
public abstract int stopAllAudioEffects();戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。0 以外の値は、呼び出しが失敗したことを示します。
setAudioEffectPublishVolume
効果音ストリームのアップストリーミングボリュームを設定します。
public abstract int setAudioEffectPublishVolume(int soundId, int volume);パラメーター
|
パラメーター |
型 |
説明 |
|
soundId |
int |
ユーザーが効果音ファイルに割り当てる ID です。 |
|
volume |
int |
ミキシングされた音声のボリュームです。有効値:0 から 100。デフォルト値:50。 |
戻り値の説明
戻り値が 0 の場合、成功を示します。その他の値は失敗を示します。
getAudioEffectPublishVolume
効果音ストリームのアップストリーミングボリュームを照会します。
public abstract int getAudioEffectPublishVolume(int soundId);パラメーター
|
パラメーター |
型 |
説明 |
|
soundId |
int |
効果音ファイルに割り当てられた ID です。 |
応答の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は失敗を示します。
setAudioEffectPlayoutVolume
効果音のローカル再生ボリュームを設定します。
public abstract int setAudioEffectPlayoutVolume(int soundId, int volume);パラメーター
|
パラメーター |
型 |
説明 |
|
soundId |
int |
ユーザーが効果音ファイルに割り当てる ID です。 |
|
volume |
int |
ミキシングされた音声のボリュームです。有効値:0 から 100。デフォルト値:50。 |
戻り値の説明
戻り値が 0 の場合、呼び出しが成功したことを示します。その他の値は失敗を示します。
getAudioEffectPlayoutVolume
Android および iOS デバイスの効果音のローカル再生ボリュームを取得します。
public abstract int getAudioEffectPlayoutVolume(int soundId);パラメーター
|
パラメーター |
型 |
説明 |
|
soundId |
int |
ユーザーが効果音ファイルに割り当てる ID です。 |
戻り値の説明
戻り値が 0 の場合、成功を示します。その他の値は失敗を示します。
setAllAudioEffectsPublishVolume
アップストリーミング内のすべての効果音のミキシングボリュームを設定します。
public abstract int setAllAudioEffectsPublishVolume(int volume);パラメーター
|
パラメーター |
型 |
説明 |
|
volume |
int |
ミキシングされた音声のボリュームです。有効値:0 から 100。デフォルト値:50。 |
戻り値の説明
戻り値が 0 の場合、成功を示します。その他の値は失敗を示します。
setAllAudioEffectsPlayoutVolume
すべての効果音のローカル再生ボリュームを設定します(Android および iOS)。
public abstract int setAllAudioEffectsPlayoutVolume(int volume);パラメーター
|
パラメーター |
型 |
説明 |
|
volume |
int |
ミキシングされた音声のボリュームです。有効値:0 から 100。デフォルト値:50。 |
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は失敗を示します。
startRecord
メディアファイルの録画を開始します。
public abstract boolean startRecord(AliRtcRecordType recordType, AliRtcRecordFormat recordFormat, String filePath, AliRtcRecordAudioConfig audioConfig, AliRtcRecordVideoConfig videoConfig, long maxSize, long maxDuration);パラメーター
|
パラメーター |
型 |
説明 |
|
recordType |
録画タイプです。 | |
|
recordFormat |
フォーマットタイプ(wav、aac、mp4)。 | |
|
filePath |
String |
録画ファイル名です。 |
|
audioConfig |
音声構成です。 | |
|
videoConfig |
映像構成です。 | |
|
maxSize |
long |
最大ファイルサイズです。 |
|
maxDuration |
long |
ファイルの最大持続時間。 |
戻り値
戻り値が TRUE の場合、成功を示します。その他の値は失敗を示します。
ストリームが正常に配信された後(
onVideoPublishStateChanged)、このメソッドを呼び出して、ローカルでエンコードされた映像ストリームをローカルファイルに録画します。音声ストリームを録画する場合、このメソッドはローカルとリモートの音声をミックスしたファイルを作成します。
stopRecord
メディアファイルの録画を停止します。
public abstract void stopRecord();パラメーター
なし。
pauseAudioEffect
効果音を一時停止します。
public abstract int pauseAudioEffect(int soundId);パラメーター
|
パラメーター |
型 |
説明 |
|
soundId |
int |
ユーザーが効果音ファイルに割り当てる ID です。 |
戻り値の説明
戻り値が 0 の場合、成功を示します。その他の値は失敗を示します。
pauseAllAudioEffects
すべての効果音を一時停止します。
public abstract int pauseAllAudioEffects();戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は失敗を示します。
resumeAudioEffect
効果音の再生を再開します。
public abstract int resumeAudioEffect(int soundId);パラメーター
|
パラメーター |
型 |
説明 |
|
soundId |
int |
ユーザーが効果音ファイルに割り当てる ID です。 |
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は失敗を示します。
resumeAllAudioEffects
すべての効果音の再生を再開できます。
public abstract int resumeAllAudioEffects();戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は失敗を示します。
createRenderSurfaceView
SurfaceView レンダリングビューを作成します。
public abstract SophonSurfaceView createRenderSurfaceView(Context context);SurfaceView を直接作成する代わりに、このメソッドを呼び出して映像ビューを表示する必要があります。このメソッドを使用するには:
戻り値を AliRtcVideoCanvas#view に割り当てます。
setLocalViewConfig を呼び出してローカルプレビュービューを設定するか、setRemoteViewConfig を呼び出してリモートプレビュービューを設定します。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。
制限事項
このメソッドはメインスレッドで呼び出す必要があります。
パラメーター
|
パラメーター |
型 |
説明 |
|
context |
Context |
Android アクティビティのコンテキストです。 |
setLocalViewConfig
ローカルプレビューのレンダリングウィンドウと描画パラメーターを設定できます。
public abstract int setLocalViewConfig(AliRtcVideoCanvas viewConfig, AliRtcVideoTrack track);このメソッドは、ローカル映像ストリームをビューにバインドし、ローカルユーザーのビューレンダリングモード、ミラーリングモード、回転角度を構成することで、ローカルプレビュービューを設定します。これはローカルユーザーのプレビューにのみ影響し、アップストリーミングされる映像には影響しません。リモートユーザーのインターフェイスビューを設定するには、setRemoteViewConfig を呼び出します。
AliRtcVideoCanvas の view パラメーターが空の場合、レンダリングは停止します。
再生中に AliRtcVideoCanvas の renderMode パラメーターを変更するには、他のすべてのパラメーターを変更せずに renderMode のみを変更します。
再生中に AliRtcVideoCanvas の mirrorMode パラメーターを更新するには、他のすべてのパラメーターを変更せずに mirrorMode のみを変更します。
startPreview() を明示的に呼び出してローカルプレビューを開始できます。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。
パラメーター
|
パラメーター |
型 |
説明 |
|
viewConfig |
レンダリングウィンドウやレンダリングモードなどのレンダリングパラメーターです。 | |
|
track |
映像ストリームタイプです。 |
返品手順
値が 0 の場合、成功を示します。その他の値は失敗を示します。
setRemoteViewConfig
リモート映像のレンダリングウィンドウと描画パラメーターを設定できます。
public abstract int setRemoteViewConfig(AliVideoCanvas canvas, String uid,AliRtcVideoTrack track);このメソッドは、指定されたリモートユーザーの映像ストリームの表示ビューをバインドし、そのユーザーの映像をローカルで表示する際のレンダリングモード、ミラーリングモード、回転角度を構成します。これはローカルユーザーに表示される映像にのみ影響します。ローカルプレビュービューを構成するには、setLocalViewConfig を呼び出します。
AliRtcVideoCanvas の view パラメーターが空の場合、レンダリングは停止します。
再生中に AliRtcVideoCanvas の renderMode パラメーターをリセットするには、他のすべてのパラメーターを変更せずに renderMode の値を変更します。
再生中に AliRtcVideoCanvas の `mirrorMode` パラメーターを変更するには、他のパラメーターを変更せずに `mirrorMode` の値を変更します。
呼び出しタイミング
この関数は、onRemoteTrackAvailableNotify コールバックを受信したときに呼び出すことを推奨します。これは、リモートユーザーのビデオが利用可能になったときに設定できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
canvas |
レンダリングウィンドウやレンダリングモードなどのレンダリング構成です。 | |
|
uid |
String |
ユーザー ID。 |
|
track |
設定する映像ストリームのタイプです。 |
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示し、その他の値は失敗を示します。
setCameraCapturerConfiguration
カメラのキャプチャプリファレンス(カメラの向きやキャプチャフレームレートなど)を設定します。
public abstract int setCameraCapturerConfiguration(AliEngineCameraCapturerConfiguration cameraCapturerConfiguration);このメソッドは、カメラの向きやフレームレートなどのキャプチャプリファレンスを構成します。
呼び出しタイミング
このメソッドはカメラをオンにする前に呼び出す必要があります。例えば、以下の操作の前に呼び出します。
startPreview(映像プレビューを開始)
joinChannel(チャネルに参加)
パラメーター
|
パラメーター |
型 |
説明 |
|
cameraCapturerConfiguration |
カメラのキャプチャプリファレンス(カメラの向きやフレームレートなど)。デフォルト値:
「-1」は SDK の内部デフォルト設定を使用することを示します。 |
戻り値の説明
戻り値が 0 の場合、メソッド呼び出しが成功したことを示します。その他の値は失敗を示します。
enableLocalVideo
ローカル映像キャプチャを無効または再有効にします。
public abstract int enableLocalVideo(boolean enable);このメソッドは、ローカル映像キャプチャの有効化と無効化を制御します。ローカル映像キャプチャが無効になると、ローカルプレビューやアップストリーミング用の映像データはなくなりますが、リモート映像の受信には影響しません。このメソッドを呼び出してローカルカメラキャプチャを無効にすると、ローカルプレビューとリモートアップストリーミングの両方が最後のフレームで停止します。
ローカル映像キャプチャは SDK でデフォルトで有効になっています。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。
関連コールバック
この API の呼び出しに成功すると、onUserVideoEnabled コールバックを介してリモートユーザーに通知します。
パラメーター
|
パラメーター |
型 |
説明 |
|
enable |
boolean |
ローカル映像収集を無効にするか再有効にするかを指定します。有効値:
|
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は失敗を示します。
muteLocalCamera
ローカル映像データの送信を停止または再開します。
public abstract int muteLocalCamera(boolean mute, AliRtcVideoTrack track);アップストリーミング中に、このメソッドを呼び出して完全に黒い映像フレームを送信できます。ローカルプレビューは正常に表示され、キャプチャ、エンコーディング、送信モジュールは動作し続けますが、映像コンテンツは黒いフレームになります。
このAPIは、指定されたビデオストリームで黒いフレームを送信するかどうかを制御するのみです。ビデオキャプチャおよびデータ送信は停止しません。キャプチャを停止するには、enableLocalVideo を使用します。動画データの送信を中止するには、publishLocalVideoStream を使用するか、<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#7558afe6accq4" id="ee17216e55r3t">enableLocalVideo</a> を呼び出してキャプチャを停止します。
パラメーター
|
パラメーター |
型 |
説明 |
|
mute |
boolean |
ローカル映像トラックの配信を停止または再開します。有効値:
|
|
track |
配信状態を変更したい映像ストリームのタイプです。 |
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。
isCameraOn
カメラがオンになっているか確認します。
public abstract boolean isCameraOn();戻り値の説明
true の値はカメラがオンであることを示し、false の値はカメラがオフであることを示します。
setVideoEncoderConfiguration
映像エンコーディングプロパティを設定します。
public abstract void setVideoEncoderConfiguration(AliRtcVideoEncoderConfiguration config);このメソッドは、映像ストリームの解像度、フレームレート、ビットレート、映像の向きなどの映像エンコーディングプロパティを設定します。すべての映像シナリオでこのメソッドを呼び出すことを推奨します。
各パラメーターには有効な範囲があります。パラメーターを有効範囲外の値に設定した場合、SDK は自動的に値を範囲内に調整します。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。セッションごとにカメラストリームの映像エンコーディングプロパティを一度だけ設定する必要がある場合は、チャネルに参加する前にこのメソッドを呼び出すことを推奨します。
制限事項
このメソッドの mirrorMode パラメーターと setVideoMirrorMode メソッドはどちらも映像ストリームアップストリーミングのミラーリングを設定します。これらのメソッドのいずれかのみを使用することを推奨します。両方のメソッドを使用すると、ミラーリング効果が重複し、ミラーリングの失敗や不整合が発生する可能性があります。
パラメーター
|
パラメーター |
型 |
説明 |
|
config |
事前定義されたエンコーディングプロパティです。デフォルト値:
値 -1 は、SDK の内部デフォルト設定を使用することを示します。 |
setVideoDecoderConfiguration
映像デコーディングプロパティを設定します。
public abstract void setVideoDecoderConfiguration(AliRtcVideoDecoderConfiguration config);このメソッドは、映像ストリームをデコードするための映像パラメーターを設定します。
呼び出しタイミング
チャネルに参加する前にこのメソッドを呼び出すことを推奨します。
パラメーター
|
名前 |
型 |
説明 |
|
config |
AliRtcVideoDecoderConfiguration |
事前定義されたデコーディングプロパティです。デフォルト値:
値 -1 は、SDK の内部デフォルト設定を使用することを意味します。 |
switchCamera
フロントカメラとリアカメラを切り替えることができます。デフォルトではフロントカメラが使用されます。
public abstract int switchCamera();このメソッドは、フロントカメラとリアカメラのどちらを使用するかを制御します。デフォルトでは、フロントカメラが使用されます。映像ストリームを再起動したり、映像ソースを再構成したりすることなく、利用可能なカメラに基づいてアプリケーションの実行中に動的にカメラを切り替えることができます。
呼び出しタイミング
このメソッドは、カメラが正常に有効化された後にのみ呼び出すことができます。
制限事項
このメソッドは Android と iOS でのみサポートされています。
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は、失敗したことを示します。
getCurrentCameraDirection
現在のカメラの向きを取得します。
public abstract AliRTCCameraDirection getCurrentCameraDirection();返品手順
CAMERA_REAR (0) の値はリアカメラを示します。
CAMERA_FRONT (1) の値はフロントカメラを示します。
CAMERA_INVALID (-1) の値は無効な値を示します。
このメソッドはカメラが有効になった後にのみ呼び出すことができます。そうでない場合、CAMERA_INVALID (-1) を返します。
startPreview
ローカルプレビューを開始します。
public abstract int startPreview();このメソッドはローカル映像プレビューを開始し、自動的にカメラを有効にします。ローカルプレビューを停止するには、stopPreview メソッドを呼び出すことができます。
leaveChannel チャネルを退出すると、ローカルプレビューは自動的に停止します。カメラストリームを配信していない場合、カメラはシャットダウンします。
呼び出しタイミング
呼び出しの前に、setLocalViewConfig を呼び出してローカルプレビュー用のビューを設定する必要があります。そうしないと、プレビューは表示されませんが、アップストリーミングには影響しません。
必要に応じて、joinChannel を呼び出す前にこのメソッドを呼び出してプレビューを開始できます。カメラは自動的にオンになります。
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示し、その他の値は失敗を示します。
stopPreview
ローカルプレビューを停止します。
public abstract int stopPreview();このメソッドはローカル映像プレビューを停止し、カメラをオフにします。プレビューが停止した後、ローカルビューには最後にキャプチャされたフレームが表示され、アップストリーミングには影響しません。
leaveChannel を呼び出すと、ローカルプレビューは自動的に停止します。カメラストリームを配信していない場合、カメラも自動的にオフになります。
呼び出しタイミング
ローカルプレビューを開始した後にこのメソッドを呼び出すことができます。
戻り値の説明
戻り値が 0 の場合、成功を示します。その他の値は失敗を示します。
setCameraZoom
カメラのズーム比を設定できます。
public abstract int setCameraZoom(float zoom);カメラのズーム係数を設定できます。
制限事項
このメソッドは iOS および Android デバイスでのみ利用可能です。
呼び出しタイミング
この設定はカメラを有効にした後にのみ有効になります。ズームはカメラが再起動するたびにリセットされます。
パラメーター
|
パラメーター |
型 |
説明 |
|
zoom |
float |
カメラのズーム係数です。値の範囲は 1 からカメラがサポートする最大ズーム値までです。GetCameraMaxZoomFactor を呼び出して、現在のデバイスの最大ズーム係数を取得します。 |
戻り値の説明
0:呼び出しが成功しました。
0 以外:メソッド呼び出しは失敗しました。
GetCameraMaxZoomFactor
カメラがサポートする最大ズーム係数(光学ズーム)を取得します。
public abstract float GetCameraMaxZoomFactor();戻り値の説明
デバイスのカメラがサポートする最大ズーム係数です。
GetCurrentZoom
現在のカメラのズーム係数設定を取得できます。
public abstract float GetCurrentZoom();戻り値の説明
デバイスの現在のカメラのズーム係数です。
SetExposure
カメラの露出を設定できます。
public abstract int SetExposure(float exposure);撮影環境が暗すぎたり明るすぎたりすると、映像キャプチャの品質に影響します。映像品質を向上させるために、このメソッドを使用してカメラの露出レベルを調整できます。GetMinExposure と GetMaxExposure を使用して、サポートされている露出レベルの範囲を取得できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
Exposure |
float |
カメラの露出値です。デフォルト値は 0 です。これは、カメラがデフォルトの露出を使用することを意味します。値が大きいほど露出が増加します。映像が露出オーバーの場合は露出値を下げ、露出アンダーで暗い部分の詳細が失われている場合は露出値を上げてください。指定された露出値がデバイスのサポート範囲外の場合、SDK は自動的に調整します。 |
応答の説明
0:呼び出しが成功しました。
0 以外の値は、メソッド呼び出しが失敗したことを示します。
GetCurrentExposure
カメラの露出レベルを取得します。
public abstract float GetCurrentExposure();現在使用中のカメラの露出レベル設定を取得します。
戻り値の説明
カメラの現在の露出レベルです。
GetMinExposure
カメラがサポートする最小露出を取得できます。
public abstract float GetMinExposure();戻り値の説明
カメラの最小露出レベルです。
GetMaxExposure
サポートされている最大カメラ露出レベルを取得します。
public abstract float GetMaxExposure();戻り値の説明
カメラの最大露出レベルです。
setCameraFlash
カメラのフラッシュを有効または無効にします。
public abstract int setCameraFlash(boolean flash);フラッシュを有効または無効にします。
通常、フラッシュ機能はリアカメラのみでサポートされています。
制限事項
このメソッドは iOS と Android でのみサポートされています。
パラメーター
|
パラメーター |
型 |
説明 |
|
flash |
boolean |
フラッシュを有効にします。
|
戻り値の説明
0:設定は成功しました。
0 以外:設定は失敗しました。
isCameraFocusPointSupported
現在のデバイスで手動フォーカスがサポートされているかどうかを照会します。
public abstract boolean isCameraFocusPointSupported();現在のカメラが手動フォーカスのためのフォーカスポイント設定をサポートしているかどうかを確認します。
制限事項
このメソッドは iOS および Android デバイスでのみ利用可能です。
応答の説明
true:デバイスは手動フォーカスをサポートしています。
false:デバイスは手動フォーカスをサポートしていません。
isCameraExposurePointSupported
カメラの露出ポイントの設定がサポートされているか確認します。
public abstract boolean isCameraExposurePointSupported();現在のデバイスで露出ポイントを設定できるかどうかを判断します。
制限事項
このメソッドは iOS および Android デバイスでのみ利用可能です。
戻り値の説明
true:カメラの露出ポイントを設定できます。
false:カメラの露出ポイントを設定できません。
setCameraFocusPoint
カメラの手動フォーカスポイントを設定できます。
public abstract int setCameraFocusPoint(float x, float y);現在のカメラのフォーカスポイントを設定します。この操作を呼び出した後、カメラは指定されたポイントの露出を調整し、そのフォーカス値を維持します。この操作を呼び出す前に、isCameraFocusPointSupported を呼び出して、デバイスが手動フォーカスをサポートしているかどうかを確認することをお勧めします。
制限事項
このメソッドは iOS および Android デバイスでのみ利用可能です。
このメソッドはチャネルに参加する前にのみ呼び出してください。
|
パラメーター |
型 |
説明 |
|
x |
float |
x 座標の値です。 |
|
y |
float |
y 軸上の値です。 |
戻り値の説明
0:呼び出しが成功しました。
0 以外:呼び出しが失敗しました。
setCameraExposurePoint
カメラの露出ポイントを設定できます。
public abstract int setCameraExposurePoint(float x, float y);この操作はカメラの露出ポイントを設定します。呼び出し後、カメラは指定されたポイントの露出を一度調整し、その露出値を維持します。この操作を呼び出す前に、isCameraExposurePointSupported を呼び出して、デバイスが手動露出ポイント設定をサポートしているかどうかを確認することをお勧めします。
制限事項
このメソッドは iOS および Android デバイスでのみ利用可能です。
パラメーター
|
パラメーター |
型 |
説明 |
|
x |
float |
X 軸座標値 |
|
y |
float |
y 軸座標値 |
戻り値の説明
0:メソッド呼び出しは成功しました。
0 以外:メソッド呼び出しは失敗しました。
isCameraAutoFocusFaceModeSupported
カメラが自動顔フォーカスをサポートしているか確認します。
public abstract boolean isCameraAutoFocusFaceModeSupported();カメラが自動顔フォーカスをサポートしているかどうかを判断します。
呼び出しタイミング
このメソッドはカメラが有効になった後にのみ呼び出すことができます。カメラが有効で、顔検出とオートフォーカスの両方をサポートしている場合は true を返します。それ以外の場合は false を返します。
制限事項
このメソッドは iOS と Android でのみ利用可能です。
戻り値の説明
true:自動顔フォーカスがサポートされています。
false:自動顔フォーカスはサポートされていません。
setCameraAutoFocusFaceModeEnabled
カメラの顔フォーカスを設定できます。
public abstract boolean setCameraAutoFocusFaceModeEnabled(boolean enable);このインターフェイスは、人間の顔にリアルタイムのオートフォーカスを可能にします。このメソッドを呼び出す前に、この機能のデバイスサポートを確認するために、isCameraAutoFocusFaceModeSupported を呼び出す必要があります。
制限事項
このメソッドは iOS と Android でのみ利用可能です。
パラメーター
|
パラメーター |
型 |
説明 |
|
enable |
boolean |
カメラの顔フォーカス機能をオンまたはオフにします。
|
戻り値の説明
true:呼び出しは成功しました。
false:呼び出しは失敗しました。
setVideoMirrorMode
プレビューおよびアップストリーミング用の映像ミラーリングを構成します。
public abstract int setVideoMirrorMode(AliRtcVideoPipelineMirrorMode mirrorMode);ローカルプレビュー映像およびアップストリーミングされる映像ストリームに対してミラーリングモードを有効にするかどうかを指定します。
このインターフェイスは setLocalViewConfig および setVideoEncoderConfiguration よりも優先されます。映像ミラーリングモードを設定するには、このインターフェイスを呼び出すことができます。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に動的に設定できます。SDK は内部的に状態を記録し、プレビューおよびエンコーディング(アップストリーミング)が利用可能になったときに映像操作を適用します。
呼び出し制限
このメソッドは setLocalViewConfig および setVideoEncoderConfiguration の mirrorMode と重複します。これらのメソッドのいずれかのみを使用することを推奨します。
このメソッドはチャネルに参加する前に呼び出してください。
|
パラメーター |
型 |
説明 |
|
mirrorMode |
ミラーモードを設定します。 |
応答の説明
0:設定は正常に適用されました。
<0:設定に失敗しました。
AliRtcErrInner:SDK 内部の状態エラーです。SDK インスタンスが正常に作成されたかどうかを確認できます。
setCapturePipelineScaleMode
映像キャプチャのスケーリングのタイミングを設定します。
public abstract void setCapturePipelineScaleMode(AliRtcCapturePipelineScaleMode mode);映像データキャプチャのスケーリングが、キャプチャ直後に行われるか、エンコーディング中に行われるかを設定します。例えば、キャプチャ解像度とエンコーディング解像度が異なる場合、スケーリングのタイミングを設定して、プレビューデータとアップストリーミングデータが一致するかどうかを決定できます。
呼び出しタイミング
このメソッドはカメラを有効にする前に設定してください。例えば、startPreview でプレビューを開始する前や、joinChannel でチャネルに参加する前に設定します。
パラメーター
|
パラメーター |
型 |
説明 |
|
mode |
AliRtcCapturePipelineScaleMode |
このモードは、コレクションスケーリングのタイミングを制御します。デフォルトでは、スケーリングはコレクション直後に行われます。 |
戻り値の説明
なし。
setExternalVideoSource
外部映像入力ソースを有効にします。
public abstract void setExternalVideoSource(boolean enable,boolean useTexture,
AliRtcVideoTrack streamType,AliRtcRenderMode renderMode);パラメーター
|
パラメーター |
型 |
説明 |
|
enable |
boolean |
外部映像入力ソースを有効にするかどうかを指定します。有効値:
|
|
useTexture |
boolean |
テクスチャモードを使用するかどうかを指定します。
|
|
type |
映像ストリームタイプです。 | |
|
renderMode |
レンダリングモードです。 |
pushExternalVideoFrame
映像データをインポートします。
public abstract int pushExternalVideoFrame(AliRtcRawDataFrame aliRawDataFrame,AliRtcVideoTrack streameType);パラメーター
|
パラメーター |
型 |
説明 |
|
aliRawDataFrame |
フレームデータです。 | |
|
streameType |
映像ストリームタイプです。 |
応答の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は失敗を示します。
startPublishLiveStream
中継ライブストリーミングを開始します。
public abstract int startPublishLiveStream(String streamUrl,AliRtcLiveTranscodingParam transcodingParam);パラメーター
|
パラメーター |
型 |
説明 |
|
streamUrl |
String |
アップストリーミング URL です。 |
|
transcodingParam |
アップストリーミングパラメーターです。 |
応答の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は失敗を示します。
updatePublishLiveStream
バイパスライブストリーミングパラメーターを更新できます。
public abstract int updatePublishLiveStream(String streamUrl,AliRtcLiveTranscodingParam transcodingParam);パラメーター
|
パラメーター |
型 |
説明 |
|
streamUrl |
String |
アップストリーミング URL です。 |
|
transcodingParam |
アップストリーミングパラメーターです。 |
返品手順
値が 0 の場合、成功を示します。その他の値は失敗を示します。
stopPublishLiveStream
バイパスライブストリームを停止します。
public abstract int stopPublishLiveStream(String streamUrl);パラメーター
|
パラメーター |
型 |
説明 |
|
streamUrl |
String |
アップストリーミング URL です。 |
戻り値の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します。
getPublishLiveStreamState
バイパスライブストリーミングのステータスを取得します。
public abstract AliRtcEngine.AliRtcLiveTranscodingState getPublishLiveStreamState(String streamUrl);パラメーター
|
パラメーター |
型 |
注記 |
|
streamUrl |
String |
バイパスライブストリーミングのアップストリーミング URL です。 |
返品手順
バイパスライブストリーミングのステータスを返します。
startNetworkQualityProbeTest
ネットワーク品質プローブを有効にできます。
public abstract int startNetworkQualityProbeTest(AlirtcNetworkQualityProbeConfig config);パラメーター
|
パラメーター |
型 |
説明 |
|
config |
AlirtcNetworkQualityProbeConfig |
プローブ構成のパラメーターです。 |
戻り値の説明
値が 0 の場合、成功を示し、0 以外の値は失敗を示します。
stopNetworkQualityProbeTest
ネットワーク品質テストを停止します。
public abstract int stopNetworkQualityProbeTest();戻り値の説明
値が 0 の場合、成功を示します。その他の値は失敗を示します。
sendMediaExtensionMsg
メディア拡張情報を送信できます。
public abstract int sendMediaExtensionMsg(byte[]message, int repeatCount, int delay, boolean isKeyFrame);SDK はメディア拡張メッセージの送受信を可能にします。送信メソッドは SEI 拡張プロトコルを使用します。受信者は onMediaExtensionMsgReceived イベントをリッスンすることでメッセージを取得できます。
一般的なユースケースは次のとおりです。
メディア拡張情報を使用してタイムスタンプを送信し、エンドツーエンドのネットワーク遅延を計算したり、他のビジネス運用とデータを同期したりします。
メディア拡張情報を使用して記述情報を送信します。最大 4 KB のデータを送信でき、少量のデータに適しています。JSON またはプレーンテキストの使用を推奨します。
呼び出しタイミング
アップストリーミングを開始した後、このメソッドを呼び出すことができます。
制限事項
メディア拡張情報を使用するには、音声・映像データチャネルを再利用する必要があります。したがって、カスタムメッセージの送信頻度とメッセージデータの長さを制御する必要があります。制限は次のとおりです。
SEI 情報は H.264 または H.265 ストリームに埋め込まれ、拡張情報を添付するために映像フレームのエンコーディングが必要なため、プロファイルで指定された fps メッセージを 1 秒あたり最大で送信できます。
メディアデータ送信品質への影響を避けるため、カスタムメッセージ本文は 4 KB に制限されており、少量の情報に適しています。
sendMediaExtensionMsg 関数の repeatCount パラメーターは、カスタムメッセージの冗長性レベルを指定します。この値が 1 より大きい場合、メッセージは複数回送信されます。
この冗長性は、ネットワークパケット損失によるメッセージ損失を防ぐのに役立ちます。このような場合、ルーム内の他の参加者は複数の同一メッセージを受信し、重複排除する必要があります。
ルーム内のサブスクライバーは、中継ライブストリーミング中にもカスタムメッセージを受信します。
一度に送信される MediaExtensionMsg は 1 つだけです。sendMediaExtensionMsg を複数回呼び出すと、以前にキューに入れられたデータが上書きされます。
関連コールバック
ストリームプーラーは、onMediaExtensionMsgReceived コールバックをリッスンすることで、ストリームインジェスターから送信されたメディア拡張情報を取得できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
message |
byte[] |
メディア拡張情報です。最大長は 4 KB です。 |
|
repeatCount |
int |
繰り返し回数はメッセージの冗長性を示します。ネットワークパケット損失によるメッセージ損失を防ぎます。値 -1 は無限送信を意味します。 |
|
Delay |
int |
遅延(ミリ秒)。API を呼び出してから拡張情報を送信するまでの最小待機時間です。 |
|
isKeyFrame |
boolean |
拡張情報をキーフレームにのみ添付するかどうかを指定します。値が true の場合、情報はキーフレームにのみ添付されます。 |
返品手順
0:呼び出しは成功しました。
<0:呼び出しは失敗しました。エラーコードが返されます。
ERR_INNER(-1):SDK 内部エラーです。考えられる原因:SDK が初期化されていない、または破棄された後に呼び出された。
sendMediaExtensionMsgEx
メディア拡張情報を送信します。
public abstract int sendMediaExtensionMsgEx(byte[]message, int repeatCount, int delay, boolean isKeyFrame, int payloadType);SDK はメディア拡張情報を送受信する機能を提供します。このメソッドは SEI 拡張プロトコルを使用してメディア拡張情報を送信します。onMediaExtensionMsgReceived をリッスンすることで情報を取得できます。payloadType が 5 の場合、これは sendMediaExtensionMsg インターフェイスを使用するのと同等です。
一般的なユースケースは次のとおりです。
メディア拡張情報を使用してタイムスタンプを送信し、エンドツーエンドのネットワーク遅延を計算したり、他のビジネス運用とデータを同期したりします。
メディア拡張情報を使用して記述情報を送信します。最大 4 KB のデータを送信でき、少量の情報に適しています。JSON またはプレーンテキストの使用を推奨します。
呼び出しタイミング
このメソッドはアップストリーミングを開始した後に呼び出すことができます。
制限事項
メディア拡張情報を使用するには、音声・映像データチャネルを再利用する必要があります。したがって、カスタムメッセージの送信頻度とメッセージデータの長さを制御する必要があります。制限は次のとおりです。
プロファイルで指定されたとおり、1 秒あたり fps メッセージを送信できます。これは、SEI 情報が H.264 または H.265 ストリームに埋め込まれており、拡張情報をアタッチするためにビデオフレームのエンコーディングが必要となるためです。
メディアデータ送信品質の低下を避けるため、カスタムメッセージ本文は 4 KB に制限されており、少量の情報に適しています。
sendMediaExtensionMsg 関数の repeatCount パラメーターは、カスタムメッセージの冗長性レベルを指定します。この値が 1 より大きい場合、メッセージは複数回送信されます。
この冗長性は、ネットワークパケット損失によるメッセージ損失を防ぐのに役立ちます。このような場合、ルーム内の他の参加者は複数の同一メッセージを受信し、重複排除する必要があります。
ルーム内のサブスクライバーは、中継ライブストリーミング中にもカスタムメッセージを受信します。
一度に送信される MediaExtensionMsg は 1 つだけです。sendMediaExtensionMsg を複数回呼び出すと、以前にキューに入れられたデータが上書きされます。
パラメーターの説明
|
パラメーター |
型 |
説明 |
|
Message |
byte[] |
メディア拡張情報です。最大長:4 KB。 |
|
repeatCount |
int |
繰り返し回数。メッセージの冗長性を表し、ネットワークパケット損失によるメッセージ損失を防ぎます。値 -1 は無限送信を意味します。 |
|
Delay |
int |
遅延(ミリ秒)。API 呼び出し後に拡張データを送信するまでの最短時間です。 |
|
isKeyFrame |
boolean |
キーフレームのみが拡張情報を使用します。true の場合、拡張情報はキーフレームにのみ添付されます。 |
|
payloadType |
int |
payloadType=5 の範囲 [5, 100..254] は、sendMediaExtensionMsg インターフェイスを使用するのと同等です。 |
戻り値の説明
0:呼び出しは成功しました。
<0:呼び出しは失敗し、エラーコードを返します。
ERR_INNER(-1):SDK 内部エラーが発生しました。考えられる原因には、SDK の初期化の失敗や、破棄された後の SDK の呼び出しが含まれます。
onConnectionStatusChange
このコールバックは、ネットワーク接続ステータスが変更されたときに呼び出されます。このコールバックを監視することが重要です。
public void onConnectionStatusChange(AliRtcEngine.AliRtcConnectionStatus status,
AliRtcEngine.AliRtcConnectionStatusChangeReason reason);パラメーター
|
パラメーター |
型 |
説明 |
|
status |
現在のネットワーク接続ステータスです。 | |
|
reason |
ネットワーク接続ステータス変更の理由です。 |
OnLocalDeviceException
ローカルデバイスで例外が発生したときに呼び出されるコールバックです。このコールバックには細心の注意を払ってください。
public void OnLocalDeviceException(AliRtcEngine.AliRtcEngineLocalDeviceType deviceType, AliRtcEngine.AliRtcEngineLocalDeviceExceptionType exceptionType, String msg)パラメーター
|
パラメーター |
型 |
説明 |
|
deviceType |
AliRtcEngineLocalDeviceType |
デバイスタイプ |
|
exceptionType |
AliRtcEngineLocalDeviceExceptionType |
デバイス例外タイプです。 |
|
msg |
String |
例外に含まれる情報です。 |
onAuthInfoWillExpire
このコールバックは、ユーザー認証が 30 秒後に期限切れになることを示します。このコールバックを処理する必要があります。
public void onAuthInfoWillExpire();このコールバックは、ユーザーの認証情報が 30 秒後に期限切れになることを示します。新しいトークンを取得し、以下のいずれかの方法で認証情報を更新する必要があります。
<a baseurl="t2309760_v6_4_1.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#975b9af9ecq1a" id="8099ac5a509hn">refreshAuthInfo</a>を呼び出して認証情報を更新します。<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#fef395c4beqdt" id="fe88be037dy4g">leaveChannel</a>を呼び出して現在のチャネルから退出した後、joinChannelを呼び出してチャネルに再参加します。
トリガー時間
SDK は、ユーザーの認証情報が期限切れになる 30 秒前にこのコールバックをトリガーします。このコールバックを受信したら、速やかに認証情報を更新する必要があります。
onAuthInfoExpired
ユーザーが認証を必要とするインターフェイスを呼び出し、サーバーが期限切れ情報を返します。
public void onAuthInfoExpired();このコールバックは、ユーザーの認証情報が期限切れになったことを示します。セッションを継続したい場合は、サーバーで新しいトークンを生成し、以下の方法で認証情報を更新する必要があります。
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#fef395c4beqdt" id="c3b0cf2f19dgm">leaveChannel</a>を呼び出して現在のチャネルを終了できます。その後、joinChannelを呼び出して再入室します。
トリガー時間
このコールバックは、ユーザーの認証情報が期限切れになったときにトリガーされます。
onJoinChannelResult
このコールバックは、チャネルに参加した結果を返します。
public void onJoinChannelResult(int result, String channel, String userId, int elapsed);パラメーター
|
パラメーター |
型 |
説明 |
|
result |
int |
チャネル参加リクエストの結果です。値が 0 の場合、成功を示します。0 以外の値はエラーコードを示します。詳細については、「エラーコード」をご参照ください。一般的なエラーコードは次のとおりです。
|
|
channel |
String |
チャネル ID です。 |
|
userId |
String |
ユーザー ID。 |
|
elapsed |
int |
チャネルに参加するのにかかる時間です。単位:ミリ秒。 |
onLeaveChannelResult
チャネルから退出した結果を返すコールバックです。
public void onLeaveChannelResult(int result, AliRtcEngine.AliRtcStats stats);トリガー条件
このコールバックは、アプリケーションが <a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#fef395c4beqdt" id="7f3d2133c81tx">leaveChannel</a> を正常に呼び出し、システムがチャネル退出の結果とセッションの統計情報を返したときにトリガーされます。
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#fef395c4beqdt" id="fdccda828dzqt">leaveChannel</a> を呼び出した直後に destroy を呼び出してエンジンを破棄した場合、このコールバックはトリガーされません。
パラメーター
|
パラメーター |
型 |
説明 |
|
result |
int |
チャネル退出の結果です。値が 0 の場合、成功を示します。0 以外の値は、操作が失敗した場合のエラーコードを示します。 |
|
stats |
このチャネルのセッションのデータ統計です。 |
onRemoteUserOffLineNotify
リモートユーザーのオフラインコールバックです。
public void onRemoteUserOffLineNotify(String uid, AliRtcUserOfflineReason reason);このコールバックは、リモートユーザーがオフラインになったためにチャネルを退出したことをローカルユーザーに通知します。
トリガー条件
リモートユーザーが積極的にチャネルを退出すると、コールバックがトリガーされます。
リモートストリーマーが
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#84f350f904s98" id="4c0adbe948tif">setClientRole</a>を呼び出して視聴者ロールに切り替えると(AliRtcEngine#setClientRole を呼び出してロールを AliRTCSdkLive に設定)、コールバックがトリガーされます。リモートストリーマーから長期間データが受信されないためにオフラインと見なされると、コールバックがトリガーされます。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
リモートユーザーの ID です。 |
|
reason |
ユーザーがオフラインになった理由です。 |
onRemoteUserOnLineNotify
このコールバックは、リモートユーザーがオンラインになったときに呼び出されます。
public void onRemoteUserOnLineNotify(String uid, int elapsed);このメソッドは、リモートユーザーがチャネルに参加したことをローカルクライアントに通知します。
トリガー条件
リモートユーザーがチャネルに参加します。
ローカルユーザーがチャネルに参加した後、このコールバックはすでにチャネルにいる各ユーザーに対して呼び出されます。これにより、ローカルユーザーは既存のユーザーを識別できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
リモートユーザーの ID です。 |
|
elapsed |
int |
ユーザーがチャネルに参加するのにかかる時間です。単位:ミリ秒。 |
onRemoteTrackAvailableNotify
このコールバックは、リモートユーザーの音声・映像ストリームが変更されたときに呼び出されます。
public void onRemoteTrackAvailableNotify(String uid, AliRtcAudioTrack audioTrack,
AliRtcVideoTrack videoTrack);このコールバックは、リモートユーザーのアップストリーミングステータスが変更されたときにトリガーされます。このコールバックを通じて、開発者はリモートユーザーが音声・映像ストリームをアップストリーミングしているかどうかに関するリアルタイム情報を取得し、それに応じてリモートユーザーの音声・映像情報を表示または非表示にすることができます。
このコールバックはリモートユーザーのアップストリーミングステータスを返します。この変更中にどのストリームがオフラインになったかを判断するには、コールバック前後のステータス変更を記録してください。
トリガー条件
このコールバックは、以下のシナリオでトリガーされます。
リモートユーザーがストリームを受信しない状態から、ストリーム(音声および映像を含む)を受信する状態に変化した場合。
リモートユーザーが音声と映像の両方のストリーミングを停止した場合。
インタラクティブモードでは、リモートユーザーが setClientRole を呼び出して視聴者ロールからストリーマーロールに切り替え、アップストリーミングを構成した場合にこのコールバックがトリガーされます。
例えば、映像の場合、リモートユーザーがアップストリーミングを行わない場合、このコールバックはトリガーされません。
リモートユーザーがカメラストリームのアップストリーミングを開始すると(アップストリーミングステータス:映像ストリームなし -> カメラストリームのみ)、ローカルコールバックは
AliRtcVideoTrackCameraを返し、リモートユーザーのカメラストリームが利用可能であることを示します。リモートユーザーが画面共有ストリームもアップストリーミングすると(アップストリーミングステータス:カメラストリームのみ -> カメラストリームと画面共有ストリーム)、ローカルコールバックは
AliRtcVideoTrackBothを返し、リモートユーザーのカメラストリームと画面共有ストリームの両方が利用可能であることを示します。リモートユーザーがカメラストリームのアップストリーミングを停止し、画面共有ストリームのみを保持すると(アップストリーミングステータス:カメラストリームと画面共有ストリーム -> 画面共有ストリームのみ)、ローカルコールバックは
AliRtcVideoTrackScreenを返し、現在画面共有ストリームのみが利用可能であることを示します。リモートユーザーが画面共有ストリームのアップストリーミングを停止すると(アップストリーミングステータス:画面共有ストリームのみ -> 映像ストリームなし)、ローカルコールバックは
AliRtcVideoTrackNoを返し、現在映像ストリームが利用できないことを示します。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
リモートユーザーの ID です。 |
|
audioTrack |
変更後のリモートユーザーの音声ストリームです。 | |
|
videoTrack |
変更後のリモートユーザーの映像ストリームです。 |
onBye
ユーザーが強制的にチャネルから退出させられたり、チャネルが閉じられたりしたときに呼び出されるコールバックです。
public void onBye(int code);このコールバックは、ユーザーが切断されたり、セッションが終了したりしたときにトリガーされます。code パラメーターを使用して切断の理由を判断し、それに応じて処理できます。
トリガー条件
現在のユーザーがサーバーによってキックアウトされました。
サーバーがチャネルを閉じたため、セッションが終了しました。
予期しない切断が発生し、クライアントがセッションの復元または再接続を試みる必要があります。
パラメーター
|
パラメーター |
型 |
説明 |
|
code |
int |
ユーザーがチャネルから削除された理由です。詳細については、「AliRtcOnByeType」をご参照ください。 |
onAudioPublishStateChanged
このコールバックは、音声ストリームのアップストリーミングステータスが変更されたときに呼び出されます。
public void onAudioPublishStateChanged(AliRtcEngine.AliRtcPublishState oldState ,
AliRtcEngine.AliRtcPublishState newState,
int elapseSinceLastState, String channel);このコールバックは、ローカルユーザーの音声ストリームのアップストリーミングステータスの変更を監視します。
トリガー条件
このコールバックは、ユーザーの音声ストリームのアップストリーミングステータスが変更されたときにトリガーされます。例えば、
ユーザーがアップストリーミングを停止します。
ユーザーが
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#84f350f904s98" id="e6c8edfc45xbw">setClientRole</a>を呼び出して視聴者に切り替えます。
パラメーター
|
パラメーター |
型 |
説明 |
|
oldState |
アップストリーミングの以前の状態です。 | |
|
newState |
現在のアップストリーミング状態です。 | |
|
elapseSinceLastState |
int |
状態変更間の間隔です。単位:ミリ秒。 |
|
channel |
String |
チャネルの ID です。 |
onAudioSubscribeStateChanged
音声サブスクリプションステータスが変更されたときに呼び出されるコールバックです。
public void onAudioSubscribeStateChanged(String uid,
AliRtcEngine.AliRtcSubscribeState oldState,
AliRtcEngine.AliRtcSubscribeState newState,
int elapseSinceLastState, String channel);このコールバックは、リモートユーザーの音声ストリームのサブスクリプションステータスの変更をローカルユーザーに通知します。また、リモートユーザーのカメラストリームのサブスクリプションステータスの変更を報告し、前後の状態間の経過時間を提供します。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
リモートユーザー ID です。 |
|
oldState |
以前のサブスクリプション状態です。 | |
|
newState |
現在のサブスクリプション状態です。 | |
|
elapseSinceLastState |
int |
状態変更の時間間隔です。単位:ミリ秒。 |
|
channel |
String |
現在のチャネル ID です。 |
onUserAudioMuted
リモートユーザーが音声データの送信を停止したときに通知が送信されます。
public void onUserAudioMuted(String uid ,boolean isMute);パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
音声トラックをミュートするユーザーの ID です。 |
|
isMute |
boolean |
音声トラックがミュートされているかどうかを示します。有効値:
|
onUserAudioInterruptedBegin
このコールバックは、ユーザーの音声が中断されたときに呼び出されます。
public void onUserAudioInterruptedBegin(String uid);パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
音声が中断されたユーザーです。 |
onUserAudioInterruptedEnded
ユーザーの音声中断が終了したときに通知が送信されます。
public void onUserAudioInterruptedEnded(String uid);パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
音声トラックが中断されたユーザーの ID です。 |
onVideoPublishStateChanged
映像ストリームアップストリーミングの変更に関するコールバックです。
public void onVideoPublishStateChanged(AliRtcEngine.AliRtcPublishState oldState ,
AliRtcEngine.AliRtcPublishState newState,
int elapseSinceLastState, String channel);このコールバックは、ローカルユーザーの映像ストリームのアップストリーミングステータスの変更を監視します。
パラメーター
|
パラメーター |
型 |
説明 |
|
oldState |
以前のアップストリーミング状態です。 | |
|
newState |
現在のアップストリーミング状態です。 | |
|
elapseSinceLastState |
int |
状態変更間の時間間隔です。単位:ミリ秒。 |
|
channel |
String |
チャネルの ID です。 |
onVideoSubscribeStateChanged
このコールバックは、カメラストリームのサブスクリプションステータスが変更されたときに呼び出されます。
public void onVideoSubscribeStateChanged(String uid,
AliRtcEngine.AliRtcSubscribeState oldState,
AliRtcEngine.AliRtcSubscribeState newState,
int elapseSinceLastState, String channel);このコールバックは、リモートユーザーのカメラストリームのサブスクリプションステータスの変更をローカルユーザーに通知します。このコールバックを通じて、特定のリモートユーザーのカメラストリームのサブスクリプションステータスの変更に関する情報と、前後の状態間の時間間隔を取得できます。
関連コールバック
映像ストリームにはカメラストリームと画面共有ストリームが含まれます。このメソッドはカメラストリームのサブスクリプションステータスの変更を処理します。画面共有ストリームに関連するコールバックは onScreenShareSubscribeStateChanged です。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
リモートユーザー ID です。 |
|
oldState |
以前のサブスクリプション状態です。 | |
|
newState |
現在のサブスクリプション状態です。 | |
|
elapseSinceLastState |
int |
状態変更の時間間隔です。 |
|
channel |
String |
現在のチャネル ID です。 |
onUserVideoMuted
ピアユーザーが映像の黒フレームを送信するときに通知を送信します。
public void onUserVideoMuted(String uid, boolean isMute);パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
enableLocalVideo を実行するユーザーです。 |
|
isMute |
boolean |
黒フレームを送信するかどうかを指定します。有効値:
|
onUserVideoEnabled
リモートユーザーがカメラストリームを停止したときに通知が送信されます。
public void onUserVideoEnabled(String uid, boolean isMute);パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
リモートユーザーの ID です。 |
|
isMute |
boolean |
カメラトラック収集を有効にします。有効値:
|
onUserWillResignActive
このコールバックは、リモートユーザーのアプリケーションがバックグラウンドに移動したときに呼び出されます。
public void onUserWillResignActive(String uid);パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
ユーザー ID。 |
onUserWillBecomeActive
リモートユーザーのアプリケーションがフォアグラウンドに戻ります。
public void onUserWillBecomeActive(String uid);パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
ユーザー ID です。 |
onAliRtcStats
このコールバックは 2 秒ごとにトリガーされ、現在のセッションの統計情報を報告します。
public void onAliRtcStats(AliRtcEngine.AliRtcStats stats);パラメーター
|
パラメーター |
型 |
説明 |
|
stats |
セッションの統計情報です。 |
onAudioEffectFinished
このコールバックは、ローカルの効果音の再生が終了したときに呼び出されます。
void OnAudioEffectFinished(int soundId);パラメーター
|
パラメーター |
型 |
説明 |
|
soundId |
int |
ユーザーが効果音ファイルに割り当てた ID です。 |
onAudioFileInfo
オーディオファイル情報のコールバックです。
public void onAudioFileInfo(AliRtcEngine.AliRtcAudioFileInfo info, AliRtcEngine.AliRtcAudioAccompanyErrorCode errorCode);getAudioFileInfo を呼び出すと、このコールバックがトリガーされ、オーディオファイルの長さやエラーメッセージなどの情報が返されます。
パラメーター
|
パラメーター |
型 |
説明 |
|
Information |
AliRtcEngine.AliRtcAudioFileInfo |
ファイルパスや長さなどのオーディオファイル情報です。 |
|
errorCode |
AliRtcEngine.AliRtcAudioAccompanyErrorCode |
音声伴奏のエラーコードで、主にファイルのオープン失敗やデコード失敗を示します。 |
onMediaExtensionMsgReceived
このコールバックは、メディア拡張情報が受信されたときに呼び出されます。
public void onMediaExtensionMsgReceived(String uid, int payloadType, byte[]message);エンドポイントが sendMediaExtensionMsg を呼び出してメッセージを送信すると、他のエンドポイントはこのコールバックを通じてデータを受信します。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
ユーザー ID。メディア情報を送信するユーザーの ID です。 |
|
payloadType |
int |
ペイロードタイプです。`sendMediaExtensionMsg` は 5 を返します。`sendMediaExtensionMsgEx` は特定のタイプを返します。 |
|
Message |
byte[] |
メディア拡張情報です。 |
onFirstRemoteVideoFrameDrawn
このコールバックは、リモートユーザーからの最初の映像フレームがレンダリングされたときに呼び出されます。
public void onFirstRemoteVideoFrameDrawn(String uid,AliRtcVideoTrack videoTrack, int width, int height, int elapsed);このコールバックは、最初のリモート映像フレームのレンダリングを示します。ローカルユーザーがリモートユーザーから最初の映像フレームを正常に受信してレンダリングしたときにトリガーされます。このコールバックは、開発者がリモート映像リンクの確立時間を監視し、ネットワークとデバイスのパフォーマンスを評価し、ユーザーエクスペリエンスを最適化するのに役立ちます。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
リモートユーザーの ID です。 |
|
videoTrack |
受け入れる映像ストリームのタイプです。 | |
|
Width |
int |
フェッチした映像ストリームの幅です。 |
|
Height |
int |
フェッチした映像ストリームの高さです。 |
|
elapsed |
int |
ローカルユーザーがチャネルに参加してから、フェッチしたストリーム映像の最初のフレームが表示されるまでの合計遅延時間(ミリ秒)。 |
onFirstLocalVideoFrameDrawn
このコールバックは、プレビュー中に最初のローカル映像フレームがレンダリングされたときに呼び出されます。
public void onFirstLocalVideoFrameDrawn(int width, int height, int elapsed);このコールバックは、ローカルカメラが有効になり、最初の映像フレームがレンダリングされた後にトリガーされます。このコールバックを使用して、ローカル映像プレビューのレンダリング速度を監視し、デバイスのパフォーマンスを評価し、「カメラ準備完了」メッセージの表示やプレビューレイアウトの調整など、ユーザーエクスペリエンスを最適化できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
width |
int |
ローカルプレビュー映像の幅です。 |
|
height |
int |
ローカル映像プレビューの高さです。 |
|
Elapsed |
int |
ローカルユーザーがチャネルに参加してから、ローカルプレビューに最初のフレームが表示されるまでの合計経過時間(ミリ秒)。 |
onFirstVideoFrameReceived
このコールバックは、リモートユーザーから最初の映像フレームが受信されたときに呼び出されます。
public void onFirstVideoFrameReceived(String uid, AliRtcVideoTrack videoTrack, int timeCost);このコールバックを使用して、映像リンクの確立時間を監視し、ネットワーク品質を評価し、ユーザーエクスペリエンスを最適化できます。例えば、「映像準備完了」メッセージを表示したり、再生ロジックを調整したりできます。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
リモートユーザーの ID です。 |
|
videoTrack |
受け入れる映像ストリームのタイプです。 | |
|
timeCost |
int |
最初の映像パケットを送信する時間。ユーザーが会議に参加してからミリ秒単位で測定されます。 |
onFirstVideoPacketSent
このコールバックは、最初の映像パケットが送信されたときに呼び出されます。
public void onFirstVideoPacketSent(String uid, AliRtcVideoTrack videoTrack, int timeCost);このコールバックは、ローカルユーザーが最初の映像データパケットを正常に送信したときにトリガーされます。開発者は、映像送信リンクの確立速度を監視し、ローカルデバイスのパフォーマンスを評価し、「映像送信済み」などの表示やキャプチャポリシーの調整など、ユーザーエクスペリエンスを最適化するのに役立ちます。
パラメーター
|
パラメーター |
型 |
説明 |
|
UID |
String |
リモートユーザーの ID です。 |
|
videoTrack |
映像ストリームタイプを受け入れます。 | |
|
timeCost |
int |
会議に参加してから最初の映像パケットを送信するまでの時間です。これはミリ秒単位で測定されます。 |
onFirstAudioPacketSent
このコールバックは、ローカルユーザーが最初の音声パケットを正常に送信したときに呼び出されます。
public void onFirstAudioPacketSent(String uid, AliRtcAudioTrack track, int timeCost);開発者はこのコールバックを使用して、音声送信リンクがどのくらい速く確立されるかを監視し、ローカルデバイスとシステムのパフォーマンスを評価し、ユーザーエクスペリエンスを最適化できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
UID |
String |
リモートユーザー ID です。 |
|
track |
音声ストリームタイプを受け入れます。 | |
|
timeCost |
int |
送信時間:セッションに参加してから最初の音声パケットが送信されるまでの経過時間です。単位:ミリ秒。 |
onFirstVideoPacketReceived
このコールバックは、最初の映像パケットが受信されたときに呼び出されます。
public void onFirstVideoPacketReceived(String uid, AliRtcVideoTrack videoTrack, int timeCost)このコールバックは、最初のリモート映像パケットの受信を示します。ローカルユーザーがリモートユーザーから最初の映像パケットを受信したときにトリガーされます。開発者はこのコールバックを使用して、映像リンクの確立速度を監視したり、再生ストリームの UI コンポーネントを更新したりできます。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
リモートユーザー ID です。 |
|
video track |
受け入れる映像ストリームタイプです。 | |
|
timeCost |
int |
ローカルユーザーがチャネルに参加してから最初の映像パッケージを受信するまでの時間(ミリ秒)。 |
onFirstAudioPacketReceived
このコールバックは、リモートユーザーから最初の音声パケットが受信されたときにトリガーされます。
public void onFirstAudioPacketReceived(String uid, AliRtcAudioTrack track, int timeCost)このコールバックは、リモートユーザーから最初の音声データパケットが受信されたときにローカルユーザーに通知するためにトリガーされます。開発者は、音声リンクの確立速度を監視し、ネットワーク品質を評価し、「音声接続済み」プロンプトの表示や再生ポリシーの調整など、ユーザーエクスペリエンスを最適化するのに役立ちます。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
リモートユーザーの ID です。 |
|
track |
音声ストリームタイプを受け入れます。 | |
|
timeCost |
int |
ローカルユーザーがチャネルに参加してから最初の音声パケットを受信するまでの時間(ミリ秒)。 |
onFirstRemoteAudioDecoded
このコールバックは、リモートユーザーからの最初の音声フレームがデコードされ、再生準備が整ったときに呼び出されます。
public void onFirstRemoteAudioDecoded(String uid, AliRtcAudioTrack track, int elapsed)このコールバックは、リモート音声ストリームが準備完了であることを示します。このコールバックを使用して、最初のフレームまでの時間を計算したり、UI コンポーネントを更新したりできます。
パラメーター
|
パラメーター |
型 |
説明 |
|
UID |
String |
リモートユーザー ID です。 |
|
track |
音声ストリームタイプです。 | |
|
elapsed |
int |
ローカルユーザーがチャネルに参加してから最初の音声フレームがデコードされるまでの遅延時間(ミリ秒)。 |
onAudioAccompanyStateChanged
このコールバックは、ローカルの音声伴奏の再生状態が変更されたときに呼び出されます。
public void onAudioAccompanyStateChanged(AliRtcEngine.AliRtcAudioAccompanyStateCode playState, AliRtcEngine.AliRtcAudioAccompanyErrorCode errorCode);このコールバックは、ローカルの伴奏再生状態の変更を報告します。開発者に現在の伴奏再生状態(開始、一時停止、終了など)と関連するエラーコードをリアルタイムで通知します。開発者はこのコールバックを使用して、再生の進行状況を監視し、例外を処理し、ユーザーインターフェイスを更新できます。
パラメーター
パラメーター |
型 |
説明 |
|
playState |
AliRtcEngine.AliRtcAudioAccompanyStateCode |
伴奏の再生ステータスです。 |
|
errorCode |
AliRtcEngine.AliRtcAudioAccompanyErrorCode |
再生エラーコードは、主にファイルのオープンまたはデコード時のエラーを示します。 |
onRemoteAudioAccompanyStarted
リモートユーザーが音声伴奏の再生を開始したときに呼び出されるコールバックです。
public void onRemoteAudioAccompanyStarted(String uid);このコールバックは、リモートユーザーが背景音楽などの音声伴奏の再生を開始したときにローカルアプリケーションに通知します。このコールバックを使用して、UI の更新、ボリュームの調整、他のユーザーへの通知など、初期化ロジックを実行できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
伴奏再生を開始したリモートユーザーの ID です。 |
onRemoteAudioAccompanyFinished
このコールバックは、リモートユーザーが音声伴奏の再生を終了したときに呼び出されます。
public void onRemoteAudioAccompanyFinished(String uid);リモートユーザーの音声伴奏(背景音楽や効果音など)の再生が終了したときにローカルアプリケーションに通知します。開発者はこのコールバックを使用して、ユーザーへのプロンプト表示やステータスの更新など、後続のロジックを実行できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
バッキングトラックの再生が終了したときのリモートユーザーの ID です。 |
onVideoResolutionChanged
リモート映像の解像度が変更されました。
public void onVideoResolutionChanged(String uid,AliRtcVideoTrack videoTrack, int width, int height);このコールバックは、リモートユーザーの映像ストリームの解像度の変更を通知します。リモートユーザーがカメラを切り替えたり、映像の鮮明度を調整したり、ネットワークの変動により解像度が低下したりした場合にトリガーされます。このコールバックを使用して、UI レイアウト、キャンバスのスケーリング、パフォーマンスの最適化など、ローカル映像のレンダリングロジックを動的に調整できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
解像度が変更されたリモートユーザー ID です。 |
|
videoTrack |
カメラストリームや画面ストリームなどの映像ストリームのタイプです。 | |
|
width |
int |
新しい映像解像度の幅です。 |
|
height |
int |
新しい映像解像度の高さです。 |
onRtcLocalVideoStats
ローカルで配信された映像ストリームの統計情報を提供するコールバックです。
public void onRtcLocalVideoStats(AliRtcEngine.AliRtcLocalVideoStats aliRtcStats);このコールバックは、ビットレートやフレームレートなど、ローカル映像ストリームのエンコーディングと送信ステータスに関するリアルタイム情報を提供します。これを使用して、映像品質を監視したり、パフォーマンスの問題を診断したり、エンコーディングパラメーターを動的に調整したりできます。
パラメーター
|
パラメーター |
型 |
説明 |
|
aliRtcStats |
AliRtcEngine.AliRtcLocalVideoStats |
配信ビットレートやフレームレートなど、ローカル映像プッシュのパフォーマンス統計です。詳細については、AliRtcLocalVideoStats をご参照ください。 |
onRtcRemoteVideoStats
このコールバックは、リモートでサブスクライブされた映像ストリームの統計情報を提供します。
public void onRtcRemoteVideoStats(AliRtcEngine.AliRtcRemoteVideoStats aliRtcStats);このコールバックは、リモート映像ストリームのリアルタイムデータ統計を提供します。ビットレート、フレームレート、解像度、遅延、コマ落ちなど、リモート映像のエンコーディングと送信ステータスに関するリアルタイム情報を取得します。開発者はこのコールバックを使用して、映像品質を監視したり、パフォーマンスの問題を診断したり、デコーディングパラメーターを動的に調整したりできます。
パラメーター
|
パラメーター |
型 |
説明 |
|
aliRtcStats |
AliRtcEngine.AliRtcRemoteVideoStats |
リモートユーザー ID、映像解像度、フレームレート、コマ落ち回数、その他の情報を含む、リモート映像のパフォーマンス統計をフェッチします。詳細については、AliRtcRemoteVideoStats をご参照ください。 |
onRtcRemoteAudioStats
サブスクライブされたリモート音声ストリームのデータ統計です。
public void onRtcRemoteAudioStats(AliRtcEngine.AliRtcRemoteAudioStats aliRtcStats);このコールバックは、音質、パケット損失率、遅延など、リモート音声ストリームに関するリアルタイムの統計情報を提供します。このコールバックを使用して、リモート音声接続の安定性を監視し、ネットワークの問題を診断し、ノイズリダクションの有効化やユーザーにネットワークの最適化を促すなど、再生ポリシーを動的に調整できます。
パラメーター
|
パラメーター |
型 | 説明 |
|
aliRtcStats |
AliRtcEngine.AliRtcRemoteAudioStats |
リモート音声の統計情報をフェッチします。これらの統計情報には、リモートユーザー ID、音質、パケット損失率、コマ落ち回数、遅延が含まれます。詳細については、AliRtcRemoteAudioStats をご参照ください。 |
onRtcLocalAudioStats
配信されたローカル音声ストリームの統計情報を報告します。
public void onRtcLocalAudioStats(AliRtcEngine.AliRtcLocalAudioStats aliRtcStats);このコールバックは、ビットレート、サンプルレート、サウンドチャンネル数、パケット損失率など、ローカル音声ストリームのアップストリーミングに関するリアルタイムの統計情報を提供します。このコールバックを使用して、ローカル音声リンクの安定性を監視し、パフォーマンスの問題を診断し、ビットレートの削減など、エンコーディングポリシーを動的に調整できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
aliRtcStats |
AliRtcEngine.AliRtcLocalAudioStats |
ローカル音声プッシュのパフォーマンス統計です。音声ストリームタイプ、送信ビットレート、送信サンプルレート、サウンドチャンネル数などが含まれます。詳細については、AliRtcLocalAudioStats をご参照ください。 |
onAudioFocusChange
オーディオフォーカスが変更されたときに呼び出されるコールバックです(Android のみ)。
public void onAudioFocusChange(int focusChange);オーディオフォーカスの変更に関する通知です。デフォルトでは、SDK は自動的にオーディオフォーカスを要求します。アプリケーションが再度オーディオフォーカスを使用する必要がある場合は、SDK がオーディオフォーカスの変更時にトリガーする(コールバック)で再度要求する必要があります。
通知タイミング
このコールバックは、ヘッドフォンの抜き差し、別の Bluetooth デバイスへの切り替え、イヤホンとスピーカーの切り替えなど、オーディオ出力デバイスが変更されたときにトリガーされます。
パラメーター
|
パラメーター |
型 |
説明 |
|
focusChange |
int |
フォーカス状態のタイプです。値は `android.media.AudioManager` で定義されているフォーカスタイプと同じです。 |
onAudioRouteChanged
このコールバックは、オーディオルーティングが変更されたときに呼び出されます(Android および iOS のみ)。
public void onAudioRouteChanged(AliRtcEngine.AliRtcAudioRouteType routing);このコールバックは、ヘッドフォンの接続やスピーカーへの出力切り替えなど、デバイスの音声出力パスの変更を通知します。このコールバックを使用して、マイクモードの切り替えや音量の調整など、音声出力ポリシーを動的に調整できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
routing |
AliRtcEngine.AliRtcAudioRouteType |
現在のオーディオルートです。 |
onRemoteUserSubscribedDataChannel
このコールバックは、リモートユーザーがデータチャネルをサブスクライブしたときに呼び出されます。
public void onRemoteUserSubscribedDataChannel(String uid);このコールバックは、リモートユーザーがデータチャネルをサブスクライブしたときにトリガーされます。特定のリモートユーザーがカスタムメッセージを受信する準備ができたことを通知します。この時点で、sendDataChannelMsg を安全に呼び出して、そのユーザーにデータを送信できます。このコールバックは、ターゲットユーザーがデータチャネルをサブスクライブする前にメッセージを送信した場合に発生するパケット損失や失敗を防ぐため、信頼性の高いメッセージ配信を保証するための重要なメカニズムです。
このコールバックは AI リアルタイムインタラクションシナリオでのみトリガーされます。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
リモートユーザーの ID です。 |
onDataChannelMessage
このコールバックは、データチャネル経由でカスタムメッセージが受信されたときに呼び出されます。
public void onDataChannelMessage(String uid, AliRtcEngine.AliRtcDataChannelMsg msg);ARTC SDK を使用すると、音声・映像データとともにカスタムのリアルタイムメッセージを送受信できます。このコールバックは、データチャネルからカスタムメッセージを受信するために使用されます。詳細については、「カスタムメッセージの送受信」をご参照ください。
インタラクティブシナリオでは、ストリーマーはメッセージを送受信できますが、視聴者はメッセージの受信のみ可能です。
この機能はデフォルトで無効になっています。有効にするには、DPI エンジンを作成した後、
setParameterを呼び出して{"data":{"enablePubDataChannel":true,"enableSubDataChannel":true}}を設定します。データチャネル機能を使用するには、送信者がアクティブな音声または映像ストリームを持っている必要があります。シナリオにアクティブな音声または映像ストリームが含まれていることを確認してください。
トリガー時間
送信者が sendDataChannelMsg を呼び出してカスタムメッセージを送信した後、データチャネル機能が有効になっている場合、受信者側でこのコールバックがトリガーされます。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
送信者のユーザー ID です。 |
|
msg |
AliRtcEngine.AliRtcDataChannelMsg |
受信したカスタムメッセージです。 |
onAudioVolume
サブスクライブされた音声の音量、音声ステータス、および UID です。
public void onAudioVolume(List<AliRtcEngine.AliRtcAudioVolume> speakers, int totalVolume);このコールバックはデフォルトで無効になっています。<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#dbc70a301dtjz" id="d1cae8ec5dc2w">enableAudioVolumeIndication</a> インターフェイスを呼び出すことで有効にできます。有効にした後、チャネル内でユーザーがストリーミングしている場合、SDK はチャネルに参加した後、<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#dbc70a301dtjz" id="e5e0d330423ax">enableAudioVolumeIndication</a> で指定された間隔でこのコールバックをトリガーします。コールバックは、ローカルおよびリモートのスピーカーの音量情報を返します。
パラメーター
|
パラメーター |
型 |
説明 |
|
speakers |
List<AliRtcEngine.AliRtcAudioVolume> |
各ユーザーの音量情報を含む配列で、UID、音声ステータス、音量が含まれます。
|
|
totalVolume |
int |
オーディオミキシング後の音量です。有効値:0 から 255。 ローカルユーザーへのコールバックでは、totalVolume はローカルユーザーの音声をミキシングした後の音量です。リモートユーザーへのコールバックでは、totalVolume はすべてのスピーカーからの音声をミキシングした後の音量です。 |
onActiveSpeaker
現在のスピーカーをサブスクライブできます。
public void OnActiveSpeaker(String uid);<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#dbc70a301dtjz" id="699faf2d18k2x">enableAudioVolumeIndication</a> を正常に呼び出した後、SDK はリモートユーザーを継続的に監視し、最も音量の大きいユーザーを特定します。SDK は、各リモートユーザーが最も音量が大きいと特定された回数をカウントします。現在の期間内で、累積カウントが最も高いリモートユーザーが最もアクティブなユーザーと見なされます。
トリガー条件
このコールバックは、チャネルに 2 人以上のユーザーがいて、少なくとも 1 人のリモートユーザーがアクティブな場合にトリガーされます。SDK は、最もアクティブなリモートユーザーの UID を報告します。
最もアクティブなリモートユーザーが変わらない場合、SDK は
onActiveSpeakerコールバックを再度トリガーしません。最もアクティブなリモートユーザーが変わった場合、SDK はこのコールバックをトリガーし、新しい最もアクティブなリモートユーザーの UID を報告します。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
話しているユーザーの ID です。値が 0 の場合はローカルユーザーを示します。このパラメーターは、現在の時間セグメントで最も音量が大きいユーザーの ID を返し、瞬間的に最も音量が大きいユーザーの ID ではありません。 |
OnTestAudioVolume
通話前検出および音量情報のコールバックです。
public void OnTestAudioVolume(int volume);このコールバックは、通話前テスト中に音声キャプチャデバイスの音量を報告し、ローカルの音声キャプチャデバイスが正常に機能していることを確認できるようにします。startAudioCaptureTest を呼び出すとトリガーされます。
パラメーター
|
パラメーター |
型 |
説明 |
|
Volume |
int |
ボリューム値です。 |
onCapturedAudioFrame
キャプチャされた生の音声データが利用可能になったときに呼び出されるコールバックです。
boolean onCapturedAudioFrame(AliRtcAudioFrame frame);このコールバックは、現在のデバイスでキャプチャされた生の音声データを提供します。デフォルトでは無効になっています。この音声データを受信するには:
enableAudioFrameObserver(true, audioSource, config) を呼び出すことで、このコールバックを有効にできます。audioSource パラメーターを指定する必要があります。config パラメーターは、音声データのサンプルレート、サウンドチャンネル数、読み取り/書き込みモードを指定します。
registerAudioFrameObserver を呼び出して、音声データ受信オブジェクトを登録します。
このコールバックのサンプルレート、サウンドチャンネル数、読み取り/書き込みモードを設定できます。
制限事項
このコールバック関数内で時間のかかる操作を実行しないでください。音声の異常を引き起こす可能性があります。
パラメーター
|
パラメーター |
型 |
注記 |
|
frame |
音声データ。 |
戻り値の説明
true:成功。
false:失敗。
onProcessCapturedAudioFrame
3A 処理後に音声データが利用可能になったときに呼び出されるコールバックです。
boolean onProcessCapturedAudioFrame(AliRtcAudioFrame frame);このコールバックは、3A 処理後の音声データを取得します。デフォルトでは無効になっています。この音声データを取得するには:
enableAudioFrameObserver(true, audioSource, config) を呼び出して
audioSourceパラメーターを指定することで、このコールバックを有効にできます。また、configパラメーターを使用して、音声データのサンプルレート、サウンドチャンネル数、読み取り/書き込みモードを設定することもできます。registerAudioFrameObserver を呼び出して、音声データ受信オブジェクトを登録できます。
このメソッドを使用して、サンプルレート、サウンドチャンネル数、読み取り/書き込みモードを設定できます。
呼び出し制限
このコールバック関数内で時間のかかる操作を実行しないでください。音声の異常を引き起こす可能性があります。
このメソッドはチャネル参加前または参加後に呼び出すことができます。
|
パラメーター |
型 |
注記 |
|
frame |
音声データ。 |
戻り値の説明
True は成功を示します。
false。失敗しました。
onPublishAudioFrame
音声ストリームのアップストリーミングコールバック
boolean onPublishAudioFrame(AliRtcAudioFrame frame);このコールバックは、アップストリーミング用の音声データを取得します。デフォルトでは無効になっています。この音声データを取得するには:
enableAudioFrameObserver(true, audioSource, config) の `audioSource` を使用してこのコールバックを有効にできます。さらに、`config` パラメーターを使用すると、音声データの取得に関するサンプルレートやサウンドチャンネル数、読み取り/書き込みモードなどを設定できます。
registerAudioFrameObserver を呼び出して、音声データ受信オブジェクトを登録します。
このメソッドではサンプルレートとサウンドチャンネル数を設定できますが、モードは読み取り専用にしか設定できません。
制限事項
このコールバック関数内で時間のかかる操作を実行しないでください。音声の問題を引き起こす可能性があります。
パラメーター
|
パラメーター |
型 |
注記 |
|
Frame |
音声データ。 |
戻り値の説明
true:操作は成功しました。
false:失敗しました。
onPlaybackAudioFrame
音声データが再生準備完了になったときに呼び出されるコールバックです。
boolean onPlaybackAudioFrame(AliRtcAudioFrame frame);このコールバックは再生用の音声データを取得します。デフォルトでは無効になっています。この音声データを取得するには:
現在のコールバックを有効にするには、enableAudioFrameObserver(true, audioSource, config) を呼び出す際に
audioSourceパラメーターを設定します。また、configパラメーターを使用して、取得する音声データのサンプルレート、サウンドチャンネル数、読み取り/書き込みモードを設定することもできます。registerAudioFrameObserver を呼び出して、音声データ受信オブジェクトを登録します。
このメソッドは、サンプルレート、サウンドチャンネル数、読み取り/書き込みモードの設定をサポートしています。
制限事項
このコールバック関数内で時間のかかる操作を実行しないでください。音声の異常を引き起こす可能性があります。
パラメーター
|
パラメーター |
型 |
注記 |
|
frame |
AliRtcAudioFrame |
音声データ。 |
戻り値の説明
true:操作は成功しました。
False は失敗を示します。
onRemoteUserAudioFrame
リモートユーザーからの音声データがストリームフェッチングに利用可能になったときに呼び出されるコールバックです。
boolean onRemoteUserAudioFrame(String uid, AliRtcAudioFrame frame);このコールバックは、ストリームフェッチング中に指定されたユーザーのリモート音声データを取得します。デフォルトでは無効になっています。この音声データを取得するには:
enableAudioFrameObserver(true, audioSource, config) の
audioSourceパラメーターを使用して、現在のコールバックを有効にできます。また、configパラメーターを使用して、取得する音声データのサンプルレート、サウンドチャンネル数、読み取り/書き込みモードなどのプロパティを指定することもできます。registerAudioFrameObserver を呼び出して、音声フレームオブザーバーを登録できます。
このメソッドはサンプルレートやサウンドチャンネル数の設定をサポートしていませんが、読み取り/書き込みモードは設定できます。
制限事項
音声の異常を避けるため、このコールバック関数内で時間のかかる操作を実行しないでください。
パラメーターの説明
|
パラメーター |
型 |
注記 |
|
uid |
String |
ユーザー ID。 |
|
Frame |
音声データ。 |
戻り値の説明
true:操作は成功しました。
false:失敗を示します。
OnDestroyCompletion
SDK がエンジン破棄完了時に呼び出すコールバックです。
void OnDestroyCompletion();このコールバックは、SDK エンジンインスタンスが破棄され、新しいインスタンスを作成できることを示します。
トリガー時間
このコールバックは、destroy[2/2] を呼び出し、DPI エンジンが破棄された後にトリガーされます。
onTextureCreate
このコールバックは、OpenGL コンテキストが作成されたときに呼び出されます。
void onTextureCreate(long context);このコールバックは、SDK が内部的に OpenGL コンテキストを作成したときにトリガーされます。
トリガー条件
このコールバックは、SDK が内部的に OpenGL コンテキストを作成したときにトリガーされます。このコールバックを使用して、関連リソースを初期化できます。
パラメーター
|
パラメーター |
型 |
注記 |
|
Context |
long |
OpenGL コンテキストです。 |
onTextureUpdate
OpenGL テクスチャが更新されたときに呼び出されるコールバックです。
int onTextureUpdate(int textureId, int width, int height, AliRtcVideoSample videoSample);トリガー条件
このコールバックは、各映像フレームが OpenGL テクスチャにアップロードされた後にトリガーされます。外部 OpenGL テクスチャデータオブザーバーを登録すると、このコールバックでテクスチャを処理し、処理されたテクスチャ ID を返すことができます。
パラメーター
|
パラメーター |
型 |
注記 |
|
textureId |
int |
OpenGL コンテキストです。 |
|
width |
int |
映像の幅です。 |
|
Height |
int |
映像の高さです。 |
|
videoSample |
映像フレームデータです。 |
戻り値の説明
新しいテクスチャ ID または元のテクスチャ ID を返します。返された値がゼロ未満の場合、テクスチャ ID は変更されていないと見なされます。
onTextureDestroy
void onTextureDestroy();トリガー条件
このコールバックは、SDK が内部的に OpenGL コンテキストを破棄したときにトリガーされます。このコールバックを使用して、関連リソースをクリーンアップする必要があります。
onLocalVideoSample
ローカルでキャプチャされた映像データが利用可能になったときに呼び出されるコールバックです。
public boolean onLocalVideoSample(AliRtcVideoSourceType sourceType, AliRtcVideoSample videoSample);このコールバックは、ローカルカメラでキャプチャされた YUV データなどの生の映像フレームを取得します。このコールバックを使用して、フィルター、ウォーターマークの追加、トランスコーディングなどのカスタム映像処理ロジックを実装できます。処理された映像フレームを後続のエンコーディングまたはレンダリングのために SDK に送信するには、true を返します。
トリガー時間
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#927fcde6fenlk" id="22a5a6bd53c77">registerVideoSampleObserver</a> を呼び出して映像データオブザーバーを登録した後、SDK は対応する映像フレームをキャプチャします。
パラメーター
|
パラメーター |
型 |
説明 |
|
sourceType |
映像ソースタイプです。 | |
|
videoSample |
映像データです。 |
応答の説明
true:データを SDK に書き戻します。(これはデフォルトの動作です。AliRtcVideoSample.data を変更した場合は書き戻しが必要です。)
false:データは SDK に書き戻されません。このオプションは、AliRtcVideoSample.dataFrameY、AliRtcVideoSample.dataFrameU、または AliRtcVideoSample.dataFrameV を直接操作する必要がある場合に使用します。
onPreEncodeVideoSample
サブスクライブされたローカルのエンコード前映像データのコールバックです。
public boolean onPreEncodeVideoSample(AliRtcVideoSourceType sourceType, AliRtcVideoSample videoRawData);このコールバックは、SDK が映像フレームをエンコードする前に、YUV 形式などの生のローカル映像データを取得します。これにより、ウォーターマークの追加、色の調整、トランスコーディングなどのカスタム処理ロジックを実装し、処理されたデータをエンコーディングのために SDK に返すかどうかを決定できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
sourceType |
映像ストリームタイプ | |
|
videoRawData |
生の映像データ |
戻り値の説明
true:AliRtcVideoSample.data を操作する場合、データを SDK に書き戻す必要があります。これはデフォルト設定です。
false:データを SDK に書き戻しません。(AliRtcVideoSample.dataFrameY、AliRtcVideoSample.dataFrameU、AliRtcVideoSample.dataFrameV を直接操作したい場合に使用します。)
onRemoteVideoSample
サブスクライブされたリモート映像データのコールバックです。
public boolean onRemoteVideoSample(String callId,AliRtcVideoSourceType sourceType, AliRtcVideoSample videoSample);このコールバックは、サブスクライブされたリモート映像データを受信します。リモートユーザーからの生の映像フレームデータ(YUV 形式など)を取得します。開発者はこのコールバックを使用して、カスタム処理ロジック(フィルター、ウォーターマークの追加、トランスコーディングなど)を実装し、処理されたデータを後続のレンダリングのために SDK に返すかどうかを決定できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
callId |
String |
ユーザー ID |
|
sourceType |
映像ストリームタイプ | |
|
videoSample |
映像の生データ |
戻り値の説明
true:データは SDK に書き戻されます。これはデフォルト設定であり、AliRtcVideoSample.data を操作する場合に必要です。
`false` の場合、データは SDK に書き戻す必要はありません。(AliRtcVideoSample.dataFrameY、AliRtcVideoSample.dataFrameU、または AliRtcVideoSample.dataFrameV を直接操作する場合に使用します。)
onGetVideoFormatPreference
映像出力フォーマット
public AliRtcVideoFormat onGetVideoFormatPreference();応答の説明
希望する映像出力フォーマットです。
onGetObservedFramePosition
映像データ出力内容
public int onGetObservedFramePosition();このコールバックは、映像データ出力の内容またはタイプを取得します。開発者はこのコールバックを使用して、キャプチャ後、エンコード前、ストリームフェッチング後など、SDK 出力映像フレームの処理段階を取得できます。
戻り値の説明
期待される映像出力内容は、キャプチャされたデータ、ストリームフェッチングされたデータ、およびエンコード前のデータを示す AliRtcVideoObserPosition の列挙値です。
onPublishLiveStreamStateChanged
このコールバックは、中継ライブストリームのステータスが変更されたときに呼び出されます。
public void onPublishLiveStreamStateChanged(String streamUrl, AliRtcLiveTranscodingState state, AliEngineLiveTranscodingErrorCode errorCode);パラメーター
|
パラメーター |
型 |
説明 |
|
streamUrl |
String |
アップストリーミング URL です。 |
|
state |
バイパスライブストリーミングのステータスです。 | |
|
errorCode |
エラーコードです。 |
onPublishTaskStateChanged
中継タスクのステータスが変更されたときに呼び出されます。
public void onPublishTaskStateChanged(String streamUrl, AliRtcTrascodingPublishTaskStatus state);パラメーター
|
パラメーター |
型 |
説明 |
|
streamUrl |
String |
アップストリーミング URL です。 |
|
state |
中継ライブストリーミングタスクのステータスです。 |
onNetworkQualityChanged
ネットワーク品質が変更されたときに呼び出されるコールバックです。
public void onNetworkQualityChanged(String uid, AliRtcNetworkQuality upQuality, AliRtcNetworkQuality downQuality);パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
ユーザー ID。空の値は、ローカルユーザーのアップストリームおよびダウンストリームネットワークステータスを示します。 |
|
upQuality |
アップストリームネットワークステータスです。 | |
|
downQuality |
ダウンストリームネットワーク品質です。 |
onNetworkQualityProbeTest
ネットワーク品質テスト開始後約 3 秒で呼び出されるコールバックです。
public void onNetworkQualityProbeTest(AliRtcNetworkQuality quality){}パラメーター
|
パラメーター |
型 |
説明 |
|
quality |
ネットワーク品質です。 |
onNetworkQualityProbeTestResult
ネットワーク品質テスト結果を報告するコールバックで、テスト開始後約 30 秒で呼び出されます。
public void onNetworkQualityProbeTestResult(int code, AliRtcEngine.AlirtcNetworkQualityProbeResult result){}パラメーター
|
パラメーター |
型 |
説明 |
|
code |
int |
プローブが成功した場合の戻り値は 0 であり、ネットワーク状態が悪いため接続が切断された場合は -1 です。 |
|
result |
ネットワーク品質です。 |
onSnapshotComplete
スクリーンショット操作完了時に呼び出されるコールバックです。
public void onSnapshotComplete(String userId, AliRtcVideoTrack trackType, Bitmap bitmap, boolean success)このコールバックは、スクリーンショットの結果と詳細を提供します。
パラメーター
|
パラメーター |
型 |
説明 |
|
userId |
String |
ユーザー ID。 |
|
trackType |
スクリーンショット用の映像ストリームのタイプです。 | |
|
bitmap |
Bitmap |
スクリーンショットデータです。 |
|
Success |
boolean |
スクリーンショットが成功したかどうかを示します。 |
onScreenSharePublishStateChanged
画面共有ストリームのアップストリーミング変更に関するコールバックです。
public void onScreenSharePublishStateChanged(AliRtcEngine.AliRtcPublishState oldState , AliRtcEngine.AliRtcPublishState newState, int elapseSinceLastState, String channel)このコールバックは、画面共有ストリームのアップストリーミングステータスの変更通知を提供し、ステータス変更時にトリガーされます。
パラメーターの説明
|
パラメーター |
型 |
説明 |
|
oldState |
AliRtcEngine.AliRtcPublishState |
ストリームアップストリーミングステータスが変更される前の状態です。 |
|
newState |
AliRtcEngine.AliRtcPublishState |
変更後の新しいストリームアップストリーミングステータスです。 |
|
elapseSinceLastState |
int |
ステータス変更の時間間隔(ms)。 |
|
channel |
String |
現在のチャネル名です。 |
onScreenShareSubscribeStateChanged
画面共有ストリームのサブスクリプションステータスが変更されたときに呼び出されるコールバックです。
public void onScreenShareSubscribeStateChanged(String uid,
AliRtcEngine.AliRtcSubscribeState oldState,
AliRtcEngine.AliRtcSubscribeState newState,
int elapseSinceLastState, String channel);このコールバックは、現在のユーザーがリモートユーザーの画面共有ストリームのサブスクリプションステータスを変更したときにトリガーされます。
パラメーター
|
パラメーター |
型 |
説明 |
|
uid |
String |
リモートユーザー ID。 |
|
oldState |
AliRtcEngine.AliRtcSubscribeState |
以前のサブスクリプションステータスです。 |
|
newState |
AliRtcEngine.AliRtcSubscribeState |
現在のサブスクリプションステータスです。 |
|
elapseSinceLastState |
int |
ステート変更間隔(ミリ秒)。 |
|
channel |
String |
現在のチャネルです。 |
onOccurError
障害通知です。
public void onOccurError(int error, String message);ARTC SDK のグローバルエラー通知コールバックで、SDK 内部エンジンで重大なエラーが発生した際にアプリケーション層に通知します。開発者はこのコールバックを使用して、例外処理、ログ記録、またはユーザー通知のためにエラーコードとエラーメッセージを取得できます。
応答の説明
|
パラメーター |
型 |
説明 |
|
Error |
int |
エラーの種類です。詳細については、エラーコード一覧をご参照ください。 |
|
message |
String |
エラーメッセージです。 |
OnLocalAudioStateChanged
ローカル音声デバイスの状態が変更されたときに呼び出されるコールバックです。
public void OnLocalAudioStateChanged(int state);このコールバックは、ローカル音声キャプチャデバイスの状態が変更されたときにトリガーされます。例えば、startAudioCapture を呼び出して音声キャプチャを開始したり、stopAudioCapture を呼び出して音声キャプチャを停止したりしたときなどです。
パラメーター
|
パラメーター |
型 |
説明 |
|
State |
int |
|
setParameter
カスタムパラメーターを構成します。
public abstract int setParameter(String param);パラメーター
|
パラメーター |
型 |
説明 |
|
param |
String |
カスタムパラメーターです。 |
getParameter
カスタムパラメーターを取得します。
public abstract String getParameter(String param);パラメーター
|
パラメーター |
型 |
説明 |
|
param |
String |
カスタムパラメーターです。 |
registerAudioVolumeObserver
ボリュームデータをエクスポートするために使用するオブジェクトを登録します。
public abstract void registerAudioVolumeObserver(AliRtcAudioVolumeObserver observer);このメソッドは、ボリュームデータをエクスポートするためのオブジェクトを登録します。登録解除には、unRegisterAudioVolumeObserver を呼び出します。
呼び出しタイミング
ボリューム情報を取得するには、
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#dbc70a301dtjz" id="85a734d2596vf">enableAudioVolumeIndication</a>を呼び出してコールバック頻度と平滑化係数を設定し、関連するデータを受け取るオブジェクトを登録するためにこの API を呼び出します。会議参加前に通話前音声デバイス検出を行うために
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#ae07dc986abf3" id="29e92857a5iv8">startAudioCaptureTest</a>を呼び出す場合、この API を呼び出し、<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#e375c31bdez6j" id="e5cb797b7cg5p">OnTestAudioVolume</a>コールバックを実装できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
observer |
音声ボリュームデータを受け取るオブジェクトです。 |
unRegisterAudioVolumeObserver
ボリュームデータをエクスポートするオブジェクトの登録を解除します。
public abstract void unRegisterAudioVolumeObserver();このメソッドは registerAudioVolumeObserver に対応しており、ボリュームデータをエクスポートする登録済みオブジェクトの登録を解除します。
呼び出しタイミング
以前に registerAudioVolumeObserver を使用して音声ボリュームオブザーバーを登録した場合、このメソッドを呼び出して登録を解除できます。
enableAudioFrameObserver
音声コールバックパラメーターを設定できます。
public abstract int enableAudioFrameObserver(boolean enable, AliRtcAudioSource audioSource, AliRtcAudioFrameObserverConfig config);このメソッドは、指定されたタイプの音声データコールバックを有効または無効にし、開発者がさまざまな生データおよびエンコード済みの音声データを取得できるようにします。デフォルトでは無効になっています。有効にするには、このメソッドを呼び出します。
この API を呼び出して対応する AliRtcAudioSource の音声データコールバックを有効にする場合、registerAudioFrameObserver メソッドを使用して、音声データを受信するオブジェクトを渡す必要があります。
呼び出しタイミング
必要に応じて音声データの取得を有効にする場合、このメソッドを呼び出せます。
パラメーター
|
パラメーター |
型 |
説明 |
|
enable |
boolean |
音声データコールバックを許可するかどうか。 |
|
audioSource |
コールバックデータソースのタイプには、キャプチャ後(0)、3A 処理後(1)、アップストリーミング(2)、再生(3)、アップストリーミングおよび再生ミキシング後(4)、フェッチされた音声データ(5)があります。 説明
| |
|
config |
サンプルレート、サウンドチャンネル数、コールバックの読み取り/書き込みモード(読み取り専用、書き込み専用、読み取り/書き込み)などの音声コールバックパラメーターです。これらのパラメーターを null に設定した場合、デフォルト値として 48000 Hz、1 チャンネル、読み取り専用が使用されます。 |
戻り値の説明
0:メソッド呼び出しは成功しました。
<0:メソッド呼び出しは失敗しました。
registerAudioFrameObserver
音声データコールバックを登録できます。
public abstract void registerAudioFrameObserver(AliRtcAudioFrameObserver observer);このメソッドは、音声コールバックデータを受信するオブジェクトを登録します。
呼び出しタイミング
onCapturedAudioFrame、onProcessCapturedAudioFrame、onPublishAudioFrame、onPlaybackAudioFrame、および onRemoteUserAudioFrame コールバックを通じて音声データを受信するには、このメソッドを呼び出して音声データ受信オブジェクトを提供する必要があります。受信者を登録解除するには、このメソッドを再度呼び出し、null を渡します。
呼び出し制限
特定の AliRtcAudioSource に対して enableAudioFrameObserver を呼び出してコールバックを有効にしない限り、オブザーバーはデータを取得できません。
パラメーターの説明
|
パラメーター |
型 |
説明 |
|
observer |
音声データコールバック受信オブジェクトのインスタンスです。null を渡すと、登録が解除されます。 |
registerVideoSampleObserver
映像データをエクスポートするオブジェクトを登録します。
public abstract void registerVideoSampleObserver(AliVideoObserver observer);このメソッドは、映像データをエクスポートするためのオブジェクトを登録します。unRegisterVideoSampleObserver メソッドを呼び出してオブジェクトの登録を解除できます。
呼び出しタイミング
生の映像データ(YUV や RGBA 形式など)を取得するには、このメソッドを呼び出して映像データオブザーバーを登録し、さまざまな段階で映像データを取得できます。AliRtcVideoObserver は映像データオブザーバークラスです。
関連コールバック
映像データ出力オブザーバーを正常に登録した後、SDK は AliRtcVideoObserver インターフェイスで実装したコールバックを各キャプチャフレームごとにトリガーします。必要なコールバックを実装できます:
onLocalVideoSample:ローカルでキャプチャされた映像データのコールバック。
onRemoteVideoSample:リモート映像データのコールバック。
onPreEncodeVideoSample:ローカルエンコード前の映像データのコールバック。
パラメーター
|
パラメーター |
型 |
説明 |
|
observer |
映像データの出力オブジェクトです。 |
戻り値の説明
AliVideoObserver コールバックは出力データを返します。
unRegisterVideoSampleObserver
映像データをエクスポートするために使用するオブジェクトの登録を解除します。
public abstract void unRegisterVideoSampleObserver();このインターフェイスは <a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#927fcde6fenlk" id="dcf635790da7v">registerVideoSampleObserver</a> インターフェイスに対応し、映像データ出力オブジェクトの登録を解除するために使用します。
registerLocalVideoTextureObserver
ローカルカメラトラックから OpenGL テクスチャデータをエクスポートするオブジェクトを登録します。
public abstract void registerLocalVideoTextureObserver(AliTextureObserver observer);生の映像データを取得するには、<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#927fcde6fenlk" id="4f1f5a423ch4j">registerVideoSampleObserver</a> API を呼び出して対応するコールバックを登録します。内部テクスチャデータを取得するには、この API を呼び出します。テクスチャオブザーバーの登録を解除するには、unRegisterLocalVideoTextureObserver API を呼び出します。
このメソッドはローカルカメラストリームからの映像にのみ適用されます。
関連コールバック
ローカルカメラストリームの OpenGL テクスチャデータオブザーバーを正常に登録した後、SDK は AliRtcTextureObserver インターフェイスで実装したコールバックを各キャプチャフレームごとにトリガーします。必要なコールバックを実装してください:
onTextureCreate:このコールバックは、SDK が OpenGL コンテキストを作成したときにトリガーされます。
onTextureUpdate:このコールバックは、各フレームの映像データが OpenGL テクスチャにアップロードされた後にトリガーされます。外部 OpenGL テクスチャデータオブザーバーを登録した場合、このコールバックでテクスチャを処理し、処理済みのテクスチャ ID を返すことができます。このコールバックの戻り値は有効なテクスチャ ID である必要があります。処理を行わない場合は、元の
textureIdパラメーターを返す必要があります。onTextureDestroy:このコールバックは、SDK の内部 OpenGL コンテキストが破棄されたときにトリガーされます。
パラメーター
|
パラメーター |
型 |
説明 |
|
observer |
OpenGL テクスチャデータオブザーバーです。 |
戻り値の説明
出力データは AliVideoObserver コールバックで返されます。
unRegisterLocalVideoTextureObserver
ローカルカメラトラックの OpenGL テクスチャデータオブザーバーの登録を解除します。
public abstract void unRegisterLocalVideoTextureObserver();このメソッドは、registerLocalVideoTextureObserver によって登録されたオブザーバーの登録を解除します。
snapshotVideo
映像スナップショット機能です。
public abstract int snapshotVideo(String userId, AliRtcVideoTrack trackType);このメソッドを呼び出して、指定されたユーザーの映像ストリームのスクリーンショットを取得できます。
制限事項
このメソッドは非同期です。戻り値が 0 の場合、呼び出しは成功したことを示しますが、スクリーンショットはまだ撮影されていません。
関連コールバック
このメソッドを正常に呼び出した後、onSnapshotComplete コールバックをリッスンして、成功ステータスおよびスクリーンショットの詳細を取得できます。
パラメーター
|
パラメーター |
型 |
説明 |
|
user ID |
String |
ユーザー ID。userId が null または空文字列("")の場合、ローカルユーザーのスクリーンショットが撮影されます。 |
|
trackType |
スクリーンショット用の映像ストリームのタイプです。サポートされる値:
|
戻り値の説明
0:メソッド呼び出しは成功したことを示します。スクリーンショットが成功したかどうかは、onSnapshotComplete コールバックで提供されます。
0 以外:呼び出しは失敗し、エラーコードを返します。
setLogDirPath
SDK ログファイルの保存パスを設定できます。
public static int setLogDirPath(String logDirPath);パラメーター
|
パラメーター |
型 |
説明 |
|
logDirPath |
String |
ログファイルの保存先の絶対パスです。デフォルトパスはアプリケーションディレクトリです。 |
戻り値の説明
値が 0 の場合、呼び出しが成功したことを示します。その他の値は失敗を示します。注記:このメソッドを呼び出すには、他の SDK メソッドを呼び出す前に設定する必要があります。これによりログの損失を回避できます。アプリケーションは、指定されたパスが存在し、書き込み可能であることを保証する必要があります。
setLogLevel
ログレベルを設定します。
public static void setLogLevel(AliRtcLogLevel logLevel);パラメーター
|
パラメーター |
型 |
説明 |
|
logLevel |
ログレベルです。 |
setDeviceOrientationMode
デバイスの向きを設定できます。
public abstract void setDeviceOrientationMode(AliRtcOrientationMode mode);このメソッドはデバイスの向きモードを設定し、映像の表示方法に影響を与えます。
制限事項
このメソッドは Android および iOS のみで利用可能です。
パラメーター
|
パラメーター |
型 |
説明 |
|
mode |
AliRtcOrientationMode |
デバイスの向きです。 |
戻り値の説明
なし。
requestAudioFocus
効果音のローカル再生ボリュームを設定します。
public abstract int requestAudioFocus();呼び出しタイミング
SDK は起動時に自動的にオーディオフォーカスを要求しますので、通常は手動で要求する必要はありません。ただし、abandonAudioFocus を呼び出した場合、この API を呼び出してオーディオフォーカスを再取得できます。
制限事項
Android のみ。
パラメーター
なし。
戻り値の説明
0:失敗を示します。
1:成功を示します。
abandonAudioFocus
オーディオフォーカスを解放します。
public abstract int abandonAudioFocus();呼び出しタイミング
SDK は破棄時にこのインターフェイスを自動的に呼び出してオーディオフォーカスを解放します。ただし、一部のシナリオでは、このインターフェイスを明示的に呼び出してオーディオフォーカスを解放する必要があります。オーディオフォーカスが解放されると、一部のデバイスでは音が出なくなるか、音量が低下することがあります。オーディオフォーカスを復元するには、requestAudioFocus を呼び出します。
呼び出し制限
Android のみ。
戻り値の説明
0:失敗。
1:成功。
getNetworkTime
現在のネットワーク時間を取得します。
public abstract long getNetworkTime();このメソッドは、NTP 校正および時刻オフセット調整後の現在のタイムスタンプ(ミリ秒単位)を返します。
呼び出しタイミング
マルチデバイス動作の同期を行う際には、現在の時刻を補正する基準として同期されたネットワーク時間を取得する必要があります。
戻り値の説明
現在の Network Time Protocol(NTP)による時刻(ミリ秒単位)です。
sendDataChannelMsg
データチャネルを介してカスタムメッセージを送信できます。
public abstract int sendDataChannelMsg(AliRtcDataChannelMsg Msg);ARTC SDK では、音声・映像データとともにリアルタイムでカスタムメッセージの送受信が可能です。たとえば、このインターフェイスを呼び出してリアルタイム制御命令、状態同期データ、その他のビジネスメッセージを送信できます。「カスタムメッセージの送受信」をご参照ください。
カスタムメッセージチャネルはデフォルトで無効になっています。この機能を使用するには、setParameter メソッドを呼び出して、
{"data":{"enablePubDataChannel":true,"enableSubDataChannel":true}}を設定してカスタムメッセージチャネルを有効化する必要があります。チャネル参加前または参加後に有効化できます。メッセージには、テキストなどの任意のデータを含めることができます。
ARTC DataChannel 機能は、アップストリーミング側が音声または映像ストリームをアップストリーミングしていることを前提としています。シナリオにアクティブな音声または映像ストリームが含まれていることを確認してください。
関連コールバック
送信者がカスタムメッセージチャネルを正常にオープンした後、この API を呼び出してカスタムメッセージを送信できます。受信者は onDataChannelMessage コールバックをリッスンすることで、これらのメッセージを取得できます。
制限事項
ストリーマーはメッセージの送受信が可能ですが、視聴者はメッセージの受信のみ可能です。
カスタムメッセージチャネルを有効にするには、setParameter を呼び出します。
データ送信には以下の制限があります:
最大ビットレート:30 KB/s。
最大パケットレート:1 秒あたり 60 パケット、最大パケットサイズ:1 KB。
パラメーター
|
パラメーター |
型 |
説明 |
|
Msg |
メッセージの内容です。 |
戻り値の説明
0:呼び出しは成功しました。
0 以外の値:呼び出しは失敗し、エラーコードを返します。
startScreenShare
この API はまもなく非推奨になります。新しい startScreenShare API の使用をお勧めします。
画面と音声ストリームの共有を開始できます。
public abstract int startScreenShare(Intent intent);パラメーター
|
名前 |
説明 |
|
intent |
画面共有を開始するために外部 Activity を提供できます。ただし、null を渡すことをお勧めします。 |
戻り値
値が 0 の場合、成功を示します。
その他の値は失敗を示します。
startScreenShare
この API は非推奨です。新しい startScreenShare API の使用をお勧めします。
このメソッドは画面共有を開始します。
public abstract int startScreenShare();戻り値
0:成功。
その他の値:失敗。
startScreenShare
画面のビデオストリームの共有を開始できます。
public abstract int startScreenShare(Intent intent, AliRtcScreenShareMode screenShareMode);パラメーター
|
名前 |
説明 |
|
intent |
画面共有を開始するために作成された外部 Activity です。外部 Activity が作成されていない場合は null を渡します。null を渡すことが推奨されます。 |
|
screenShareMode |
画面共有モードです。詳細については、「AliRtcScreenShareMode」をご参照ください。 |
戻り値
0:成功。
その他の値:失敗。
stopScreenShare
画面共有ストリーム(音声ストリームを含む)を停止します。
public abstract int stopScreenShare();戻り値
値が 0 の場合、成功を示します。
その他の値は失敗を示します。
setAudioShareVolume
アップストリーミング時の音声ストリームのボリュームを設定できます。
public abstract int setAudioShareVolume(int volume);パラメーター
|
名前 |
説明 |
|
volume |
ボリューム。 有効値:0 から 100。デフォルト値:50。 |
戻り値
0:成功。
その他の値:失敗。
isScreenSharePublished
画面共有ストリームのアップストリーミングが進行中かどうかを確認します。
public abstract boolean isScreenSharePublished();戻り値
true:画面共有ストリームがアップストリーミングされています。
false:画面共有ストリームはアップストリーミングされていません。
setScreenShareEncoderConfiguration
画面共有ストリームの映像エンコーディングプロパティを設定します。
public abstract void setScreenShareEncoderConfiguration(AliRtcScreenShareEncoderConfiguration config);このメソッドは、解像度、フレームレート、ビットレート、映像の向きなどの画面共有ストリームの映像パラメーターを構成します。
すべてのパラメーターには対応する範囲制限があります。パラメーターを有効範囲外の値に設定した場合、SDK は自動的に値を範囲内に調整します。したがって、実際の構成は設定したものと異なる場合があります。
呼び出しタイミング
このメソッドはチャネル参加前または参加後に呼び出すことができます。セッションごとに画面共有ストリームの映像エンコーディングプロパティを一度だけ設定する場合は、チャネル参加前に呼び出すことを推奨します。
パラメーター
|
パラメーター |
型 |
説明 |
|
config |
解像度、フレームレート、ビットレート、映像の向きなどの事前定義された画面共有エンコーディングプロパティです。 |
setGlobalEnvironment
グローバル環境を設定します。
public int setGlobalEnvironment(GlobalEnv env);このメソッドは、SDK のグローバル動作環境を指定します。主にログ報告およびイベントトラッキングの送信先に影響します。
中国本土環境に設定した場合、ログおよびイベントトラッキングデータは中国本土のデータセンターに報告されます。
海外環境に設定した場合、関連データは海外のデータセンター(例:シンガポール)にルーティングされます。
呼び出しタイミング
アプリケーション初期化の早い段階(例:Application の onCreate() メソッド内)でこのメソッドを呼び出すことを推奨します。
呼び出し制限
-
これはグローバル設定です。1 回のみ呼び出してください。
-
複数回の呼び出しは以前の環境設定を上書きします。既存の接続やセッション状態に影響を与える可能性があるため、実行中の設定を動的に切り替えないでください。
呼び出し例
AlivcEnv.GlobalEnv env = ENV_DEFAULT; // 中国国外の環境が必要な場合は ENV_SEA を使用します。
AlivcBase.getEnvironmentManager().setGlobalEnvironment(env);パラメーター
|
パラメーター |
型 |
説明 |
|
env |
|
グローバル環境を指定します。サポートされる列挙値には以下があります: |
戻り値
戻り値は int 型の結果コードです:
-
0:成功を示します。 -
0以外:失敗を示します。