このトピックでは、Android 向けリアルタイム音声・映像 SDK の API の詳細について説明します。
目次
基本インターフェイス
API | 説明 |
AliRtcEngine インスタンスを作成します。このメソッドはメインスレッドで呼び出す必要があります。プライマリインスタンスは 1 つしか許可されません。 | |
シングルトンパターンを使用して AliRtcEngine インスタンスを作成できます。 | |
AliRtcEngine インスタンスを破棄します。 | |
AliRtcEngine インスタンスを破棄します。 | |
HTML5 互換モードを有効にするかどうかを指定します。 | |
現在のバージョンが HTML5 と互換性があるかどうかを確認します。 | |
ローカルユーザーの操作に対するコールバックイベントを受信するためのリスナーを設定します。 | |
リモートユーザーの操作に対する通知イベントを受信するためのリスナーを設定します。 | |
現在の SDK バージョンをクエリします。 |
チャンネル関連のメソッド
API | 説明 |
チャンネルモードを設定します。 | |
音声エンコーディングとシナリオモードを設定します。 | |
音声のみモードが有効になっているかどうかをクエリします。 | |
音声のみモードまたは音声・映像モードを有効にします。 | |
チャンネルに参加します。 | |
チャンネルに参加します。 | |
チャンネルに参加します。 | |
チャンネルを離脱します。 | |
チャンネルに参加しているかどうかを確認します。 | |
ユーザーロールを指定します。 | |
ユーザーロールをクエリします。 | |
認証情報を更新します。 | |
認証情報を更新します。 |
パブリッシュおよびサブスクリプション関連のメソッド
API | 説明 |
ローカルビデオストリームのパブリッシュを停止または再開します。デフォルトでは有効になっています。 | |
オーディオトラックがパブリッシュされているかどうかをクエリします。 | |
デフォルトでリモートユーザーのオーディオトラックをサブスクライブするかどうかを指定します。デフォルトでは、すべてのリモートオーディオトラックがサブスクライブされます。このメソッドはチャンネルに参加する前に呼び出すことを推奨します。 | |
特定のリモートユーザーのオーディオトラックをサブスクライブまたはサブスクライブを停止します。 | |
すべてのリモートユーザーのオーディオトラックをサブスクライブまたはサブスクライブを停止します。 | |
ローカルビデオトラックをパブリッシュするかどうかを指定します。SDK はデフォルトでパブリッシュします。 | |
ビデオトラックがパブリッシュされているかどうかをクエリします。 | |
デフォルトでリモートユーザーのビデオトラックをサブスクライブするかどうかを指定します。デフォルトでは、すべてのリモートビデオトラックがサブスクライブされます。このメソッドはチャンネルに参加する前に呼び出すことを推奨します。 | |
指定されたリモートビデオトラックをサブスクライブまたはサブスクライブを停止します。 | |
すべてのリモートビデオストリームの受信を停止または再開できます。 | |
特定のリモートユーザーのメディアストリームをサブスクライブまたはサブスクライブを停止します。音声と映像の両方のトラックが利用可能で、制御が必要な場合にこのメソッドを呼び出すことを推奨します。 | |
この API 操作は、特定のリモートユーザーのメディアストリームを停止または再開します。音声と映像の両方を制御する必要がある場合に、この API の使用を推奨します。 | |
チャンネル間で特定のリモートユーザーのメディアストリームを停止または再開します。 | |
チャンネル間のすべてのユーザーのストリームをサブスクライブまたはサブスクライブを停止します。 | |
取り込まれたオーディオストリームの再生ボリュームを調整します。 |
オーディオデバイス管理関連のメソッド
API | 説明 |
ローカル音声のパブリッシュを停止するかどうかを指定します。 | |
特定のリモートユーザーのオーディオトラックの再生を停止するかどうかを指定します。 | |
すべてのリモート音声再生を停止または再開します。 | |
音声キャプチャを開始します。 | |
音声キャプチャを開始します。 | |
音声キャプチャを停止します。 | |
デフォルトのオーディオ出力デバイスを設定します。 | |
オーディオ出力デバイスを受話器またはスピーカーに設定します。 | |
現在のオーディオ出力デバイスが受話器かスピーカーかをクエリします。 | |
音量検出を有効にします。 | |
インイヤーモニターを有効にします。 | |
インイヤーモニターの音量を設定します。 | |
オーディオ再生デバイスを開始します。 | |
オーディオ再生デバイスを停止します。 | |
ローカル再生音量を設定します。 | |
録音音量を設定します。 | |
オーディオファイルを再生します。 | |
オーディオファイルの再生を停止します。 | |
セッション開始前にオーディオキャプチャデバイスのテストを開始します。 | |
音声キャプチャ検出を無効にできます。 |
ボイスチェンジとリバーブ関連のメソッド
API | 説明 |
ボイスチェンジモードを設定します。 | |
ピッチ調整パラメーターを設定します。 | |
リバーブモードを設定します。 | |
リバーブエフェクトのタイプと特定のパラメーターを設定します。 | |
定義済みの音声美化エフェクトモードを設定します。 | |
オーディオイコライザー (EQ) パラメーターを設定して、特定の周波数帯のゲインを調整します。 |
カスタム音声入力
API | 説明 |
外部オーディオトラックを追加します。 | |
外部音声データをインポートします。 | |
外部音声のストリームアップストリーミングの音量を設定します。 | |
外部音声のストリームアップストリーミングの音量をクエリします。 | |
外部音声の再生音量を設定します。 | |
外部音声の再生音量をクエリします。 | |
外部オーディオトラックを削除します。 |
音楽伴奏
API | 説明 |
オーディオファイル情報をクエリします。 | |
音楽伴奏のミキシングを開始します。 | |
音楽伴奏のミキシングを停止します。 | |
ローカル再生とストリームアップストリーミングの音量を含む伴奏音量を設定します。 | |
伴奏のストリームアップストリーミング音量を設定します。 | |
伴奏のストリームアップストリーミング音量をクエリします。 | |
伴奏のローカル再生音量を設定します。 | |
伴奏のローカル再生音量をクエリします。 | |
音楽伴奏のミキシングを一時停止します。 | |
音楽伴奏のミキシングを再開します。 | |
伴奏ファイルの長さをミリ秒単位でクエリします。 | |
伴奏ファイルの再生進捗をミリ秒単位でクエリします。 | |
伴奏ファイルの再生位置を設定します。 |
効果音
API | 説明 |
効果音をプリロードします。 | |
プリロードされた効果音を削除します。 | |
効果音の再生を開始します。 | |
効果音の再生を停止します。 | |
すべての効果音の再生を停止します。 | |
効果音を一時停止します。 | |
すべての効果音を一時停止します。 | |
指定された効果音の再生を再開します。 | |
すべての効果音ファイルを回復できます。 | |
ストリームアップストリーミングに効果音をミキシングするための音量を設定します。 | |
ストリームアップストリーミングに効果音をミキシングするための音量をクエリします。 | |
すべての効果音をストリームアップストリーミングにミキシングするための音量を設定します。 | |
効果音のローカル再生音量を設定します。 | |
効果音のローカル再生音量をクエリします。 | |
すべての効果音のローカル再生音量を設定します。 |
メディアファイル録画
API | 機能説明 |
音声および映像ファイル (AAC、WAV、MP4) を録画します。 | |
音声および映像ファイルの録画を停止します。 |
ビデオデバイス管理関連のメソッド
API | 説明 |
SurfaceView レンダリングビューを作成します。 | |
ローカルプレビューのレンダリングビューと描画パラメーターを設定します。 | |
リモートユーザーのビデオトラックのレンダリングビューと描画パラメーターを設定します。 | |
カメラキャプチャプリファレンスを設定します。 | |
ローカルビデオキャプチャを無効または再度有効にします。 | |
ローカルビデオトラックのパブリッシュを停止するかどうかを指定します。 | |
カメラがオンになっているかどうかを確認します。 | |
ビデオエンコーディングプロパティを設定します。 | |
ビデオデコーディングプロパティを設定します。 | |
前面カメラと背面カメラを切り替えます。デフォルトでは、前面カメラが使用されます。 | |
現在のカメラの向きをクエリします。 | |
ローカルプレビューを開始します。 | |
ローカルプレビューを停止します。 | |
カメラのズーム係数を設定します。 | |
サポートされている最大のカメラズーム (デジタルズーム) 係数をクエリします。 | |
現在のカメラのズーム係数設定をクエリします。 | |
カメラの露出レベルを設定します。 | |
カメラの露出レベルをクエリします。 | |
サポートされている最小のカメラ露出レベルをクエリします。 | |
サポートされている最大のカメラ露出レベルをクエリします。 | |
カメラのフラッシュをオンまたはオフにします。 | |
現在のデバイスがマニュアルフォーカスをサポートしているかどうかを確認します。 | |
カメラのマニュアルフォーカスポイントを設定します。 | |
デバイスが露出ポイントの設定をサポートしているかどうかを確認します。 | |
カメラの露出ポイントを設定します。 | |
カメラが自動顔フォーカスをサポートしているかどうかを確認します。 | |
カメラの顔フォーカスを有効または無効にします。 | |
プレビューおよびストリームアップストリーミングビデオのミラーリングを有効または無効にします。 | |
ビデオキャプチャのスケーリングのタイミングを設定します。 |
ビデオデータコールバックの構成
API | 機能説明 |
ビデオデータをエクスポートするためのオブジェクトを登録します。 | |
ビデオデータをエクスポートするオブジェクトの登録を解除します。 | |
ローカルカメラトラックの OpenGL テクスチャデータのオブザーバーを登録します。 | |
ローカルカメラトラックの OpenGL テクスチャデータのオブザーバーの登録を解除します。 | |
ビデオのスクリーンショットを撮ります。 |
オーディオデータコールバックの構成
API | 機能説明 |
音量データをエクスポートするためのオブジェクトを登録します。 | |
音量データをエクスポートするオブジェクトの登録を解除します。 | |
オーディオコールバックパラメーターを設定します。 | |
オーディオデータコールバックを登録します。 |
カスタムビデオ入力
API | 説明 |
外部ビデオソースを有効にします。 | |
ビデオデータをインポートします。 |
画面共有
API | 機能説明 |
画面共有ストリームの取り込みを開始します。 | |
画面と音声ストリームの共有を開始できます。 説明 このメソッドは廃止予定です。 | |
画面共有を開始します。 説明 このメソッドは廃止予定です。 | |
画面共有のアップストリーミングを停止します。 | |
共有音声ストリームの音量を設定します。 | |
画面共有プッシュが設定されているかどうかをクエリできます。 | |
画面共有ストリームのビデオエンコーディングプロパティを設定します。 |
ライブストリーミングバイパスインターフェイス
API | 説明 |
リレーライブストリーミングを開始します。 | |
リレーされたライブストリーミングパラメーターを更新します。 | |
リレーライブストリーミングを停止します。 | |
リレーライブストリーミングのステータスをクエリします。 |
ネットワーク品質テスト
API | 説明 |
ネットワーク品質テストを開始します。 | |
ネットワーク品質テストを停止します。 |
SEI
API | 説明 |
SEI メッセージを送信します。 | |
SEI メッセージを送信します (拡張)。 |
その他の API
API | 説明 |
カスタムパラメーターを設定します。 | |
カスタムパラメーターをクエリします。 | |
SDK ログファイルを保存するパスを設定します。 | |
ログレベルを設定します。 | |
デバイスの向きを設定します。 | |
オーディオフォーカスをリクエストします。 | |
オーディオフォーカスを放棄します。 | |
現在のネットワーク時刻をクエリします。 | |
データチャンネル経由でカスタムメッセージを送信します。 |
AliveEnv インターフェイス
API | 機能説明 |
グローバル環境を設定します。 |
コールバックイベント
AliRtcEngineEventListener
API | 機能説明 |
ネットワーク接続ステータスが変更されたときに呼び出されるコールバックです。このコールバックに注意してください。 | |
ローカルデバイスの例外が発生したときに呼び出されるコールバックです。このコールバックに注意してください。 | |
チャンネルへの参加結果を返すために呼び出されるコールバックです。 | |
チャンネルからの退出結果を返すために呼び出されるコールバックです。 | |
オーディオトラックのアップストリーミングのステータスが変更されたときに呼び出されるコールバックです。 | |
オーディオトラックのサブスクリプションのステータスが変更されたときに呼び出されるコールバックです。 | |
ビデオトラックのアップストリーミングのステータスが変更されたときに呼び出されるコールバックです。 | |
ビデオトラックのサブスクリプションのステータスが変更されたときに呼び出されるコールバックです。 | |
リレーライブストリーミングのステータスが変更されたときに呼び出されるコールバックです。 | |
リレーライブストリーミングタスクのステータスが変更されたときに呼び出されるコールバックです。 | |
ネットワーク品質が変更されたときに呼び出されるコールバックです。 | |
ネットワーク品質テストの開始から約 3 秒後に呼び出されるコールバックです。 | |
ネットワーク品質テストの開始から約 30 秒後にテスト結果を提供するために呼び出されるコールバックです。 | |
スクリーンショットが完了したときに呼び出されるコールバックです。 | |
画面共有ストリームのアップストリーミングのステータスが変更されたときに呼び出されるコールバックです。 | |
画面共有ストリームのサブスクリプションのステータスが変更されたときに呼び出されるコールバックです。 | |
エラー通知。 | |
ローカルオーディオデバイスの状態変更に関するコールバックです。 |
AliRtcEngineNotify
API | 機能説明 |
ユーザー認証の有効期限がまもなく切れるときに呼び出されるコールバックです。このコールバックを受信してから 30 秒後に認証が期限切れになります。このコールバックに注意してください。 | |
ユーザーが認証済み API を呼び出すと、サーバーは認証が期限切れであることを示す応答を返します。 | |
リモートユーザーのオフライン通知 | |
リモートユーザーのオンラインステータス通知。 | |
リモートストリームのアップストリーミング通知。 | |
サーバーの切断またはチャンネルでの会議の終了を示すメッセージ。 | |
リモートユーザーのミュート通知。 | |
オーディオデバイスの中断が開始されたことの通知。 | |
オーディオデバイスの中断が終了したことの通知。 | |
リモートユーザーが黒いビデオフレームを送信したときに呼び出されるコールバックです。 | |
リモートユーザーがカメラキャプチャを無効にしたときに呼び出されるコールバックです。 | |
リモートユーザーのアプリケーションがバックグラウンドに移動します。 | |
リモートユーザーのアプリケーションがフォアグラウンドに戻ります。 | |
ローカルの効果音再生が終了したときに呼び出されるコールバックです。 | |
オーディオファイル情報が利用可能になったときに呼び出されるコールバックです。 | |
メディア拡張メッセージが受信されたときに呼び出されるコールバックです。 | |
最初のリモートビデオフレームがレンダリングされたときに呼び出されるコールバックです。 | |
プレビュー中に最初のローカルビデオフレームがレンダリングされたときに呼び出されるコールバックです。 | |
最初のリモートビデオフレームが受信されたときに呼び出されるコールバックです。 | |
最初のビデオパケットが送信されたときに呼び出されるコールバックです。 | |
最初のオーディオパケットが送信されたときに呼び出されるコールバックです。 | |
最初のビデオパケットが受信されたときに呼び出されるコールバックです。 | |
最初のオーディオパケットが受信されたときに呼び出されるコールバックです。 | |
最初のリモートオーディオフレームがデコードされたときに呼び出されるコールバックです。 | |
ローカルの音楽伴奏の再生状態が変更されたときに呼び出されるコールバックです。 | |
リモートユーザーが音楽伴奏の再生を開始したときに呼び出されるコールバックです。 | |
リモートユーザーが音楽伴奏の再生を終了したときに呼び出されるコールバックです。 | |
リアルタイムデータコールバック (2 秒ごとにトリガー)。 | |
ローカルビデオストリームのパブリッシュ統計を報告するために 2 秒ごとに呼び出されるコールバックです。 | |
リモートビデオストリームのサブスクリプション統計を報告するために 2 秒ごとに呼び出されるコールバックです。 | |
リモートオーディオストリームのサブスクリプション統計を報告するために 2 秒ごとに呼び出されるコールバックです。 | |
ローカルオーディオストリームのパブリッシュ統計を 2 秒ごとに報告します。 | |
オーディオフォーカスが変更されたときに呼び出されるコールバックです。これは Android にのみ適用されます。 | |
オーディオルートが変更されたときに呼び出されるコールバックです。これは Android と iOS にのみ適用されます。 | |
リモートユーザーがデータチャンネルをサブスクライブしたときに呼び出されるコールバックで、カスタムメッセージの送信を開始できることを示します。 | |
データチャンネル経由でカスタムメッセージが受信されたときに呼び出されるコールバックです。 |
AliRtcAudioVolumeObserver
API | 機能説明 |
ユーザーの音量レベルを報告するために呼び出されるコールバックです。 | |
アクティブなスピーカーが検出されたときに呼び出されるコールバックです。 | |
セッション前のオーディオテスト中に音量情報を報告するために呼び出されるコールバックです。 |
AliRtcAudioFrameObserver
API | 機能説明 |
キャプチャされた生のオーディオデータを報告するために呼び出されるコールバックです。 | |
3A 処理後のオーディオデータを報告するために呼び出されるコールバックです。 | |
アップストリーミング中のオーディオデータを報告するために呼び出されるコールバックです。 | |
再生オーディオデータを報告するために呼び出されるコールバックです。 | |
プルされているリモートオーディオデータを報告するために呼び出されるコールバックです。 |
AliRtcDestroyCompletionObserver
API | 機能説明 |
エンジン破棄が完了したときに呼び出されるコールバックです。 |
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 つの AliRtcEngine インスタンスのみをサポートします。
パラメーター
パラメーター | タイプ | 説明 |
context | Context | Android アクティビティのコンテキスト。 |
戻り値の説明
SDK は、アプリごとに 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 インスタンスを作成できます。違いは、この API はインスタンス作成時により多くの構成をサポートする点です。
呼び出しのタイミング
他の ARTC SDK API を呼び出す前にこのメソッドを呼び出して、AliRtcEngine インスタンスを作成します。
制限事項
SDK は、アプリごとに 1 つの AliRtcEngine インスタンスのみをサポートします。
パラメーター
パラメーター | タイプ | 説明 |
context | Context | Android アクティビティのコンテキスト。 |
extras | String | カナリアリリースで配信されるパラメーターを指定します。JSON 文字列で特別な SDK 機能を構成します。このパラメーターは空にすることができます。 |
戻り値
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
H5 との互換性を確認できます。
public static int getH5CompatibleMode();返品手順
1 は HTML5 互換モードが有効であることを示します。
0 の値は、HTML5 がサポートされていないことを示します。
setRtcEngineEventListener
ローカルユーザーの操作に対するコールバックイベントを受信するためのリスナーを設定します。
public abstract void setRtcEngineEventListener(AliRtcEngineEventListener listener);このメソッドは、ローカルユーザーに関連するイベント (チャンネルへの参加または退出の結果、ロールの変更、音声または映像のパブリッシュステータスの変更、音声または映像のサブスクリプションステータスの変更、ネットワーク品質の変更とテスト結果、スクリーンショットの結果、デバイスのステータスと例外、SDK エラーなど) のリスナーを設定します。このクラスのコールバックメソッドを実装することで、開発者は RTC セッションにおけるローカルユーザーのライフサイクルと状態の変更を処理できます。
すべてのコールバックにはデフォルトの空の実装があります。開発者はすべてのコールバックを実装する必要はなく、ビジネスロジックに関連するものだけを実装します。
リモートユーザー関連のコールバック、最初のフレームまたは最初のパケットのコールバック、音楽伴奏の再生ステータス、または認証コールバックを処理するには、
AliRtcEngineNotifyクラスを実装し、setRtcEngineNotifyを呼び出します。コールバック内で時間のかかる操作 (destroy の呼び出しなど) を避けてください。ブロッキングが発生し、SDK のパフォーマンスに影響を与える可能性があります。
呼び出しのタイミング
チャンネルに参加する前にこのメソッドを呼び出します。
関連コールバック
実行中、SDK は内部リトライを試みて異常から自動的に回復します。回復不可能なエラーの場合、SDK は定義済みのコールバックを通じてアプリケーションに通知します。以下は、アプリケーションレベルでの監視と応答が必要な主要なコールバックです:
原因 | コールバックとパラメーター | ソリューション | 注 |
認証失敗 | onJoinChannelResult コールバックは AliRtcErrJoinBadToken を返します。 | このエラーが発生した場合は、トークンが有効であることを確認してください。 | API をアクティブに呼び出すと、システムは API のコールバックで認証失敗の詳細を返します。 |
ネットワーク接続失敗 | onConnectionStatusChange コールバックは AliRtcConnectionStatusFailed を返します。 | このエラーが発生した場合は、チャンネルに再参加してください。 | SDK には、短期的なネットワーク障害から回復するための組み込み機能があります。切断が事前に設定されたタイムアウトのしきい値を超えると、SDK はタイムアウトをトリガーして切断します。この時点で、ネットワークステータスを確認し、ユーザーに再参加を促してください。 |
ローカルデバイスの例外 | onLocalDeviceException | このエラーが発生した場合は、権限とハードウェアの状態を確認してください。 | 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);このメソッドは、音声エンコーディングとシナリオモードを設定します。詳細については、「一般的な音声操作と構成」をご参照ください。ARTC SDK はデフォルトで高品質モード (AliRtcEngineHighQualityMode) と音楽シナリオモード (AliRtcSceneMusicMode) に設定されています。これらのデフォルトがニーズに合わない場合は、このメソッドを呼び出して構成します。
呼び出しのタイミング
このメソッドはチャンネルに参加する前にのみ呼び出すことができます。参加後に変更することはできません。チャンネルから退出した後に変更できます。
パラメーター
パラメーター | タイプ | 説明 |
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] はすべてチャンネルに参加しますが、認証方法と渡されるユーザー情報が異なります:
これは単一パラメーターのメソッドです。トークンベースの認証トークンを渡します。RTC シナリオでは、この方法を推奨します。
joinChannel[2/3]は、トークンベースの認証によって生成された複数参加者参加トークンと、トークン生成に使用されたユーザー情報を提供する必要がある複数参加者参加チャンネルインターフェイスです。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>を呼び出して現在のチャンネルから退出 し、AliRtcEngineEventListenerから<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#8c189be470bsp" id="70c68b0236xdt">onLeaveChannelResult</a>コールバックを受信したことを確認する必要があります。その後、別のチャンネルに参加できます。このメソッドは一度に 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 は成功を示します。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 を呼び出す前に、「トークン認証」を参照してトークンを生成してください。
制限事項
チャンネルに参加した後、別のチャンネルに切り替えるには、まず
<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#fef395c4beqdt" id="e2525ba6a0k3s">leaveChannel</a>を呼び出して現在のチャンネルから退出する必要があります。AliRtcEngineEventListenerから<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#8c189be470bsp" id="6aefdfedb0op3">onLeaveChannelResult</a>コールバックを受信した後にのみ、新しいチャンネルに参加できます。このメソッドは一度に 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 は成功を示します。0 以外の値は失敗を示します。
joinChannel[3/3]
チャンネルに参加します (単一パラメーター認証)。
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を設定してください。
特別な構成が適用されていない場合、デフォルトではチャンネルへの参加時に他のすべてのユーザーの音声および映像ストリームをサブスクライブし、自身の音声および映像ストリームをリモートユーザーにプッシュします。デフォルトのサブスクリプションを無効にするには、このインターフェイスを呼び出す前に <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 は成功を示します。0 以外の値は失敗を示します。
leaveChannel
チャンネルから退出します。このメソッドを呼び出した後、SDK はリアルタイム通信を終了し、現在のチャンネルから退出します。
public abstract int leaveChannel();このメソッドは非同期操作です。このメソッドを正常に呼び出した場合でも、直ちにチャンネルから退出するわけではなく、実際にチャンネルを退出するには
<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 は成功を示します。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);このメソッドは認証情報を更新します。トークンは一定期間経過後に期限切れとなり、サーバーへの接続ができなくなります。
このメソッドと refreshAuthInfo[2/2] はどちらも認証情報を更新します。このメソッドは複数パラメーターのトークンを更新し、refreshAuthInfo[2/2] は単一パラメーターのトークンを更新します。トークン生成については、「トークンベースの認証」をご参照ください。
呼び出しのタイミング
以下の条件で:
<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);このメソッドはトークンを更新します。トークンは一定期間経過後に期限切れとなり、サーバーへの接続ができなくなります。
このメソッドと refreshAuthInfo[1/2] はどちらも認証情報を更新します。このメソッドは単一パラメーターのトークンを更新し、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 を呼び出します。複数のユーザーに対しては、このメソッドを複数回呼び出します。
デフォルトのサブスクリプションを停止した後、
setDefaultSubscribeAllRemoteAudioStreams(true)を呼び出すと、その後に参加するユーザーのみがサブスクライブされます。一時停止中に参加したユーザーは含まれません。
パラメーター
パラメーター | タイプ | 説明 |
sub | boolean | リモートユーザーのオーディオトラックをデフォルトでサブスクライブするかどうかを指定します。有効な値:
|
戻り値の説明
0 は成功を示します。その他の値は失敗を示します。
subscribeRemoteAudioStream
特定のリモートユーザーのオーディオストリームのプルを停止または再開できます。
public abstract int subscribeRemoteAudioStream(String uid, boolean sub);この API は、特定のリモートユーザーのオーディオストリームのサブスクリプションを停止または再開します。シナリオで別途指定がない限り、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>を使用して、指定されたユーザーのオーディオストリームを個別に制御することはできません。
サブスクリプションを再開するには、このメソッドを再度呼び出し、sub を 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 | ユーザー UID。 |
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>を使用して、指定されたユーザーのビデオストリームを個別に制御することはできません。
サブスクリプションを再開するには、このメソッドを再度呼び出し、sub を true に設定します。
SDK は、チャンネルに参加した際にデフォルトですべてのリモートユーザーのビデオストリームをサブスクライブします。これを変更するには、参加前に setDefaultSubscribeAllRemoteVideosStreams(false) を呼び出します。
パラメーター
パラメーター | タイプ | 説明 |
sub | boolean | すべてのリモートビデオストリームをサブスクライブまたはサブスクライブを停止します。有効な値:
|
戻り値の説明
0 は成功を示します。その他の値は失敗を示します。
subscribeRemoteMediaStream[1/2]
特定のリモート ユーザーからのメディア ストリームを停止または再開できます。
public abstract int subscribeRemoteMediaStream(String uid, AliRtcVideoTrack videoTrack, boolean subVideo, boolean subAudio);このメソッドは、リモート音声および映像ストリームのサブスクリプションを統合します。
このメソッドでは、AliRtcVideoTrack の 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> と比較して、このインターフェイスは subVideo および subAudio の 2 つのブール値パラメーターを使用して、リモート音声および映像ストリームのサブスクリプションを決定し、videoTrack でプルするビデオストリームを制御します。
パラメーター
パラメーター | タイプ | 説明 |
uid | String | リモートユーザー ID。 |
videoTrack | ビデオストリームのタイプ。 | |
subVideo | boolean | リモートユーザーのビデオストリームのサブスクリプションを開始または停止します。有効な値:
|
subAudio | boolean | リモートユーザーのオーディオストリームのサブスクリプションを開始または停止します。有効な値:
|
戻り値の説明
0 は成功を示します。その他の値は失敗を示します。
subscribeRemoteMediaStream[2/2]
リモートユーザーの音声および映像ストリームのサブスクリプションを開始または停止します。
public abstract int subscribeRemoteMediaStream(String uid, AliRtcVideoTrack videoTrack, AliRtcAudioTrack audioTrack) ;このメソッドは、リモート音声および映像ストリームのサブスクリプションを統合します。
関連メソッド
subscribeRemoteMediaStream[1/2] と比較して、このインターフェイスは videoTrack および audioTrack パラメーターを使用して、単一のインターフェイス呼び出しでサブスクライブするメディアストリームを指定します。たとえば:
カメラおよびマイクのストリームをサブスクライブするには、videoTrack および audioTrack をそれぞれ
AliRtcVideoTrackCameraおよびAliRtcAudioTrackMicに設定します。カメラストリームのサブスクリプションを停止し、マイクを維持するには、videoTrack および audioTrack をそれぞれ
AliRtcVideoTrackNoおよび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 — 通常、アプリサーバーによって割り当てられる一意の識別子。 |
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);この操作は、指定されたリモートユーザーのオーディオの再生を停止または再開する場合にのみ使用されます。ただし、リモートユーザーからのオーディオのストリームフェッチやデコードには影響しません。特定のユーザーのオーディオストリームのサブスクリプションを解除するには、<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> インターフェイスでは、ミーティング終了後に音声キャプチャデバイスを有効な状態に保つかどうかをパラメーターで制御できます。
関連コールバック
このメソッドを呼び出してローカル音声キャプチャのステータスを変更した後、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 はデフォルトで音声キャプチャを有効にします。特別な構成がない場合、プレビュー開始やチャンネル参加などの操作により、音声キャプチャが自動的に開始されます。音声キャプチャを停止するには、このメソッドを呼び出します。
関連コールバック
このメソッドを呼び出してローカル音声キャプチャのステータスを変更した後、onLocalAudioStateChanged コールバックを使用して変更を監視します。
戻り値の説明
0 は成功を示します。その他の値は失敗を示します。
setDefaultAudioRoutetoSpeakerphone
デフォルトのオーディオ出力がスピーカーであるかどうかを設定します。
public abstract int setDefaultAudioRoutetoSpeakerphone(boolean defaultToSpeakerphone);このメソッドは、チャンネルに参加する前にデフォルトのオーディオルーティングデバイスを設定します。イヤホンまたはスピーカー出力を選択できます。SDK のデフォルトはスピーカーです。これを変更するには、参加前にこのメソッドを呼び出します。
SDK は内部的なオーディオルーティング優先順位を定義し、接続された周辺機器に基づいて自動的に切り替えます。優先順位:「有線ヘッドセット > Bluetooth ヘッドセット > ユーザー設定 > デフォルト設定」。したがって、周辺機器が接続されておらず、enableSpeakerphone を使用していない場合、デフォルト設定が適用されます。
オーディオルーティングの詳細については、「オーディオルーティング設定」をご参照ください。
モバイルデバイスは通常、イヤホンとスピーカーの 2 種類のオーディオルーティングオプションをサポートしています:
イヤホン:音量が低く、明瞭な音声を得るには電話を耳に近づけて保持する必要があります。通話に最適なプライバシー性の高いオプションです。
スピーカー:音量が高く、電話を耳に近づける必要がありません。ハンズフリー操作が可能になります。
関連メソッド
このメソッドはデフォルトのオーディオルーティング設定を変更します。enableSpeakerphone を使用して、現在のルーティングデバイスを設定します。
呼び出しのタイミング
チャンネルに参加する前または後に呼び出すことができます。
パラメーター
パラメーター | タイプ | 説明 |
defaultToSpeakerphone | boolean | スピーカーをデフォルトで使用するかどうか。
|
戻り値の説明
0:成功しました。
<0:失敗しました。
enableSpeakerphone
オーディオ出力デバイスをイヤホンまたはスピーカーに設定します。
public abstract int enableSpeakerphone(boolean enable);このメソッドは、チャンネルに参加した後の現在のオーディオ再生デバイスをイヤホンまたはスピーカーに設定します。設定しない場合、再生はデフォルトのオーディオルーティングデバイスを使用します。
SDK は内部的なオーディオルーティング優先順位を定義し、接続された周辺機器に基づいて自動的に切り替えます。優先順位:「有線ヘッドセット > Bluetooth ヘッドセット > ユーザー設定 > デフォルト設定」。したがって、周辺機器が接続されている場合、このメソッドは効果がありません。詳細については、「オーディオルーティング設定」をご参照ください。
呼び出しのタイミング
チャンネルに参加する前または後に呼び出すことができます。
関連メソッド
<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 は設定された間隔でこれらのコールバックをトリガーします:
スピーカー音量は AliRtcAudioVolumeObserver#onAudioVolume で報告されます。
音声活動検出 (VAD) は、話しているユーザーの 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 内で提供される組み込みの音声美化モードを構成します。音声ライブ配信、カラオケ、音声 SNS アプリなど、音声品質を向上させる必要があるシナリオに最適です。異なるモードを選択することで、豊かさや明瞭さなどの音声の知覚が変わり、リモートユーザーの聴取体験が向上します。
呼び出しのタイミング
チャンネルに参加する前または後に呼び出すことができます。
パラメーター
パラメーター | タイプ | 説明 |
mode | 音声美化効果モード。列挙定義をご参照ください。 |
戻り値の説明
0:成功しました。
0 以外:失敗しました。
setAudioEffectEqualizationParam
オーディオイコライザー (EQ) パラメーターを設定して、特定の周波数帯域のゲインを調整します。
public abstract int setAudioEffectEqualizationParam(AliRtcAudioEffectEqualizationBandFrequency bandIndex, float gain);このメソッドは、ローカルでキャプチャされた音声またはオーディオ信号にグラフィックイコライズを適用します。10 個の固定周波数帯域のうち 1 つの帯域のゲイン (dB 単位) を調整することで、トーン特性をカスタマイズできます。これは、発話の明瞭性向上、声の強調、ノイズ低減支援に役立ちます。
イコライザーは、31 Hz から 16 kHz までのフルオーディオスペクトルのチューニングをサポートしており、10 個の標準帯域があります。各帯域は [-15, 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 の間です。負の値は失敗を示します。
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 の間です。負の値は失敗を示します。
removeExternalAudioStream
外部オーディオストリームを削除します。
public abstract int removeExternalAudioStream(int streamId);このメソッドは、指定された streamId に関連付けられた外部オーディオストリームを削除します。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) ;この操作は、音楽伴奏のローカル再生およびストリームアップストリーミングの両方の音量を設定します。これらの音量を個別に設定するには、ローカル再生用に 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 以上の値は伴奏ファイルの長さを示します。
< 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 の場合、成功を示します。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 の場合、成功を示します。それ以外の値は失敗を示します。
stopAllAudioEffects
すべての効果音の再生を停止します。
public abstract int stopAllAudioEffects();戻り値の説明
成功すると 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
効果音のローカル再生音量を取得します。
public abstract int getAudioEffectPlayoutVolume(int soundId);パラメーター
パラメーター | タイプ | 説明 |
soundId | int | ユーザーが効果音に割り当てる ID。 |
戻り値の説明
成功すると 0 を返します。その他の値は失敗を示します。
setAllAudioEffectsPublishVolume
アップストリーミング中のすべての効果音のオーディオミキシングのボリュームを設定します。
public abstract int setAllAudioEffectsPublishVolume(int volume);パラメーター
パラメーター | タイプ | 説明 |
volume | int | ミキシングされた音量。有効範囲:0–100。デフォルト:50。 |
戻り値の説明
0 は成功を示します。その他の値は失敗を示します。
setAllAudioEffectsPlayoutVolume
すべての効果音のローカル再生音量を設定します。
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 は成功を示します。その他の値は失敗を示します。
ビデオストリームを録画する場合、この API をストリームアップストリーミングが成功した後 (
onVideoPublishStateChanged) に呼び出します。この API は、ローカルでエンコードされたビデオストリームを録画し、ローカル記憶域に保存します。オーディオストリームを録画する場合、このメソッドはローカルおよびリモートのオーディオを含むミキシングされたオーディオファイルを録画します。
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);このメソッドは、ローカルビデオストリームの表示ウィンドウ (view) をバインドし、レンダリングモード、ミラー化モード、回転角度を設定することでローカルプレビュー表示を設定します。この設定はローカルユーザーのプレビューにのみ影響し、公開されたビデオストリームには影響しません。リモートユーザーの UI 表示ビューを設定するには、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);このメソッドはローカルビデオキャプチャを制御します。無効にすると、ローカルプレビューおよびストリームアップストリーミングではビデオデータが生成されませんが、リモートビデオの受信には影響しません。このメソッドを使用してローカルカメラキャプチャを無効にすると、ローカルプレビューおよびリモート視聴者向けに最後にキャプチャされたフレームがフリーズします。
ローカルビデオキャプチャはデフォルトで有効になっています。
呼び出しのタイミング
このメソッドは、チャンネルに参加する前または後に呼び出すことができます。
関連コールバック
このメソッドを正常に呼び出した後、onUserVideoEnabled コールバックがリモートユーザーに対してトリガーされます。
パラメーター
パラメーター | タイプ | 説明 |
enable | boolean | ローカルビデオキャプチャを無効または再度有効にします。有効な値:
|
戻り値
0 は成功を示します。それ以外の値は失敗を示します。
muteLocalCamera
ローカルビデオデータの送信を停止または再開できます。
public abstract int muteLocalCamera(boolean mute, AliRtcVideoTrack track);ストリームアップストリーミング中は、このメソッドを呼び出して黒いビデオフレームを送信できますが、ローカルプレビュー、およびキャプチャ・エンコーディング・送信モジュールには影響しません。
このメソッドは、指定されたビデオトラックで黒いフレームを送信するかどうかを制御します。収集およびデータ送信プロセスには影響しません。収集を無効にするには、enableLocalVideo メソッドを使用します。ビデオデータの送信を停止するには、publishLocalVideoStream メソッドを使用するか、<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#7558afe6accq4" id="ee17216e55r3t">enableLocalVideo</a> stop collection を呼び出します。
パラメーター
パラメーター | タイプ | 説明 |
mute | boolean | ローカルビデオデータの送信を停止または再開します。有効な値:
|
track | パブリッシュステータスを変更するビデオトラックのタイプ。 |
戻り値の説明
0 の値は成功を示します。
isCameraOn
カメラが有効になっているかどうかを判定します。
public abstract boolean isCameraOn();戻り値
true:カメラが有効です。false:カメラが無効です。
setVideoEncoderConfiguration
ビデオエンコーディングプロパティを設定します。
public abstract void setVideoEncoderConfiguration(AliRtcVideoEncoderConfiguration config);このメソッドは、解像度、フレームレート、ビットレート、ビデオの向きなどのビデオストリームのエンコーディングパラメーターを設定します。すべてのビデオシナリオでこのメソッドを呼び出すことを推奨します。
各パラメーターには有効な値の範囲があります。有効範囲外の値を設定した場合、SDK が自動的に調整します。そのため、実際の構成は設定内容と異なる場合があります。
呼び出しのタイミング
このメソッドは、チャンネルに参加する前または後に呼び出すことができます。カメラストリームのビデオエンコーディングプロパティをセッションごとに 1 回だけ設定する場合、チャンネルに参加する前にこのメソッドを呼び出すことを推奨します。
制限事項
このメソッドの 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();カメラが自動顔フォーカスをサポートしているかどうかを判定します。
呼び出しのタイミング
このメソッドはカメラが有効になった後にのみ呼び出すことができます。カメラが有効になる前にこのメソッドが呼び出された場合、デフォルトで false を返します。カメラが有効で、自動顔フォーカスをサポートしている場合、このメソッドは true を返します。
制限事項
このメソッドは 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 設定と重複します。これらのメソッドのいずれか 1 つのみを使用できます。
パラメーターの説明
パラメーター | タイプ | 説明 |
mirrorMode | ミラーリングモード。 |
戻り値の説明
0 は成功を示します。
<0:設定に失敗しました。
ERR_INNER (–1):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 を返します。失敗すると 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 は成功を示します。その他の値は失敗を示します。
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 ストリーム内で送信されるため、プロファイルで構成されているように、1 秒あたり最大 fps のメッセージを送信できます。拡張情報は、ビデオフレームがエンコードされるときにのみ添付できます。
メディアデータ送信品質への影響を避けるため、カスタムメッセージ本文の長さは 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 またはプレーン文字列の使用を推奨します。
呼び出しのタイミング
アップストリーミングを開始した後、これを呼び出すことができます。
制限事項
メディア拡張メッセージは音声/映像データチャンネルを使用するため、カスタムメッセージの送信頻度とデータ長を制御する必要があります。制限事項は次のとおりです:
SEI 情報は H.264 または H.265 ストリーム内で送信され、拡張情報はビデオフレームがエンコードされるときにのみ添付できるため、プロファイルで指定されているように、1 秒あたり最大 fps のメッセージを送信できます。
メディアデータ送信品質への影響を避けるため、カスタムメッセージ本文の長さは 4 KB に制限されており、少量の情報の送信に適しています。
sendMediaExtensionMsg の repeatCount パラメーターは、メッセージの冗長性を指定します。このパラメーターが 1 より大きい場合、メッセージは複数回送信されます。
これにより、パケット損失によるメッセージの損失を防ぎます。ルーム内の他の参加者は重複したメッセージを受信するため、重複排除が必要です。
リレーライブストリーミングのサブスクライバーもカスタムメッセージを受信します。
一度に送信できる MediaExtensionMsg は 1 つだけです。sendMediaExtensionMsg を複数回呼び出すと、以前のデータが上書きされます。
戻り値
パラメーター | タイプ | 説明 |
message | byte[] | メディア拡張メッセージ。最大長:4 KB。 |
repeatCount | int | 繰り返し回数。パケット損失による損失を防ぐためのメッセージの冗長性を表します。-1 は無限送信を意味します。 |
delay | int | 遅延 (ミリ秒単位)。API を呼び出して拡張メッセージを送信した後の最小遅延。 |
isKeyFrame | boolean | キーフレームにのみ拡張情報を使用するかどうか。true は、拡張情報がキーフレームにのみ添付されることを意味します。 |
payloadType | int | ペイロードタイプの範囲:[5, 100–254]。payloadType=5 は、sendMediaExtensionMsg メソッドを使用するのと同等です。 |
戻り値の説明
0:操作は成功しました。
<0:呼び出しは失敗し、エラーコードが返されます。
ERR_INNER(-1):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>API を呼び出して認証情報を更新します。<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
ユーザーが認証を必要とする API を呼び出すと、サーバー側は「情報が期限切れです」というメッセージを返します。
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 は成功を示します。その他の値は失敗を示し、エラーコードを返します。詳細については、「エラーコード」をご参照ください。一般的なエラーコードは次のとおりです:
|
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 は成功を示します。その他の値は失敗を示し、エラーコードを返します。 |
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>を呼び出してロールを 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 | onBye のタイプ。詳細については、「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 | muteAudio を実行したユーザー。 |
isMute | boolean | ミュートされているかどうか。有効な値:
|
onUserAudioInterruptedBegin
このコールバックは、ユーザーの音声が中断されたときに呼び出されます。
public void onUserAudioInterruptedBegin(String uid);パラメーター
パラメーター | タイプ | 説明 |
uid | String | 音声が中断されたユーザー。 |
onUserAudioInterruptedEnded
このコールバックは、ユーザーの音声中断が終了したときに呼び出されます。
public void onUserAudioInterruptedEnded(String uid);パラメーター
パラメーター | タイプ | 説明 |
uid | String | 音声が中断されたユーザー。 |
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
このコールバックは、現在のセッション統計を報告するために呼び出され、SDK によって 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 を呼び出してオーディオファイル情報を取得できます。このコールバックは、ファイルの長さまたはエラーメッセージを返すためにトリガーされます。
パラメーター
パラメーター | タイプ | 説明 |
info | AliRtcEngine.AliRtcAudioFileInfo | オーディオファイル情報。ファイルパスと長さを含む。 |
errorCode | AliRtcEngine.AliRtcAudioAccompanyErrorCode | オーディオ伴奏のエラーコード。主にファイルのオープンまたはデコードの失敗。 |
onMediaExtensionMsgReceived
メディア拡張メッセージが受信されたときに呼び出されるコールバックです。
public void onMediaExtensionMsgReceived(String uid, int payloadType, byte[]message);あるエンドポイントが sendMediaExtensionMsg を使用してメッセージを送信すると、他のエンドポイントはこのコールバックを通じてデータを受信します。
パラメーター
パラメーター | タイプ | 説明 |
uid | String | 送信者のユーザー 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。 |
videoTrack | 受信したビデオストリームのタイプ。 | |
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 は、各リモートユーザーが最も音量が大きいスピーカーとして特定された回数をカウントします。現在の期間内で、累積カウントが最も高いリモートユーザーが最もアクティブなユーザーと見なされます。
トリガー条件
SDK は、チャンネルに 2 人以上のユーザーがいて、少なくとも 1 人のリモートユーザーがアクティブな場合に、このコールバックをトリガーし、最もアクティブなリモートユーザーの UID を報告します。
リモートのアクティブユーザーが同じままである場合、SDK は
onActiveSpeakerコールバックを再度トリガーしません。リモートのアクティブユーザーが変更された場合、SDK はこのコールバックを再度トリガーし、新しいリモートのアクティブユーザーの UID を報告します。
パラメーター
パラメーター | タイプ | 説明 |
uid | String | スピーカーの UID。UID が 0 の場合はローカルスピーカーを示します。返される UID は、現在の時間セグメントで最も音量が大きいユーザーのものであり、瞬間的に最も音量が大きいユーザーのものではありません。 |
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) を呼び出すことで、このコールバックを有効にできます。また、
configパラメーターを使用して、サンプルレート、サウンドチャンネル数、読み取り/書き込みモードを指定することもできます。registerAudioFrameObserver を呼び出して、オーディオフレームオブザーバーを登録します。
この API では、サンプルレートとサウンドチャンネル数を設定できますが、読み取り専用モードでのみ動作します。
使用制限
オーディオの異常が発生する可能性があるため、このコールバック関数で時間のかかる操作を実行しないでください。
パラメーター
パラメーター | タイプ | 説明 |
frame | オーディオデータ |
戻り値の説明
true:操作は成功しました。
false:操作は失敗しました。
onPlaybackAudioFrame
再生データコールバック
boolean onPlaybackAudioFrame(AliRtcAudioFrame frame);このコールバックは再生オーディオデータを取得します。デフォルトでは無効になっています。このオーディオデータを取得するには:
enableAudioFrameObserver(true, audioSource, config) を呼び出すことで、このコールバックを有効にできます。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
これは、エンジン破棄完了のコールバックです。
void OnDestroyCompletion();このコールバックは、SDK エンジンインスタンスが破棄されたことを示します。これで、新しいインスタンスを作成できます。
トリガー条件
このコールバックは、destroy メソッドを呼び出した後にトリガーされます。
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 を返します。返された値が 0 未満の場合、テクスチャ ID は更新されません。
onTextureDestroy
void onTextureDestroy();トリガー条件
このコールバックは、SDK が内部の OpenGL コンテキストを破棄するときにトリガーされ、関連するリソースをクリーンアップできます。
onLocalVideoSample
ローカルでキャプチャされたビデオデータのコールバック。
public boolean onLocalVideoSample(AliRtcVideoSourceType sourceType, AliRtcVideoSample videoSample);このコールバックは、ローカルカメラからキャプチャされた YUV データなどの生のローカルビデオフレームを提供します。これを使用して、フィルターの適用、ウォーターマークの追加、トランスコーディングなどのカスタムビデオ処理ロジックを実装できます。また、処理されたデータをエンコーディングまたはレンダリングのために SDK に返すかどうかも決定します。処理されたビデオを 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 を変更する場合は、true を返す必要があります。
false:SDK に書き戻しません。AliRtcVideoSample.dataFrameY、AliRtcVideoSample.dataFrameU、または AliRtcVideoSample.dataFrameV を直接変更する場合に使用します。
onPreEncodeVideoSample
ローカルエンコーディング前のビデオデータのコールバックをサブスクライブできます。
public boolean onPreEncodeVideoSample(AliRtcVideoSourceType sourceType, AliRtcVideoSample videoRawData);このインターフェイスは、ローカルビデオエンコーディング前の生のビデオデータを取得するためのコールバックであり、SDK がビデオフレームをエンコードする前に、YUV データなどの元のビデオデータにアクセスできます。このコールバックを使用して、ウォーターマークの追加、色の調整、トランスコーディングなどのカスタム処理ロジックを実装し、処理されたデータを後続のエンコーディングのために SDK に返すかどうかを決定できます。
パラメーター
パラメーター | タイプ | 説明 |
sourceType | ビデオストリームのタイプ | |
videoRawData | ビデオ生データ |
戻り値の説明
true:データを SDK に書き戻します。これはデフォルトの動作です。AliRtcVideoSample.data を変更する場合は、データを書き戻す必要があります。
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 によって出力されるビデオフレームの処理段階を判断できます。
0 は成功を示します。その他の値は失敗を示します。
目的のビデオ出力コンテンツは、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)この API は、スクリーンショットの結果と詳細を返します。
パラメーター
パラメーター | タイプ | 説明 |
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 | ステータス変更間隔 (ミリ秒)。 |
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 | 文字列 | カスタムパラメーター。 |
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>を呼び出してコールバック周波数と平滑化係数を設定し、その後このインターフェイスを呼び出して受信オブジェクトを登録する必要があります。<a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#ae07dc986abf3" id="29e92857a5iv8">startAudioCaptureTest</a>を呼び出して通話前のオーディオデバイス検出を実行する際、このインターフェイスを呼び出し、<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);このメソッドは、指定されたタイプのオーディオデータコールバックを有効または無効にし、開発者がさまざまな生およびエンコードされたオーディオデータを取得できるようにします。デフォルトでは無効になっています。有効にするには、このメソッドを呼び出します。
特定の AliRtcAudioSource のオーディオデータコールバックを有効にする場合、registerAudioFrameObserver も呼び出してオーディオデータ受信オブジェクトを提供する必要があります。
呼び出しのタイミング
オーディオデータを取得する必要があるときにこのメソッドを呼び出します。
パラメーター
パラメーター | タイプ | 説明 |
enable | boolean | オーディオデータコールバックを許可するかどうか。 |
audioSource | コールバックデータソースタイプ。キャプチャ後 (0)、3A 後 (1)、アップストリーミング (2)、再生 (3)、アップストリーミング/再生ミックス後 (4)、プルされたオーディオデータ (5) を含む。 説明
| |
config | オーディオコールバックパラメーター設定。サンプルレート、サウンドチャンネル数、コールバック読み取り/書き込みモード (読み取り専用、書き込み専用、読み取り/書き込み) を含む。null の場合、デフォルトは (48000, 1, ReadOnly)。 |
戻り値
0:操作は成功しました。
<0:操作は失敗しました。
registerAudioFrameObserver
オーディオデータコールバックを登録します。
public abstract void registerAudioFrameObserver(AliRtcAudioFrameObserver observer);このメソッドは、オーディオコールバックデータを受信するための受信オブジェクトを登録します。
呼び出しのタイミング
SDK が onCapturedAudioFrame、onProcessCapturedAudioFrame、onPublishAudioFrame、onPlaybackAudioFrame、または onRemoteUserAudioFrame をトリガーしてさまざまな種類のオーディオデータを取得する必要があるときに、このメソッドを呼び出します。登録を解除するには、null を指定してこのメソッドを再度呼び出します。
制限事項
enableAudioFrameObserver を呼び出して、特定の AliRtcAudioSource のコールバックを有効にする必要があります。そうしないと、提供されたオブザーバーはデータを受信しません。
パラメーター
パラメーター | タイプ | 説明 |
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> インターフェイスを呼び出してビデオデータコールバックを登録します。内部テクスチャデータを取得したい場合は、このインターフェイスを呼び出します。オブザーバーの登録を解除するには、unRegisterLocalVideoTextureObserver インターフェイスを呼び出します。
このメソッドはローカルカメラストリームにのみ適用されます。
関連コールバック
ローカルカメラストリームのビデオ 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 の場合、メソッド呼び出しは成功しましたが、SDK はまだスクリーンショットを撮っていません。
関連コールバック
このメソッドを正常に呼び出した後、onSnapshotComplete コールバックをリッスンして、スクリーンショットの結果と詳細を取得します。
パラメーター
パラメーター | タイプ | 説明 |
userId | String | ユーザー ID。null または空の場合、ローカルユーザーのスクリーンショットが撮られます。 |
trackType | キャプチャするビデオストリームタイプ。以下のみをサポートします:
|
返品手順
0:メソッド呼び出しは成功しました。スクリーンショットの結果は onSnapshotComplete コールバックによって提供されます。
0 以外の値:操作は失敗しました。エラーコードが返されます。
setLogDirPath
SDK ログファイルを保存するパスを設定します。
public static int setLogDirPath(String logDirPath);パラメーター
パラメーター | タイプ | 説明 |
logDirPath | String | ログファイルを保存する絶対パス。デフォルト:アプリディレクトリ。 |
戻り値の説明
戻り値が 0 の場合、成功を示します。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 を呼び出した場合、このメソッドを呼び出してオーディオフォーカスを再取得できます。
制限事項
Android のみ。
パラメーター
なし。
戻り値
0:失敗しました。
1:成功しました。
abandonAudioFocus
オーディオフォーカスを解放します。
public abstract int abandonAudioFocus();呼び出しのタイミング
SDK は、終了時に内部的にこのメソッドを呼び出してオーディオフォーカスを解放します。一部のシナリオでは、オーディオフォーカスを明示的に解放する必要がある場合があります。オーディオフォーカスを解放した後、一部のデバイスでは音が出ない、または音量が低い場合があります。オーディオを復元するには、requestAudioFocus を呼び出します。
制限事項
Android のみ。
戻り値の説明
0:操作は失敗しました。
1:操作は成功しました。
getNetworkTime
現在のネットワーク時刻をクエリします。
public abstract long getNetworkTime();このメソッドは、時間オフセットに合わせて調整された、現在のネットワークタイムプロトコル (NTP) 時間をミリ秒単位で取得します。
呼び出しのタイミング
このメソッドは、マルチエンドの動作を同期する際に呼び出し、現在時刻の較正に使用する同期されたネットワーク時刻のベースラインを取得できます。
戻り値
現在のネットワークタイムプロトコル (NTP) 時刻 (ミリ秒単位)。
sendDataChannelMsg
データチャンネル経由でカスタムメッセージを送信します。
public abstract int sendDataChannelMsg(AliRtcDataChannelMsg Msg);ARTC SDK はカスタムメッセージの送受信をサポートしており、音声および映像ストリームとともにリアルタイムメッセージデータを送信できます。このメソッドを使用して、リアルタイム制御コマンド、状態同期データ、またはその他のビジネス関連メッセージを送信します。使用方法の詳細については、「カスタムメッセージの送受信」をご参照ください。
カスタムメッセージチャンネルはデフォルトで無効になっています。この機能を使用するには、
setParameterAPI を `"{\"data\":{\"enablePubDataChannel\":true,\"enableSubDataChannel\":true}}"` で呼び出して有効にします。この機能は、チャンネルに参加する前または後に有効にできます。メッセージには、テキストなどの任意のデータを含めることができます。
関連コールバック
送信者がカスタムメッセージチャンネルを正常に有効にした後、このメソッドを呼び出してカスタムメッセージを送信できます。受信者は onDataChannelMessage コールバックを通じてそれらを取得します。
制限事項
ストリーマーはメッセージを送受信できます。視聴者はメッセージを受信することしかできません。
setParameter を呼び出してカスタムメッセージチャンネルを有効にする必要があります。
データ送信には以下の制限があります:
最大ビットレートは 30 KB/秒。
1 秒あたり最大 60 パケットで、各パケットのサイズは最大 1 KB。
パラメーター
パラメーター | タイプ | 説明 |
Msg | メッセージコンテンツ。 |
返品手順
0:成功しました。
0 以外:失敗しました。エラーコードが返されます。
startScreenShare
このメソッドは廃止予定です。代わりに新しい startScreenShare メソッドを使用することを推奨します。
画面と音声ストリームの共有を開始できます。
public abstract int startScreenShare(Intent intent);パラメーター
名前 | 説明 |
intent | 画面共有を開始するために外部で作成された Activity。外部で作成されていない場合は null を渡します。null を渡すことを推奨します。 |
戻り値
0:成功しました。
その他の値:失敗しました。
startScreenShare
このメソッドは廃止予定です。新しい startScreenShare メソッドを使用することを推奨します。
画面共有を開始します。
public abstract int startScreenShare();戻り値
0:成功しました。
その他の値:失敗しました。
startScreenShare
画面共有ビデオストリームの取り込みを開始します。
public abstract int startScreenShare(Intent intent, AliRtcScreenShareMode screenShareMode);パラメーター
名前 | 説明 |
intent | 画面共有を開始するために外部で作成された 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 は自動的に調整します。そのため、実際の構成は指定された設定と異なる場合があります。
呼び出しのタイミング
このメソッドは、チャンネルに参加する前または後に呼び出すことができます。画面共有ストリームのビデオエンコーディングプロパティをセッションごとに 1 回だけ構成する必要がある場合は、チャンネルに参加する前に呼び出すことを推奨します。
パラメーター
パラメーター | タイプ | 説明 |
config | 解像度、フレームレート、ビットレート、ビデオの向きなど、事前に定義された画面共有エンコーディングプロパティ。 |
setGlobalEnvironment
グローバル環境を設定します。
public int setGlobalEnvironment(GlobalEnv env);このメソッドは、SDK のグローバル動作環境を指定します。これは主にログアップロードとイベントトラッキングデータの送信先を決定します:
中国本土環境に設定すると、ログとイベントトラッキングデータは中国本土のデータセンターにアップロードされます。
海外環境に設定すると、データはシンガポールなど中国以外のデータセンターにルーティングされます。
呼び出しのタイミング
このメソッドは、アプリケーションの初期化の早い段階 (例:Application の onCreate() メソッド内) で呼び出すことができます。
制限事項
この設定はグローバルであり、一度だけ呼び出す必要があります。
複数回呼び出すと、以前の設定が上書きされ、確立された接続やセッションの状態に影響を与える可能性があります。実行中に動的に切り替えないでください。
例
AlivcEnv.GlobalEnv env = ENV_DEFAULT; // 海外の場合は ENV_SEA を使用
AlivcBase.getEnvironmentManager().setGlobalEnvironment(env);パラメーター
パラメーター | タイプ | 説明 |
env |
| グローバル環境を指定します。サポートされている列挙値: |
戻り値
int 型の結果コードを返します:
0:成功を示します。非
0の値は失敗を示します。