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

ApsaraVideo Live:AliRtcEngine クラス

最終更新日:Feb 08, 2026

このトピックでは、Android 向けリアルタイム音声・映像 SDK の API の詳細について説明します。

目次

基本インターフェイス

API

説明

getInstance[1/2]

AliRtcEngine インスタンスを作成します。このメソッドはメインスレッドで呼び出す必要があります。プライマリインスタンスは 1 つしか許可されません。

getInstance[2/2]

シングルトンパターンを使用して AliRtcEngine インスタンスを作成できます。

destroy[1/2]

AliRtcEngine インスタンスを破棄します。

destroy[2/2]

AliRtcEngine インスタンスを破棄します。

setH5CompatibleMode

HTML5 互換モードを有効にするかどうかを指定します。

getH5CompatibleMode

現在のバージョンが HTML5 と互換性があるかどうかを確認します。

setRtcEngineEventListener

ローカルユーザーの操作に対するコールバックイベントを受信するためのリスナーを設定します。

setRtcEngineNotify

リモートユーザーの操作に対する通知イベントを受信するためのリスナーを設定します。

getSdkVersion

現在の SDK バージョンをクエリします。

チャンネル関連のメソッド

API

説明

setChannelProfile

チャンネルモードを設定します。

setAudioProfile

音声エンコーディングとシナリオモードを設定します。

isAudioOnly

音声のみモードが有効になっているかどうかをクエリします。

setAudioOnlyMode

音声のみモードまたは音声・映像モードを有効にします。

joinChannel[1/3]

チャンネルに参加します。

joinChannel[2/3]

チャンネルに参加します。

joinChannel[3/3]

チャンネルに参加します。

leaveChannel

チャンネルを離脱します。

isInCall

チャンネルに参加しているかどうかを確認します。

setClientRole

ユーザーロールを指定します。

getCurrentClientRole

ユーザーロールをクエリします。

refreshAuthInfo[1/2]

認証情報を更新します。

refreshAuthInfo[2/2]

認証情報を更新します。

パブリッシュおよびサブスクリプション関連のメソッド

API

説明

publishLocalAudioStream

ローカルビデオストリームのパブリッシュを停止または再開します。デフォルトでは有効になっています。

isLocalAudioStreamPublished

オーディオトラックがパブリッシュされているかどうかをクエリします。

setDefaultSubscribeAllRemoteAudioStreams

デフォルトでリモートユーザーのオーディオトラックをサブスクライブするかどうかを指定します。デフォルトでは、すべてのリモートオーディオトラックがサブスクライブされます。このメソッドはチャンネルに参加する前に呼び出すことを推奨します。

subscribeRemoteAudioStream

特定のリモートユーザーのオーディオトラックをサブスクライブまたはサブスクライブを停止します。

subscribeAllRemoteAudioStreams

すべてのリモートユーザーのオーディオトラックをサブスクライブまたはサブスクライブを停止します。

publishLocalVideoStream

ローカルビデオトラックをパブリッシュするかどうかを指定します。SDK はデフォルトでパブリッシュします。

isLocalVideoStreamPublished

ビデオトラックがパブリッシュされているかどうかをクエリします。

setDefaultSubscribeAllRemoteVideoStreams

デフォルトでリモートユーザーのビデオトラックをサブスクライブするかどうかを指定します。デフォルトでは、すべてのリモートビデオトラックがサブスクライブされます。このメソッドはチャンネルに参加する前に呼び出すことを推奨します。

subscribeRemoteVideoStream

指定されたリモートビデオトラックをサブスクライブまたはサブスクライブを停止します。

subscribeAllRemoteVideoStreams

すべてのリモートビデオストリームの受信を停止または再開できます。

subscribeRemoteMediaStream[1/2]

特定のリモートユーザーのメディアストリームをサブスクライブまたはサブスクライブを停止します。音声と映像の両方のトラックが利用可能で、制御が必要な場合にこのメソッドを呼び出すことを推奨します。

subscribeRemoteMediaStream[2/2]

この API 操作は、特定のリモートユーザーのメディアストリームを停止または再開します。音声と映像の両方を制御する必要がある場合に、この API の使用を推奨します。

subscribeRemoteDestChannelStream

チャンネル間で特定のリモートユーザーのメディアストリームを停止または再開します。

subscribeRemoteDestChannelAllStream

チャンネル間のすべてのユーザーのストリームをサブスクライブまたはサブスクライブを停止します。

setRemoteAudioVolume

取り込まれたオーディオストリームの再生ボリュームを調整します。

オーディオデバイス管理関連のメソッド

API

説明

muteLocalMic

ローカル音声のパブリッシュを停止するかどうかを指定します。

muteRemoteAudioPlaying

特定のリモートユーザーのオーディオトラックの再生を停止するかどうかを指定します。

muteAllRemoteAudioPlaying

すべてのリモート音声再生を停止または再開します。

startAudioCapture[1/2]

音声キャプチャを開始します。

startAudioCapture[2/2]

音声キャプチャを開始します。

stopAudioCapture

音声キャプチャを停止します。

setDefaultAudioRoutetoSpeakerphone

デフォルトのオーディオ出力デバイスを設定します。

enableSpeakerphone

オーディオ出力デバイスを受話器またはスピーカーに設定します。

isSpeakerOn

現在のオーディオ出力デバイスが受話器かスピーカーかをクエリします。

enableAudioVolumeIndication

音量検出を有効にします。

enableEarBack

インイヤーモニターを有効にします。

setEarBackVolume

インイヤーモニターの音量を設定します。

startAudioPlayer

オーディオ再生デバイスを開始します。

stopAudioPlayer

オーディオ再生デバイスを停止します。

setPlayoutVolume

ローカル再生音量を設定します。

setRecordingVolume

録音音量を設定します。

playAudioFileTest

オーディオファイルを再生します。

stopAudioFileTest

オーディオファイルの再生を停止します。

startAudioCaptureTest

セッション開始前にオーディオキャプチャデバイスのテストを開始します。

stopAudioCaptureTest

音声キャプチャ検出を無効にできます。

ボイスチェンジとリバーブ関連のメソッド

API

説明

setAudioEffectVoiceChangerMode

ボイスチェンジモードを設定します。

setAudioEffectPitchValue

ピッチ調整パラメーターを設定します。

setAudioEffectReverbMode

リバーブモードを設定します。

setAudioEffectReverbParamType

リバーブエフェクトのタイプと特定のパラメーターを設定します。

setAudioEffectBeautifyMode

定義済みの音声美化エフェクトモードを設定します。

setAudioEffectEqualizationParam

オーディオイコライザー (EQ) パラメーターを設定して、特定の周波数帯のゲインを調整します。

カスタム音声入力

API

説明

addExternalAudioStream

外部オーディオトラックを追加します。

pushExternalAudioStreamRawData

外部音声データをインポートします。

setExternalAudioStreamPublishVolume

外部音声のストリームアップストリーミングの音量を設定します。

getExternalAudioStreamPublishVolume

外部音声のストリームアップストリーミングの音量をクエリします。

setExternalAudioStreamPlayoutVolume

外部音声の再生音量を設定します。

getExternalAudioStreamPlayoutVolume

外部音声の再生音量をクエリします。

removeExternalAudioStream

外部オーディオトラックを削除します。

音楽伴奏

API

説明

getAudioFileInfo

オーディオファイル情報をクエリします。

startAudioAccompany

音楽伴奏のミキシングを開始します。

stopAudioAccompany

音楽伴奏のミキシングを停止します。

setAudioAccompanyVolume

ローカル再生とストリームアップストリーミングの音量を含む伴奏音量を設定します。

setAudioAccompanyPublishVolume

伴奏のストリームアップストリーミング音量を設定します。

getAudioAccompanyPublishVolume

伴奏のストリームアップストリーミング音量をクエリします。

setAudioAccompanyPlayoutVolume

伴奏のローカル再生音量を設定します。

getAudioAccompanyPlayoutVolume

伴奏のローカル再生音量をクエリします。

pauseAudioAccompany

音楽伴奏のミキシングを一時停止します。

resumeAudioAccompany

音楽伴奏のミキシングを再開します。

getAudioAccompanyDuration

伴奏ファイルの長さをミリ秒単位でクエリします。

getAudioAccompanyCurrentPosition

伴奏ファイルの再生進捗をミリ秒単位でクエリします。

setAudioAccompanyPosition

伴奏ファイルの再生位置を設定します。

効果音

API

説明

preloadAudioEffect

効果音をプリロードします。

unloadAudioEffect

プリロードされた効果音を削除します。

playAudioEffect

効果音の再生を開始します。

stopAudioEffect

効果音の再生を停止します。

stopAllAudioEffects

すべての効果音の再生を停止します。

pauseAudioEffect

効果音を一時停止します。

pauseAllAudioEffects

すべての効果音を一時停止します。

resumeAudioEffect

指定された効果音の再生を再開します。

resumeAllAudioEffects

すべての効果音ファイルを回復できます。

setAudioEffectPublishVolume

ストリームアップストリーミングに効果音をミキシングするための音量を設定します。

getAudioEffectPublishVolume

ストリームアップストリーミングに効果音をミキシングするための音量をクエリします。

setAllAudioEffectsPublishVolume

すべての効果音をストリームアップストリーミングにミキシングするための音量を設定します。

setAudioEffectPlayoutVolume

効果音のローカル再生音量を設定します。

getAudioEffectPlayoutVolume

効果音のローカル再生音量をクエリします。

setAllAudioEffectsPlayoutVolume

すべての効果音のローカル再生音量を設定します。

メディアファイル録画

API

機能説明

startRecord

音声および映像ファイル (AAC、WAV、MP4) を録画します。

stopRecord

音声および映像ファイルの録画を停止します。

ビデオデバイス管理関連のメソッド

API

説明

createRenderSurfaceView

SurfaceView レンダリングビューを作成します。

setLocalViewConfig

ローカルプレビューのレンダリングビューと描画パラメーターを設定します。

setRemoteViewConfig

リモートユーザーのビデオトラックのレンダリングビューと描画パラメーターを設定します。

setCameraCapturerConfiguration

カメラキャプチャプリファレンスを設定します。

enableLocalVideo

ローカルビデオキャプチャを無効または再度有効にします。

muteLocalCamera

ローカルビデオトラックのパブリッシュを停止するかどうかを指定します。

isCameraOn

カメラがオンになっているかどうかを確認します。

setVideoEncoderConfiguration

ビデオエンコーディングプロパティを設定します。

setVideoDecoderConfiguration

ビデオデコーディングプロパティを設定します。

switchCamera

前面カメラと背面カメラを切り替えます。デフォルトでは、前面カメラが使用されます。

getCurrentCameraDirection

現在のカメラの向きをクエリします。

startPreview

ローカルプレビューを開始します。

stopPreview

ローカルプレビューを停止します。

setCameraZoom

カメラのズーム係数を設定します。

getCameraMaxZoomFactor

サポートされている最大のカメラズーム (デジタルズーム) 係数をクエリします。

getCurrentZoom

現在のカメラのズーム係数設定をクエリします。

SetExposure

カメラの露出レベルを設定します。

GetCurrentExposure

カメラの露出レベルをクエリします。

getMinExposure

サポートされている最小のカメラ露出レベルをクエリします。

GetMaxExposure

サポートされている最大のカメラ露出レベルをクエリします。

setCameraFlash

カメラのフラッシュをオンまたはオフにします。

isCameraFocusPointSupported

現在のデバイスがマニュアルフォーカスをサポートしているかどうかを確認します。

setCameraFocusPoint

カメラのマニュアルフォーカスポイントを設定します。

isCameraExposurePointSupported

デバイスが露出ポイントの設定をサポートしているかどうかを確認します。

setCameraExposurePoint

カメラの露出ポイントを設定します。

isCameraAutoFocusFaceModeSupported

カメラが自動顔フォーカスをサポートしているかどうかを確認します。

setCameraAutoFocusFaceModeEnabled

カメラの顔フォーカスを有効または無効にします。

setVideoMirrorMode

プレビューおよびストリームアップストリーミングビデオのミラーリングを有効または無効にします。

setCapturePipelineScaleMode

ビデオキャプチャのスケーリングのタイミングを設定します。

ビデオデータコールバックの構成

API

機能説明

registerVideoSampleObserver

ビデオデータをエクスポートするためのオブジェクトを登録します。

unRegisterVideoSampleObserver

ビデオデータをエクスポートするオブジェクトの登録を解除します。

registerLocalVideoTextureObserver

ローカルカメラトラックの OpenGL テクスチャデータのオブザーバーを登録します。

unRegisterLocalVideoTextureObserver

ローカルカメラトラックの OpenGL テクスチャデータのオブザーバーの登録を解除します。

snapshotVideo

ビデオのスクリーンショットを撮ります。

オーディオデータコールバックの構成

API

機能説明

registerAudioVolumeObserver

音量データをエクスポートするためのオブジェクトを登録します。

unRegisterAudioVolumeObserver

音量データをエクスポートするオブジェクトの登録を解除します。

enableAudioFrameObserver

オーディオコールバックパラメーターを設定します。

registerAudioFrameObserver

オーディオデータコールバックを登録します。

カスタムビデオ入力

API

説明

setExternalVideoSource

外部ビデオソースを有効にします。

pushExternalVideoFrame

ビデオデータをインポートします。

画面共有

API

機能説明

startScreenShare

画面共有ストリームの取り込みを開始します。

startScreenShare

画面と音声ストリームの共有を開始できます。

説明

このメソッドは廃止予定です。

startScreenShare

画面共有を開始します。

説明

このメソッドは廃止予定です。

stopScreenShare

画面共有のアップストリーミングを停止します。

setAudioShareVolume

共有音声ストリームの音量を設定します。

isScreenSharePublished

画面共有プッシュが設定されているかどうかをクエリできます。

setScreenShareEncoderConfiguration

画面共有ストリームのビデオエンコーディングプロパティを設定します。

ライブストリーミングバイパスインターフェイス

API

説明

startPublishLiveStream

リレーライブストリーミングを開始します。

updatePublishLiveStream

リレーされたライブストリーミングパラメーターを更新します。

stopPublishLiveStream

リレーライブストリーミングを停止します。

getPublishLiveStreamState

リレーライブストリーミングのステータスをクエリします。

ネットワーク品質テスト

API

説明

startNetworkQualityProbeTest

ネットワーク品質テストを開始します。

stopNetworkQualityProbeTest

ネットワーク品質テストを停止します。

SEI

API

説明

sendMediaExtensionMsg

SEI メッセージを送信します。

sendMediaExtensionMsgEx

SEI メッセージを送信します (拡張)。

その他の API

API

説明

setParameter

カスタムパラメーターを設定します。

getParameter

カスタムパラメーターをクエリします。

setLogDirPath

SDK ログファイルを保存するパスを設定します。

setLogLevel

ログレベルを設定します。

setDeviceOrientationMode

デバイスの向きを設定します。

requestAudioFocus

オーディオフォーカスをリクエストします。

abandonAudioFocus

オーディオフォーカスを放棄します。

getNetworkTime

現在のネットワーク時刻をクエリします。

sendDataChannelMsg

データチャンネル経由でカスタムメッセージを送信します。

AliveEnv インターフェイス

API

機能説明

setGlobalEnvironment

グローバル環境を設定します。

コールバックイベント

AliRtcEngineEventListener

API

機能説明

onConnectionStatusChange

ネットワーク接続ステータスが変更されたときに呼び出されるコールバックです。このコールバックに注意してください。

OnLocalDeviceException

ローカルデバイスの例外が発生したときに呼び出されるコールバックです。このコールバックに注意してください。

onJoinChannelResult

チャンネルへの参加結果を返すために呼び出されるコールバックです。

onLeaveChannelResult

チャンネルからの退出結果を返すために呼び出されるコールバックです。

onAudioPublishStateChanged

オーディオトラックのアップストリーミングのステータスが変更されたときに呼び出されるコールバックです。

onAudioSubscribeStateChanged

オーディオトラックのサブスクリプションのステータスが変更されたときに呼び出されるコールバックです。

onVideoPublishStateChanged

ビデオトラックのアップストリーミングのステータスが変更されたときに呼び出されるコールバックです。

onVideoSubscribeStateChanged

ビデオトラックのサブスクリプションのステータスが変更されたときに呼び出されるコールバックです。

onPublishLiveStreamStateChanged

リレーライブストリーミングのステータスが変更されたときに呼び出されるコールバックです。

onPublishTaskStateChanged

リレーライブストリーミングタスクのステータスが変更されたときに呼び出されるコールバックです。

onNetworkQualityChanged

ネットワーク品質が変更されたときに呼び出されるコールバックです。

onNetworkQualityProbeTest

ネットワーク品質テストの開始から約 3 秒後に呼び出されるコールバックです。

onNetworkQualityProbeTestResult

ネットワーク品質テストの開始から約 30 秒後にテスト結果を提供するために呼び出されるコールバックです。

onSnapshotComplete

スクリーンショットが完了したときに呼び出されるコールバックです。

onScreenSharePublishStateChanged

画面共有ストリームのアップストリーミングのステータスが変更されたときに呼び出されるコールバックです。

onScreenShareSubscribeStateChanged

画面共有ストリームのサブスクリプションのステータスが変更されたときに呼び出されるコールバックです。

onOccurError

エラー通知。

onLocalAudioStateChanged

ローカルオーディオデバイスの状態変更に関するコールバックです。

AliRtcEngineNotify

API

機能説明

onAuthInfoWillExpire

ユーザー認証の有効期限がまもなく切れるときに呼び出されるコールバックです。このコールバックを受信してから 30 秒後に認証が期限切れになります。このコールバックに注意してください。

onAuthInfoExpired

ユーザーが認証済み API を呼び出すと、サーバーは認証が期限切れであることを示す応答を返します。

onRemoteUserOffLineNotify

リモートユーザーのオフライン通知

onRemoteUserOnLineNotify

リモートユーザーのオンラインステータス通知。

onRemoteTrackAvailableNotify

リモートストリームのアップストリーミング通知。

onBye

サーバーの切断またはチャンネルでの会議の終了を示すメッセージ。

onUserAudioMuted

リモートユーザーのミュート通知。

onUserAudioInterruptedBegin

オーディオデバイスの中断が開始されたことの通知。

onUserAudioInterruptedEnded

オーディオデバイスの中断が終了したことの通知。

onUserVideoMuted

リモートユーザーが黒いビデオフレームを送信したときに呼び出されるコールバックです。

onUserVideoEnabled

リモートユーザーがカメラキャプチャを無効にしたときに呼び出されるコールバックです。

onUserWillResignActive

リモートユーザーのアプリケーションがバックグラウンドに移動します。

onUserWillBecomeActive

リモートユーザーのアプリケーションがフォアグラウンドに戻ります。

onAudioEffectFinished

ローカルの効果音再生が終了したときに呼び出されるコールバックです。

onAudioFileInfo

オーディオファイル情報が利用可能になったときに呼び出されるコールバックです。

onMediaExtensionMsgReceived

メディア拡張メッセージが受信されたときに呼び出されるコールバックです。

onFirstRemoteVideoFrameDrawn

最初のリモートビデオフレームがレンダリングされたときに呼び出されるコールバックです。

onFirstLocalVideoFrameDrawn

プレビュー中に最初のローカルビデオフレームがレンダリングされたときに呼び出されるコールバックです。

onFirstVideoFrameReceived

最初のリモートビデオフレームが受信されたときに呼び出されるコールバックです。

onFirstVideoPacketSent

最初のビデオパケットが送信されたときに呼び出されるコールバックです。

onFirstAudioPacketSent

最初のオーディオパケットが送信されたときに呼び出されるコールバックです。

onFirstVideoPacketReceived

最初のビデオパケットが受信されたときに呼び出されるコールバックです。

onFirstAudioPacketReceived

最初のオーディオパケットが受信されたときに呼び出されるコールバックです。

onFirstRemoteAudioDecoded

最初のリモートオーディオフレームがデコードされたときに呼び出されるコールバックです。

onAudioAccompanyStateChanged

ローカルの音楽伴奏の再生状態が変更されたときに呼び出されるコールバックです。

onRemoteAudioAccompanyStarted

リモートユーザーが音楽伴奏の再生を開始したときに呼び出されるコールバックです。

onRemoteAudioAccompanyFinished

リモートユーザーが音楽伴奏の再生を終了したときに呼び出されるコールバックです。

onAliRtcStats

リアルタイムデータコールバック (2 秒ごとにトリガー)。

onRtcLocalVideoStats

ローカルビデオストリームのパブリッシュ統計を報告するために 2 秒ごとに呼び出されるコールバックです。

onRtcRemoteVideoStats

リモートビデオストリームのサブスクリプション統計を報告するために 2 秒ごとに呼び出されるコールバックです。

onRtcRemoteAudioStats

リモートオーディオストリームのサブスクリプション統計を報告するために 2 秒ごとに呼び出されるコールバックです。

onRtcLocalAudioStats

ローカルオーディオストリームのパブリッシュ統計を 2 秒ごとに報告します。

onAudioFocusChange

オーディオフォーカスが変更されたときに呼び出されるコールバックです。これは Android にのみ適用されます。

onAudioRouteChanged

オーディオルートが変更されたときに呼び出されるコールバックです。これは Android と iOS にのみ適用されます。

onRemoteUserSubscribedDataChannel

リモートユーザーがデータチャンネルをサブスクライブしたときに呼び出されるコールバックで、カスタムメッセージの送信を開始できることを示します。

onDataChannelMessage

データチャンネル経由でカスタムメッセージが受信されたときに呼び出されるコールバックです。

AliRtcAudioVolumeObserver

API

機能説明

onAudioVolume

ユーザーの音量レベルを報告するために呼び出されるコールバックです。

onActiveSpeaker

アクティブなスピーカーが検出されたときに呼び出されるコールバックです。

onTestAudioVolume

セッション前のオーディオテスト中に音量情報を報告するために呼び出されるコールバックです。

AliRtcAudioFrameObserver

API

機能説明

onCapturedAudioFrame

キャプチャされた生のオーディオデータを報告するために呼び出されるコールバックです。

onProcessCapturedAudioFrame

3A 処理後のオーディオデータを報告するために呼び出されるコールバックです。

onPublishAudioFrame

アップストリーミング中のオーディオデータを報告するために呼び出されるコールバックです。

onPlaybackAudioFrame

再生オーディオデータを報告するために呼び出されるコールバックです。

onRemoteUserAudioFrame

プルされているリモートオーディオデータを報告するために呼び出されるコールバックです。

AliRtcDestroyCompletionObserver

API

機能説明

onDestroyCompletion

エンジン破棄が完了したときに呼び出されるコールバックです。

AliRtcTextureObserver

API

機能説明

onTextureCreate

OpenGL コンテキストが作成されたときに呼び出されるコールバックです。

onTextureUpdate

OpenGL テクスチャが更新されたときに呼び出されるコールバックです。

onTextureDestroy

OpenGL コンテキストが破棄されたときに呼び出されるコールバックです。

AliRtcVideoObserver

API

機能説明

onLocalVideoSample

ローカルでキャプチャされたビデオデータを報告するために呼び出されるコールバックです。

onPreEncodeVideoSample

エンコーディング前にローカルでキャプチャされたビデオデータを報告するために呼び出されるコールバックです。

onRemoteVideoSample

プルされているリモートビデオデータを報告するために呼び出されるコールバックです。

onGetVideoFormatPreference

ビデオデータの優先出力フォーマット。

onGetObservedFramePosition

ビデオデータ出力。

メソッドの詳細

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

AliRtcDestroyCompletionObserver

エンジン破棄完了の通知コールバック。このコールバックをリッスンして、リソースの解放を確認します。

setH5CompatibleMode

HTML5 互換モードを有効にするかどうかを指定します。

public static int setH5CompatibleMode(int enable);

パラメーター

パラメーター

タイプ

説明

enable

int

HTML5 互換モードを有効にするかどうかを指定します。有効な値:

  • 0 (デフォルト):HTML5 互換モードを無効にします。

  • 1: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

AliRtcEngineEventListener

ローカルユーザーの操作通知のためのリスナー。

setRtcEngineNotify

リモートユーザーの操作に対する通知イベントを受信するためのリスナーを設定します。

public abstract void setRtcEngineNotify(AliRtcEngineNotify listener);

このメソッドは、リモートユーザーに関連するイベント (オンラインまたはオフラインの通知、リモートユーザーの音声または映像のパブリッシュステータス、解像度の変更、ローカルおよびリモートの音声または映像の最初のフレームまたは最初のパケットの送受信ステータス、ローカルおよびリモートの音楽伴奏の再生ステータス、ミュートステータス、ローカルおよびリモートの音声または映像ストリームの統計、SEI 受信、カスタムメッセージ受信、認証の変更など) のリスナーを設定します。このクラスのコールバックメソッドを実装することで、開発者はリモートユーザーとのインタラクション関連のイベントを処理できます。

説明
  • すべてのコールバックにはデフォルトの空の実装があります。開発者はすべてのメソッドを実装する必要はなく、ビジネスロジックに関連するものだけを実装します。

  • コールバック内で時間のかかる操作 (destroy の呼び出しなど) を避けてください。ブロッキングが発生し、SDK のパフォーマンスに影響を与える可能性があります。

呼び出しのタイミング

チャンネルに参加する前にこのメソッドを呼び出します。

関連コールバック

実行中、SDK は内部リトライを試みて異常から自動的に回復します。回復不可能なエラーの場合、SDK は定義済みのコールバックを通じてアプリケーションに通知します。以下は、アプリケーションレベルでの監視と応答が必要な主要なコールバックです:

異常の原因

コールバックとパラメーター

ソリューション

強制退室

onBye

  • AliRtcOnByeUserReplaced:この (異常な) 状況が発生した場合は、ユーザー ID が同一であるかどうかを確認してください。

  • AliRtcOnByeBeKickedOut:チャンネルに再参加してください。

  • AliRtcOnByeChannelTerminated:チャンネルが破棄されました。チャンネルに再参加する必要があります。

RTC サービスは、管理者が参加者を削除する機能を提供します。

認証の有効期限切れ間近

onWillAuthInfoExpire

この状況が発生した場合は、サーバーで新しい認証情報を取得し、refreshAuthInfo を呼び出して更新してください。

認証の有効期限切れは、API 呼び出し時とプログラム実行時の 2 つの状況で発生する可能性があります。そのため、フィードバックは API のコールバック、または専用のエラーコールバックで通知されます。

認証の有効期限切れ

onAuthInfoExpired

この状況が発生した場合は、チャンネルに再参加してください。

認証の有効期限切れは、API 呼び出し時とプログラム実行時の 2 つの状況で発生する可能性があります。そのため、フィードバックは API のコールバック、または専用のエラーコールバックで通知されます。

パラメーター

パラメーター

タイプ

説明

listener

AliRtcEngineNotify

リモートユーザーの操作通知のためのリスナーで、エンジンからのメッセージを受信するために使用されます。

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

AliRTCSdkChannelProfile

チャンネルタイプ。すべての RTC シナリオでインタラクティブモードを推奨します。

戻り値

0 は成功を示します。その他の値は失敗を示します:1 は SDK が初期化されていないか、すでに破棄されていることを意味します。

setAudioProfile

音声エンコーディングとシナリオモードを設定します。

public abstract int setAudioProfile(AliRtcAudioProfile profile, AliRtcAudioScenario scenario);

このメソッドは、音声エンコーディングとシナリオモードを設定します。詳細については、「一般的な音声操作と構成」をご参照ください。ARTC SDK はデフォルトで高品質モード (AliRtcEngineHighQualityMode) と音楽シナリオモード (AliRtcSceneMusicMode) に設定されています。これらのデフォルトがニーズに合わない場合は、このメソッドを呼び出して構成します。

呼び出しのタイミング

このメソッドはチャンネルに参加する前にのみ呼び出すことができます。参加後に変更することはできません。チャンネルから退出した後に変更できます。

パラメーター

パラメーター

タイプ

説明

profile

AliRtcAudioProfile

音声キャプチャまたはエンコーディングモード。高品質モード (AliRtcEngineHighQualityMode) を推奨します。

説明

Web との相互運用性のために、サンプルレートを 48 kHz に設定してください。

  • AliRtcEngineLowQualityMode:低品質音声。デフォルトのサンプルレート:8 kHz。モノラル。最大ビットレート:12 kbps。

  • AliRtcEngineBasicQualityMode:標準品質音声。デフォルトのサンプルレート:16 kHz。モノラル。最大ビットレート:24 kbps。

  • AliRtcEngineHighQualityMode:デフォルトのサンプルレート:48 kHz。モノラル。最大ビットレート:64 kbps。

  • AliRtcEngineStereoHighQualityMode:ステレオ高品質音声。デフォルトのサンプルレート:48 kHz。ステレオ。最大ビットレート:80 kbps。

  • AliRtcEngineSuperHighQualityMode:超高品質音声。デフォルトのサンプルレート:48 kHz。モノラル。最大ビットレート:96 kbps。

  • AliRtcEngineStereoSuperHighQualityMode:ステレオ超高品質音声。デフォルトのサンプルレート:48 kHz。ステレオ。最大ビットレート:128 kbps。

scenario

AliRtcAudioScenario

音声シナリオモード。オプションは次のとおりです:

  • AliRtcSceneMusicMode (推奨):音楽シナリオ。ソフトウェア 3A を使用します。電話からキャプチャします (より高い忠実度)。

  • AliRtcSceneDefaultMode:ハードウェア 3A を使用します。Bluetooth デバイスからキャプチャできます。

説明

ARTC SDK v6.21 以降では、これをチャットルームモード (AliRtcSceneChatroomMode) に設定しないでください。

戻り値の説明

0:成功。0 未満:失敗。

isAudioOnly

音声のみモードが有効になっているかどうかを確認します。

public abstract boolean isAudioOnly();

戻り値の説明

true:音声のみモード。false:音声・映像モード。

setAudioOnlyMode

音声のみモードを有効にしますか?

public abstract int setAudioOnlyMode(boolean audioOnly);

パラメーター

パラメーター

タイプ

説明

audioOnly

boolean

音声のみモードまたは音声・映像モードを使用するかどうかを指定します。有効な値:

  • true:音声のみモード。オーディオトラックのみがアップストリームおよびプルされます。

  • false (デフォルト): 音声・動画モード。音声トラックと動画トラックの両方が取り込まれ、プルされます。

戻り値

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

AliRtcAuthInfo

認証情報。トークンフィールドには複数パラメーターのトークンを含める必要があります。トークン生成に関連する他のフィールドは、トークン生成値と一致し、空であってはなりません。

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

AliRTCSdkChannelParam

チャンネル参加パラメーターで、主にリアルタイム対話型 AI 用です。以下を含みます:

  • channelId:チャンネル ID。トークン生成と一致する必要があります。任意指定可能です。

  • userId:参加するユーザーのユーザー ID。トークン生成と一致する必要があります。任意指定可能です。

  • userName:UI 用の表示名。ユーザー ID ではありません。任意指定可能です。

  • capabilityProfile:ユーザーの機能プロファイル。AI エージェント会話でのみ必須です。非 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 はローカル音声または映像をパブリッシュせず、他のストリーマーの音声または映像のみを受信します。

呼び出しのタイミング

チャンネルに参加する前または後に呼び出すことができます。参加前にロールを設定するか、参加後にロールを切り替えることができます。

制限事項

このメソッドはインタラクティブモード (つまり、setChannelProfileAliRTCSdkInteractiveLive で呼び出した後) のみで動作します。

インタラクティブモードでは、参加前にロールを明示的に設定することを推奨します。

パラメーター

パラメーター

タイプ

説明

clientRole

AliRTCSdkClientRole

ユーザーのロールタイプ。インタラクティブモードでのみ有効です。

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

AliRtcAuthInfo

認証情報。

戻り値の説明

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

オーディオトラックをパブリッシュするかどうかを指定します。有効な値:

  • true (デフォルト):オーディオトラックをパブリッシュします。

  • false:オーディオトラックをパブリッシュしません。

戻り値の説明

0 は成功を示します。その他の値は失敗を示します。

isLocalAudioStreamPublished

オーディオトラックがパブリッシュされているかどうかをクエリします。

public abstract boolean isLocalAudioStreamPublished();

戻り値の説明

true:オーディオトラックがパブリッシュされています。false:オーディオトラックがパブリッシュされていません。

setDefaultSubscribeAllRemoteAudioStreams

リモートユーザーのオーディオトラックをデフォルトでサブスクライブするかどうかを指定します。

public abstract int setDefaultSubscribeAllRemoteAudioStreams(boolean sub);

このメソッドは、システムがリモートユーザーのオーディオトラックをデフォルトでサブスクライブするかどうかを構成します。これは新しく参加したユーザーのサブスクリプション動作に影響を与えます。特定の要件がない限り、true に設定することを推奨します。

呼び出しのタイミング

チャンネルに参加する前または後に呼び出すことができます。

  • 参加前:

    • SDK はデフォルトでリモートユーザーのオーディオトラックをサブスクライブします。これを変更するには、参加前にこのメソッドを呼び出します。

  • 参加後:

    • デフォルトのサブスクリプションを停止するには、setDefaultSubscribeAllRemoteAudioStreams(false) を呼び出します。その後に参加するユーザーはサブスクライブされません。

    • 特定のユーザーのサブスクリプションを再開するには、subscribeRemoteAudioStream を呼び出します。複数のユーザーに対しては、このメソッドを複数回呼び出します。

    • デフォルトのサブスクリプションを停止した後、setDefaultSubscribeAllRemoteAudioStreams(true) を呼び出すと、その後に参加するユーザーのみがサブスクライブされます。一時停止中に参加したユーザーは含まれません。

パラメーター

パラメーター

タイプ

説明

sub

boolean

リモートユーザーのオーディオトラックをデフォルトでサブスクライブするかどうかを指定します。有効な値:

  • true (デフォルト):リモートユーザーのオーディオトラックをサブスクライブします。

  • false:リモートユーザーのオーディオトラックをサブスクライブしません。

戻り値の説明

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

リモートユーザーのオーディオトラックのサブスクリプションを開始または停止します。有効な値:

  • true (デフォルト):再開します。

  • false:停止します。

戻り値の説明

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

すべてのリモートユーザーのオーディオトラックをサブスクライブするかどうかを指定します。有効な値:

  • true (デフォルト):すべてのリモートユーザーのオーディオトラックをサブスクライブします。

  • false:すべてのリモートユーザーのオーディオトラックをサブスクライブしません。

戻り値の説明

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

カメラトラックをパブリッシュするかどうかを指定します。有効な値:

  • true (デフォルト):カメラトラックをパブリッシュします。

  • false:カメラトラックをパブリッシュしません。

戻り値の説明

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

ビデオトラックをデフォルトで受信するかどうかを指定します。有効な値:

  • true(デフォルト):デフォルトの動作は許可することです。

  • false: デフォルトで受け付けられません。

戻り値

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

AliRtcVideoTrack

ビデオトラックのタイプ。

sub

boolean

指定されたユーザーのビデオストリームを受信するかどうか。

  • true:指定されたユーザーのビデオストリームを受信します。

  • false:指定されたユーザーのビデオストリームの受信を停止します。

戻り値の説明

  • 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

すべてのリモートビデオストリームをサブスクライブまたはサブスクライブを停止します。有効な値:

  • true (デフォルト値):再開します。

  • false:停止します。

戻り値の説明

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

AliRtcVideoTrack

ビデオストリームのタイプ。

subVideo

boolean

リモートユーザーのビデオストリームのサブスクリプションを開始または停止します。有効な値:

  • true (デフォルト):サブスクリプションを再開します。

  • false:操作を停止します。

subAudio

boolean

リモートユーザーのオーディオストリームのサブスクリプションを開始または停止します。有効な値:

  • true (デフォルト):サブスクリプションを再開します。

  • false:操作を停止します。

戻り値の説明

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

AliRtcVideoTrack

ビデオトラックのタイプ。

audioTrack

AliRtcAudioTrack

オーディオトラックのタイプ。

戻り値の説明

  • 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

AliRtcVideoTrack

サブスクライブするビデオストリーム。

sub_audio

boolean

リモートユーザーのオーディオストリームのサブスクリプションを開始または停止します。有効な値:

  • true (デフォルト):再開します。

  • false:操作を停止します。

sub

boolean

チャンネル間でリモートユーザーのストリームのサブスクリプションを開始または停止します。

戻り値の説明

0 は成功を示します。その他の値は失敗を示します。

subscribeRemoteDestChannelAllStream

チャンネル間ですべてのユーザーのストリームのサブスクリプションを開始または停止します。

public abstract int subscribeRemoteDestChannelAllStream(String channelId, AliRtcVideoTrack track, boolean sub_audio, boolean sub);

パラメーター

パラメーター

タイプ

説明

channelId

String

リモート先チャンネル ID。

videoTrack

AliRtcVideoTrack

サブスクライブするビデオストリームのタイプ。

sub_audio

boolean

リモートユーザーのオーディオストリームをサブスクライブするかどうか。

  • true: ターゲットチャンネル内のユーザーの音声ストリームにサブスクライブします。

  • false:ターゲットチャンネル内のユーザーのオーディオストリームのサブスクリプションを停止します。

sub

boolean

指定されたユーザーのストリームに対するチャンネル間サブスクリプションを停止または再開できます。

  • true:サブスクライブします。

  • false:サブスクライブ解除します。

戻り値の説明

  • 0:成功しました。

  • 0 以外:失敗しました。

setRemoteAudioVolume

取り込まれたオーディオストリームの再生ボリュームを調整します。

public abstract int setRemoteAudioVolume(String uid, int volume);

このメソッドを使用して、特定のユーザーのオーディオストリームのローカルデバイス上での再生音量を調整します。

説明

この設定はローカル再生品質にのみ影響します。

パラメーター

パラメーター

タイプ

説明

uid

String

ユーザー ID — 通常、アプリサーバーによって割り当てられる一意の識別子。

volume

int

再生音量。有効範囲:[0, 100]。

  • 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

ローカル音声データの送信を停止または再開します。有効な値:

  • true:無音オーディオフレームを送信します。

  • false (デフォルト):回復します。

mode

AliRtcMuteLocalAudioMode

ミュートモード。デフォルト:マイクミュートモード。

戻り値の説明

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

リモートユーザーのオーディオの再生を停止または再開します。有効な値:

  • true:再生を停止します。

  • false (デフォルト):再生を再開します。

戻り値の説明

0 は成功を示します。その他の値は失敗を示します。

muteAllRemoteAudioPlaying

すべてのリモートユーザーのオーディオ再生を停止または再開します。

public abstract int muteAllRemoteAudioPlaying(boolean mute);

このメソッドは、すべてのリモートユーザーのオーディオ再生を停止または再開します。

説明

これは再生のみを停止します。プルおよびデコードには影響しません。

呼び出しのタイミング

チャンネルに参加する前または後にこの設定を行うことができます。

パラメーター

パラメーター

タイプ

説明

mute

boolean

すべてのリモートユーザーのオーディオ再生を停止または再開します。有効な値:

  • true:再生を停止します。

  • false (デフォルト):再生を再開します。

戻り値の説明

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

チャンネル退出後の音声キャプチャデバイスの状態。有効な値:

  • true:チャンネル退出後に音声キャプチャデバイスをオンのままにします。

  • false (デフォルト):チャンネル退出後に音声キャプチャデバイスをオフにします。

戻り値の説明

0 は成功を示します。その他の値は失敗を示します。

stopAudioCapture

音声キャプチャを停止します。

public abstract int stopAudioCapture();

SDK はデフォルトで音声キャプチャを有効にします。特別な構成がない場合、プレビュー開始やチャンネル参加などの操作により、音声キャプチャが自動的に開始されます。音声キャプチャを停止するには、このメソッドを呼び出します。

関連コールバック

このメソッドを呼び出してローカル音声キャプチャのステータスを変更した後、onLocalAudioStateChanged コールバックを使用して変更を監視します。

戻り値の説明

0 は成功を示します。その他の値は失敗を示します。

setDefaultAudioRoutetoSpeakerphone

デフォルトのオーディオ出力がスピーカーであるかどうかを設定します。

public abstract int setDefaultAudioRoutetoSpeakerphone(boolean defaultToSpeakerphone);

このメソッドは、チャンネルに参加する前にデフォルトのオーディオルーティングデバイスを設定します。イヤホンまたはスピーカー出力を選択できます。SDK のデフォルトはスピーカーです。これを変更するには、参加前にこのメソッドを呼び出します。

SDK は内部的なオーディオルーティング優先順位を定義し、接続された周辺機器に基づいて自動的に切り替えます。優先順位:「有線ヘッドセット > Bluetooth ヘッドセット > ユーザー設定 > デフォルト設定」。したがって、周辺機器が接続されておらず、enableSpeakerphone を使用していない場合、デフォルト設定が適用されます。

オーディオルーティングの詳細については、「オーディオルーティング設定」をご参照ください。

モバイルデバイスは通常、イヤホンとスピーカーの 2 種類のオーディオルーティングオプションをサポートしています:

  • イヤホン:音量が低く、明瞭な音声を得るには電話を耳に近づけて保持する必要があります。通話に最適なプライバシー性の高いオプションです。

  • スピーカー:音量が高く、電話を耳に近づける必要がありません。ハンズフリー操作が可能になります。

関連メソッド

このメソッドはデフォルトのオーディオルーティング設定を変更します。enableSpeakerphone を使用して、現在のルーティングデバイスを設定します。

呼び出しのタイミング

チャンネルに参加する前または後に呼び出すことができます。

パラメーター

パラメーター

タイプ

説明

defaultToSpeakerphone

boolean

スピーカーをデフォルトで使用するかどうか。

  • true:スピーカーモード (デフォルト)。

  • false:イヤホンモード。

戻り値の説明

  • 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

オーディオ出力をイヤホンまたはスピーカーに設定します。有効な値:

  • true (デフォルト):スピーカーモード。

  • false:イヤホンモード。

戻り情報

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

時間間隔

  • 単位:ミリ秒。

  • デフォルト:300 ms。

  • 最小:≥10 ms。300~500 ms を推奨します。≤0 の値は、音量およびスピーカー表示を無効にします。

smooth

int

平滑化係数。値が高いほど平滑化が強まり、低いほど平滑化が弱まりリアルタイム性が向上します。

  • デフォルト:3。

  • 有効範囲:0~9。3 を推奨します。

reportVad

int

ローカル音声検出のトグル。

  • 1:有効。コールバックは AliRtcAudioVolumeObserver を介して配信されます。

  • 0 (デフォルト):無効。

戻り値の説明

0 は成功を示します。その他の値は失敗を示します。

enableEarBack

インイヤーモニターを有効にします。

public abstract int enableEarBack(boolean enable);

このメソッドは、インイヤーモニターを有効または無効にします。有線または Bluetooth ヘッドフォンを使用する場合、最高の結果を得るために有効化することを推奨します。

呼び出しのタイミング

チャンネルに参加する前または後に呼び出すことができます。

パラメーター

パラメーター

タイプ

説明

enable

boolean

インイヤーモニターを有効または無効にします。有効な値:

  • true:インイヤーモニターを有効にします。

  • false (デフォルト):インイヤーモニターを無効にします。

戻り値の説明

0 は成功を示します。その他の値は失敗を示します。

setEarBackVolume

インイヤーモニターの音量を設定します。

public abstract int setEarBackVolume(int volume) ;

このメソッドはインイヤーモニターの音量を設定します。enableEarBack が呼び出された後に有効になります。

呼び出しのタイミング

チャンネルに参加する前または後に呼び出すことができます。

パラメーター

パラメーター

タイプ

説明

volume

int

音量。有効範囲:[0–100]。デフォルト:100。

  • 0:ミュート。

  • 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:ミュート。

  • 100: 元のボリューム。

  • >100:音量を増加。

戻り値の説明

  • 0:成功しました。

  • 0 以外:失敗しました。

setRecordingVolume

録音音量を設定します。

public abstract int setRecordingVolume(int volume);

パラメーター

パラメーター

タイプ

説明

volume

int

録音音量。有効範囲:[0, 400]。

  • 0:ミュート。

  • 100:元の音量。

  • >100:音量を増加。

戻り値の説明

  • 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

AliRtcAudioEffectVoiceChangerMode

ボイスチェンジ効果モード。デフォルト: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

AliRtcAudioEffectReverbMode

リバーブ効果モード。デフォルト:AliRtcAudioEffectReverb_Off (無効)。

戻り値の説明

0 は成功を示します。その他の値は失敗を示します。

setAudioEffectReverbParamType

リバーブ効果のタイプおよび特定のパラメーターを設定します。

public abstract int setAudioEffectReverbParamType(AliRtcAudioEffectReverbParamType type, float value);

パラメーター

パラメーター

タイプ

説明

type

AliRtcAudioEffectReverbParamType

リバーブ効果パラメーター。

value

float

特定のパラメーター値。

戻り値の説明

0 は成功を示します。その他の値は失敗を示します。

setAudioEffectBeautifyMode

定義済みの音声美化効果モードを設定します。

public abstract int setAudioEffectBeautifyMode(AliRtcAudioEffectBeautifyMode mode);

このメソッドは、SDK 内で提供される組み込みの音声美化モードを構成します。音声ライブ配信、カラオケ、音声 SNS アプリなど、音声品質を向上させる必要があるシナリオに最適です。異なるモードを選択することで、豊かさや明瞭さなどの音声の知覚が変わり、リモートユーザーの聴取体験が向上します。

呼び出しのタイミング

チャンネルに参加する前または後に呼び出すことができます。

パラメーター

パラメーター

タイプ

説明

mode

AliRtcAudioEffectBeautifyMode

音声美化効果モード。列挙定義をご参照ください。

戻り値の説明

  • 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

AliRtcAudioEffectEqualizationBandFrequency

周波数帯域のインデックス — 中心周波数 (31 Hz ~ 16 kHz) に対応。

gain

float

ゲイン値 (dB 単位)。範囲:[-15, 15]。

戻り値の説明

0:成功しました。

0 以外:失敗しました。

addExternalAudioStream

外部オーディオストリームを追加します。

public abstract int addExternalAudioStream(AliRtcExternalAudioStreamConfig config);

このメソッドは外部オーディオストリームを追加します。以下の手順に従ってください:

  1. <a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#42b363024fich" id="20c33a9acb0ui">addExternalAudioStream</a> API を呼び出して外部オーディオストリームを追加し、外部オーディオストリーム ID を取得します。

  2. <a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#930f22d3dcdco" id="d3deb62b2fl0f">pushExternalAudioStreamRawData</a> を呼び出して、作成したオーディオストリームにオーディオデータを送信します。

  3. 通話終了時に、<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);

このメソッドは、指定されたオーディオストリームにデータをインポートします。以下の手順に従ってください:

  1. <a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#42b363024fich" id="8822f2932e9ep">addExternalAudioStream</a> を呼び出して外部オーディオストリームを追加し、外部オーディオストリーム ID を取得します。

  2. <a baseurl="t2309760_v6_0_0.xdita" data-node="4086566" data-root="16090" data-tag="xref" href="#930f22d3dcdco" id="880fe8cd02j10">pushExternalAudioStreamRawData</a> 操作を呼び出して、作成したオーディオストリームにオーディオデータをプッシュします。

  3. 通話を終了した場合、<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

AliRtcAudioAccompanyConfig

伴奏再生構成 — ローカル再生のみ、マイク置換、ループ回数、再生位置、音量を含む。

戻り値の説明

  • 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

リモートユーザーへ効果音のオーディオ ストリームを取り込むかどうか。有効な値:

  • true:効果音オーディオストリームをリモートユーザーにアップストリームします。

  • false (デフォルト): リモートユーザーに効果音の音声ストリームを送信しません。

戻り値の説明

成功すると 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

AliRtcRecordType

レコードタイプ。

recordFormat

AliRtcRecordFormat

フォーマットタイプ (WAV、AAC、MP4)。

filePath

String

録画ファイル名。

audioConfig

AliRtcRecordAudioConfig

オーディオ構成。

videoConfig

AliRtcRecordVideoConfig

ビデオ構成。

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

AliRtcVideoCanvas

レンダリングパラメーター。レンダリングウィンドウおよび方法を含む。

track

AliRtcVideoTrack

ビデオトラックのタイプ。

戻り値の説明

0 の値はメソッド呼び出しが成功したことを示します。それ以外の値はメソッド呼び出しが失敗したことを示します。

setRemoteViewConfig

リモートユーザーのビデオストリームのレンダリングウィンドウおよび描画パラメーターを構成します。

public abstract int setRemoteViewConfig(AliVideoCanvas canvas, String uid,AliRtcVideoTrack track);

このメソッドは、指定されたリモートユーザーのビデオストリームに表示ビューをバインドし、そのユーザーのビデオのローカルレンダリングモード、ミラー化モード、回転角度を構成します。この設定は、ローカルユーザーに表示されるビデオにのみ影響します。ローカルプレビュー表示を構成するには、setLocalViewConfig を呼び出します。

  • AliRtcVideoCanvas の view パラメーターが空の場合、レンダリングは停止します。

  • 再生中に AliRtcVideoCanvas の renderMode パラメーターをリセットするには、他のすべてのパラメーターを変更せずに renderMode のみを変更します。

  • 再生中に AliRtcVideoCanvas の mirrorMode パラメーターをリセットするには、他のすべてのパラメーターを変更せずに mirrorMode のみを変更します。

呼び出しのタイミング

リモートユーザーのビデオストリームが利用可能になったときにトリガーされる onRemoteTrackAvailableNotify コールバックを受信した後、つまりリモートユーザーのビデオストリームが利用可能になったときに、このメソッドを呼び出します。

パラメーター

パラメーター

タイプ

説明

canvas

AliRtcVideoCanvas

レンダリングパラメーター。レンダリングウィンドウおよび方法を含む。

uid

String

ユーザー ID。

track

AliRtcVideoTrack

設定するビデオトラックのタイプ。

戻り値の説明

戻り値が 0 の場合、成功を示します。それ以外の値は失敗を示します。

setCameraCapturerConfiguration

カメラキャプチャのプリファレンスを設定できます。たとえば、カメラの向きやフレームレートなどです。

public abstract int setCameraCapturerConfiguration(AliEngineCameraCapturerConfiguration cameraCapturerConfiguration);

このメソッドは、カメラキャプチャのプリファレンス (例:カメラの向きやフレームレートなど) を構成します。

呼び出しのタイミング

カメラを開く前にこのメソッドを呼び出します。たとえば、次の呼び出しの前です:

  • startPreview (プレビュー開始)

  • joinChannel (チャンネルへの参加)

パラメーター

パラメーター

タイプ

説明

cameraCapturerConfiguration

AliEngineCameraCapturerConfiguration

カメラキャプチャのプリファレンス。カメラの向きおよびフレームレートを含む。デフォルト値:

  • プリファレンス:

    • ALIRTC_CAPTURER_OUTPUT_PREFERENCE_AUTO:SDK が自動的にキャプチャパラメーターを調整します。

    • ALIRTC_CAPTURER_OUTPUT_PREFERENCE_PREVIEW:高精細プレビュー。プレビュー品質を優先します。

    • ALIRTC_CAPTURER_OUTPUT_PREFERENCE_PERFORMANCE:公開ストリームに最も近い解像度を選択します。デバイスのパフォーマンスを優先します。

  • cameraDirection:AliRtcCameraDirection.CAMERA_FRONT (デフォルトの前面カメラ)。

  • fps:-1 はエンコーダーの内部フレームレート設定を使用することを意味します (デフォルトは 15)。

  • cameraCaptureProfile:0 は特定のビデオキャプチャ解像度を指定します。

  • disableVideoCaptureReverse:アスペクト比に基づいてキャプチャされたビデオフレームを反転させるかどうか。-1:デフォルト、0:無効、1:有効。

  • captureObserverOriginal:オリジナルのビデオフレームデータをコールバックするかどうか。-1:デフォルト、0:無効、1:有効。

  • textureEncode:テクスチャエンコーディングを使用するかどうか。-1:デフォルト、0:無効、1:有効。

  • cameraTextureCapture:カメラがテクスチャキャプチャを有効にするかどうか。-1:デフォルト、0:無効、1:有効。

-1 は SDK の内部デフォルト設定を使用することを意味します。

戻り値の説明

戻り値が 0 の場合、成功を示します。それ以外の値は失敗を示します。

enableLocalVideo

ローカルビデオキャプチャを無効または有効にします。

public abstract int enableLocalVideo(boolean enable);

このメソッドはローカルビデオキャプチャを制御します。無効にすると、ローカルプレビューおよびストリームアップストリーミングではビデオデータが生成されませんが、リモートビデオの受信には影響しません。このメソッドを使用してローカルカメラキャプチャを無効にすると、ローカルプレビューおよびリモート視聴者向けに最後にキャプチャされたフレームがフリーズします。

説明

ローカルビデオキャプチャはデフォルトで有効になっています。

呼び出しのタイミング

このメソッドは、チャンネルに参加する前または後に呼び出すことができます。

関連コールバック

このメソッドを正常に呼び出した後、onUserVideoEnabled コールバックがリモートユーザーに対してトリガーされます。

パラメーター

パラメーター

タイプ

説明

enable

boolean

ローカルビデオキャプチャを無効または再度有効にします。有効な値:

  • true (デフォルト):再び有効にします。

  • false:無効にします。

戻り値

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

ローカルビデオデータの送信を停止または再開します。有効な値:

  • true:停止します。

  • false (デフォルト):再開します。

track

AliRtcVideoTrack

パブリッシュステータスを変更するビデオトラックのタイプ。

戻り値の説明

0 の値は成功を示します。

isCameraOn

カメラが有効になっているかどうかを判定します。

public abstract boolean isCameraOn();

戻り値

true:カメラが有効です。false:カメラが無効です。

setVideoEncoderConfiguration

ビデオエンコーディングプロパティを設定します。

public abstract void setVideoEncoderConfiguration(AliRtcVideoEncoderConfiguration config);

このメソッドは、解像度、フレームレート、ビットレート、ビデオの向きなどのビデオストリームのエンコーディングパラメーターを設定します。すべてのビデオシナリオでこのメソッドを呼び出すことを推奨します。

説明

各パラメーターには有効な値の範囲があります。有効範囲外の値を設定した場合、SDK が自動的に調整します。そのため、実際の構成は設定内容と異なる場合があります。

呼び出しのタイミング

このメソッドは、チャンネルに参加する前または後に呼び出すことができます。カメラストリームのビデオエンコーディングプロパティをセッションごとに 1 回だけ設定する場合、チャンネルに参加する前にこのメソッドを呼び出すことを推奨します。

制限事項

このメソッドの mirrorMode パラメーターと setVideoMirrorMode メソッドの両方がビデオストリームのミラー化を設定します。どちらか一方のみを使用することを推奨します。両方を使用すると、ミラー化効果が重複し、ミラー化が失敗または不正になる可能性があります。

パラメーター

パラメーター

タイプ

説明

config

AliRtcVideoEncoderConfiguration

事前に定義されたエンコーディングプロパティ。デフォルト値:

  • dimensions:[640,480]。最大:1920×1080。解像度を設定します。

  • frameRate:15

  • bitrate:0 は、SDK がビデオ解像度およびビットレートに基づいて適切なエンコーディングビットレートを計算することを意味します。

  • keyFrameInterval:グループ・オブ・ピクチャーズ (GOP) 間隔。単位:ミリ秒。デフォルト:0 は SDK 制御を意味します。

  • forceStrictKeyFrameInterval:エンコーダーが設定されたキーフレーム間隔を厳密に遵守するかどうか。デフォルト:false。

  • mirrorMode:0

  • orientationMode:0

  • rotation:0

  • codecType:AliRtcVideoCodecTypeDefault

  • encoderType:AliRtcVideoEncodeCodecTypeDefault

  • seiForceFrontIFrame:-1

  • enableDynamicEncode:-1

  • disableDipenseResolutionChange:-1

  • enableDowngrade:-1

  • enableH264BFrame:-1

  • enableHevcBFrame:-1

-1 は SDK の内部デフォルト設定を使用することを意味します。

setVideoDecoderConfiguration

ビデオデコーディングプロパティを設定します。

    public abstract void setVideoDecoderConfiguration(AliRtcVideoDecoderConfiguration config);

このメソッドは、ビデオストリームのデコードのためのビデオパラメーターを構成します。

呼び出しのタイミング

チャンネルに参加する前にこのメソッドを呼び出すことができます。

パラメーター

名前

タイプ

説明

config

AliRtcVideoDecoderConfiguration

事前に定義されたデコードプロパティ。デフォルト値:

  • codecType:AliRtcVideoCodecTypeDefault。デコードタイプ。ソフトウェアデコード、ハードウェアデコード、ハードウェアテクスチャデコードを含む。

  • enableDecoderBframe:-1。B フレームを使用するかどうか。これを有効にすると、バッファーのキューが追加され、遅延が増加します。送信者が B フレームを使用している場合にこのオプションを有効にします。それ以外の場合、デコードに失敗します。

  • textureBindContext:-1。テクスチャデコードコンテキストのバインドをサポートするかどうか。

-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

フラッシュをオンにするかどうか。

  • true:フラッシュをオンにします。

  • false:フラッシュをオフにします。

戻り値の説明

  • 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:無効にします。

戻り値の説明

  • true:呼び出しは成功しました。

  • false:呼び出しは失敗しました。

setVideoMirrorMode

プレビューとアップストリーミングのビデオミラーリングを設定できます。

public abstract int setVideoMirrorMode(AliRtcVideoPipelineMirrorMode mirrorMode);

ローカルビデオプレビューおよび公開されたビデオストリームのミラーリングを有効または無効にします。

説明

このメソッドは setLocalViewConfig および setVideoEncoderConfiguration よりも優先されます。ビデオミラーリングモードを設定するには、このメソッドを使用することを推奨します。

呼び出しのタイミング

チャンネルに参加する前または後に動的に設定できます。SDK は状態を記録し、プレビューおよびエンコーディング (ストリームアップストリーミング) がアクティブなときにビデオ操作を適用します。

制限事項

このメソッドは、setLocalViewConfig および setVideoEncoderConfiguration の mirrorMode 設定と重複します。これらのメソッドのいずれか 1 つのみを使用できます。

パラメーターの説明

パラメーター

タイプ

説明

mirrorMode

AliRtcVideoPipelineMirrorMode

ミラーリングモード。

戻り値の説明

  • 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

外部ビデオ入力ソースを有効にします。有効な値:

  • true:有効にします。

  • false (デフォルト):無効にします。

useTexture

boolean

テクスチャモードを使用するかどうか。有効な値:

  • true:使用します。

  • false (デフォルト):使用しません。

type

AliRtcVideoTrack

ビデオストリームのタイプ。

renderMode

AliRtcRenderMode

レンダリングモード。

pushExternalVideoFrame

ビデオデータを入力します。

public abstract int pushExternalVideoFrame(AliRtcRawDataFrame aliRawDataFrame,AliRtcVideoTrack streameType);

パラメーター

パラメーター

タイプ

説明

aliRawDataFrame

AliRtcRawDataFrame

フレームデータ。

streameType

AliRtcVideoTrack

ビデオストリームのタイプ。

戻り値

操作が成功した場合は 0 を返します。それ以外の場合は、エラーコードが返されます。

startPublishLiveStream

リレーライブストリーミングを開始します。

public abstract int startPublishLiveStream(String streamUrl,AliRtcLiveTranscodingParam transcodingParam);

パラメーター

パラメーター

タイプ

説明

streamUrl

String

アップストリーミング URL。

transcodingParam

AliRtcLiveTranscodingParam

ストリームアップストリーミングパラメーター。

返却手順

成功すると 0 を返します。失敗すると 0 以外の値を返します。

updatePublishLiveStream

リレーライブストリームのパラメーターを更新します。

public abstract int updatePublishLiveStream(String streamUrl,AliRtcLiveTranscodingParam transcodingParam);

パラメーター

パラメーター

タイプ

説明

streamUrl

String

アップストリーミング URL。

transcodingParam

AliRtcLiveTranscodingParam

ストリームアップストリーミングパラメーター。

戻り値の説明

戻り値が 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

AliRtcConnectionStatus

現在のネットワーク接続ステータス。

reason

AliRtcConnectionStatusChangeReason

ネットワーク接続ステータス変更の理由。

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 は成功を示します。その他の値は失敗を示し、エラーコードを返します。詳細については、「エラーコード」をご参照ください。一般的なエラーコードは次のとおりです:

  • ERR_JOIN_BAD_APPID:AppId が存在しません。

  • ERR_JOIN_INVALID_APPID:AppId が無効です。

  • ERR_JOIN_BAD_CHANNEL:チャンネルが存在しません。

  • ERR_JOIN_INVALID_CHANNEL:チャンネルが無効です。

  • ERR_JOIN_BAD_TOKEN:トークンが存在しません。

  • ERR_JOIN_TIMEOUT:チャンネル参加タイムアウト。

  • ERR_JOIN_BAD_PARAM:チャンネル参加パラメーターエラー。

  • ERR_JOIN_FAILED:チャンネル参加失敗。

  • ERR_JOIN_CONFIG_INVALID:無効な参加パラメーター (例:空のトークン)。

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

AliRtcStats

チャンネル内のセッション統計の概要。

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

AliRtcUserOfflineReason

ユーザーがオフラインになった理由。

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

AliRtcAudioTrack

変更後のリモートユーザーのオーディオストリーム。

videoTrack

AliRtcVideoTrack

変更後のリモートユーザーのビデオストリーム。

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

AliRtcPublishState

以前のアップストリーミングステータス。

newState

AliRtcPublishState

現在のアップストリーミングステータス。

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

AliRtcSubscribeState

以前のサブスクリプションステータス。

newState

AliRtcSubscribeState

現在のサブスクリプションステータス。

elapseSinceLastState

int

最後の状態変更からの経過時間。

channel

String

現在のチャンネル ID。

onUserAudioMuted

このコールバックは、リモートユーザーが音声データの送信を停止したときに呼び出されます。

public void onUserAudioMuted(String uid ,boolean isMute);

パラメーター

パラメーター

タイプ

説明

uid

String

muteAudio を実行したユーザー。

isMute

boolean

ミュートされているかどうか。有効な値:

  • true:ミュートされています。

  • false:ミュートされていません。

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

AliRtcPublishState

以前のアップストリーミングステータス。

newState

AliRtcPublishState

現在のアップストリーミングステータス。

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

AliRtcSubscribeState

以前のサブスクリプションステータス。

newState

AliRtcSubscribeState

現在のサブスクリプションステータス。

elapseSinceLastState

int

最後の状態変更からの経過時間。

channel

String

現在のチャンネル ID。

onUserVideoMuted

このコールバックは、リモートユーザーが黒いビデオフレームを送信したときに呼び出されます。

public void onUserVideoMuted(String uid, boolean isMute);

パラメーター

パラメーター

タイプ

説明

uid

String

enableLocalVideo を実行したユーザー。

isMute

boolean

黒いフレームを送信するかどうか。有効な値:

  • true:黒いフレームをパブリッシュします。

  • false:通常のフレームをパブリッシュします。

onUserVideoEnabled

このコールバックは、リモートユーザーがカメラキャプチャを無効にしたときに呼び出されます。

public void onUserVideoEnabled(String uid, boolean isMute);

パラメーター

パラメーター

タイプ

説明

uid

String

リモートユーザー ID。

isMute

boolean

カメラストリームキャプチャが有効かどうか。有効な値:

  • true:カメラストリームキャプチャを有効にします。

  • false:カメラストリームキャプチャを無効にします。

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

AliRtcStats

セッション統計。

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

AliRtcVideoTrack

受信したビデオストリームのタイプ。

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

AliRtcVideoTrack

受信したビデオストリームのタイプ。

timeCost

int

チャンネルに参加してから最初のビデオパケットが送信されるまでの経過時間 (ミリ秒単位)。

onFirstVideoPacketSent

このコールバックは、最初のビデオパケットが送信されたときに呼び出されます。

public void onFirstVideoPacketSent(String uid, AliRtcVideoTrack videoTrack, int timeCost);

このコールバックは、ローカルユーザーが最初のローカルビデオパケットを正常に送信したことを示します。開発者は、ビデオリンクの確立速度を監視し、ローカルデバイスのパフォーマンスを評価し、「ビデオ送信済み」の表示やキャプチャポリシーの調整など、ユーザーエクスペリエンスを最適化するのに役立ちます。

パラメーター

パラメーター

タイプ

説明

uid

String

リモートユーザー ID。

videoTrack

AliRtcVideoTrack

受信したビデオストリームのタイプ。

timeCost

int

チャンネルに参加してから最初のビデオパケットが送信されるまでの経過時間 (ミリ秒単位)。

onFirstAudioPacketSent

このコールバックは、最初のオーディオパケットが送信されたときに呼び出されます。

public void onFirstAudioPacketSent(String uid, AliRtcAudioTrack track, int timeCost);

このコールバックは、最初のローカルオーディオパケットが正常に送信されたことを通知します。このコールバックを使用して、オーディオリンクの確立速度を監視し、ローカルデバイスとシステムのパフォーマンスを評価し、ユーザーエクスペリエンスを最適化できます。

パラメーター

パラメーター

タイプ

説明

uid

String

リモートユーザー ID。

track

AliRtcAudioTrack

受信したオーディオストリームのタイプ。

timeCost

int

チャンネルに参加してから最初のオーディオパケットが送信されるまでの経過時間 (ミリ秒単位)。

onFirstVideoPacketReceived

このコールバックは、ローカルユーザーがリモートユーザーから最初のビデオパケットを受信したときに呼び出されます。

public void onFirstVideoPacketReceived(String uid, AliRtcVideoTrack videoTrack, int timeCost)

このインターフェイスは、ローカルユーザーがリモートユーザーから最初のビデオパケットを受信したときにトリガーされるコールバックです。このコールバックを使用して、ビデオリンクの確立速度を監視したり、ストリーム再生用の UI コンポーネントを更新したりできます。

パラメーター

パラメーター

タイプ

説明

uid

String

リモートユーザー ID。

videoTrack

AliRtcVideoTrack

受信したビデオストリームのタイプ。

timeCost

int

ローカルユーザーがチャンネルに参加してから最初のビデオパケットを受信するまでの経過時間 (ミリ秒単位)。

onFirstAudioPacketReceived

最初のオーディオパケットが受信されたときに呼び出されるコールバックです。

public void onFirstAudioPacketReceived(String uid, AliRtcAudioTrack track, int timeCost)

このコールバックは、ローカルユーザーが最初のリモートオーディオパケットを受信したときに通知します。開発者は、オーディオリンクの確立速度を監視し、ネットワーク品質を評価し、「オーディオ接続済み」メッセージの表示や再生ポリシーの調整など、ユーザーエクスペリエンスを最適化するのに役立ちます。

パラメーター

パラメーター

タイプ

説明

uid

String

リモートユーザー ID。

track

AliRtcAudioTrack

受信したオーディオストリームのタイプ。

timeCost

int

ローカルユーザーがチャンネルに参加してから最初のオーディオパケットを受信するまでの経過時間 (ミリ秒単位)。

onFirstRemoteAudioDecoded

このコールバックは、最初のリモートオーディオフレームがデコードされたときに呼び出されます。

public void onFirstRemoteAudioDecoded(String uid, AliRtcAudioTrack track, int elapsed)

このコールバックは、リモートユーザーのオーディオストリームが正常にデコードされ、再生準備が整ったことを示します。これを使用して、最初のフレームの遅延を監視したり、再生ストリームに関連する UI コンポーネントを更新したりできます。

パラメーター

パラメーター

タイプ

説明

uid

String

リモートユーザー ID。

track

AliRtcAudioTrack

受信したオーディオストリームのタイプ。

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

AliRtcVideoTrack

ビデオストリームのタイプ (カメラストリームや画面ストリームなど)。

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、発話状態、音量を含む。

  • UID が 0 の場合はローカルスピーカーを示します。

  • UID が 1 の場合はすべてのリモートユーザーのミキシングされたオーディオ音量を示します。

  • その他の値は、指定された 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

AliRtcAudioFrame

オーディオデータ。

戻り値の説明

  • true:操作は成功しました。

  • false:失敗しました。

onProcessCapturedAudioFrame

3A 後のデータコールバック

boolean onProcessCapturedAudioFrame(AliRtcAudioFrame frame);

このコールバックは 3A 処理後のオーディオデータを提供しますが、デフォルトでは無効になっています。このオーディオデータを受信するには:

  • enableAudioFrameObserver(true, audioSource, config) メソッドを呼び出し、audioSource パラメーターを指定することで、このコールバックを有効にできます。また、config パラメーターを使用して、サンプルレート、サウンドチャンネル数、読み取り/書き込みモードなどのプロパティを設定することもできます。

  • registerAudioFrameObserver を呼び出して、オーディオデータを受信するオブジェクトを登録できます。

説明

このインターフェイスは、サンプルレート、サウンドチャンネル数、および読み取り/書き込みモードの構成をサポートします。

使用制限

オーディオの異常が発生する可能性があるため、このコールバック関数で時間のかかる操作を実行しないでください。

パラメーター

パラメーター

タイプ

説明

frame

AliRtcAudioFrame

オーディオデータ。

戻り値の説明

  • true:操作は成功しました。

  • false:操作は失敗しました。

onPublishAudioFrame

ストリーミング オーディオ 取り込み コールバック

boolean onPublishAudioFrame(AliRtcAudioFrame frame);

このコールバックを使用すると、ストリームアップストリーミング中にオーディオフレームにアクセスできます。デフォルトでは無効になっています。有効にするには:

  • enableAudioFrameObserver(true, audioSource, config) を呼び出すことで、このコールバックを有効にできます。また、config パラメーターを使用して、サンプルレート、サウンドチャンネル数、読み取り/書き込みモードを指定することもできます。

  • registerAudioFrameObserver を呼び出して、オーディオフレームオブザーバーを登録します。

説明

この API では、サンプルレートとサウンドチャンネル数を設定できますが、読み取り専用モードでのみ動作します。

使用制限

オーディオの異常が発生する可能性があるため、このコールバック関数で時間のかかる操作を実行しないでください。

パラメーター

パラメーター

タイプ

説明

frame

AliRtcAudioFrame

オーディオデータ

戻り値の説明

  • 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

AliRtcAudioFrame

オーディオデータ。

戻り値の説明

  • 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

AliRtcVideoSample

ビデオフレームデータ。

戻り値の説明

このメソッドは、新しいテクスチャ 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

AliRtcVideoSourceType

ビデオソースのタイプ。

videoSample

AliRtcVideoSample

ビデオデータ。

戻り値

  • 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

AliRtcVideoSourceType

ビデオストリームのタイプ

videoRawData

AliRtcVideoSample

ビデオ生データ

戻り値の説明

  • 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

AliRtcVideoSourceType

ビデオストリームのタイプ

videoSample

AliRtcVideoSample

生のビデオデータ

戻り値の説明

  • 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

AliRtcLiveTranscodingState

バイパスライブストリーミングの状態。

errorCode

AliEngineLiveTranscodingErrorCode

エラーコード。

onPublishTaskStateChanged

このコールバックは、リレーライブストリーミングタスクのステータスが変更されたときに呼び出されます。

public void onPublishTaskStateChanged(String streamUrl, AliRtcTrascodingPublishTaskStatus state);

パラメーター

パラメーター

タイプ

説明

streamUrl

String

アップストリーミング URL。

state

AliRtcTrascodingPublishTaskStatus

バイパスライブストリーミングタスクのステータス。

onNetworkQualityChanged

ネットワーク品質変更コールバック。

public void onNetworkQualityChanged(String uid, AliRtcNetworkQuality upQuality, AliRtcNetworkQuality downQuality);

パラメーター

パラメーター

タイプ

説明

uid

String

ユーザー ID。空の値は、ローカルユーザーのアップロードおよびダウンロードネットワークステータスを示します。

upQuality

AliRtcNetworkQuality

アップストリームネットワークの品質。

downQuality

AliRtcNetworkQuality

ダウンストリームネットワークのステータス。

onNetworkQualityProbeTest

ネットワーク品質検出コールバックは、検出開始から約 3 秒後に提供されます。

public void onNetworkQualityProbeTest(AliRtcNetworkQuality quality){}

パラメーター

パラメーター

タイプ

説明

quality

AliRtcNetworkQuality

ネットワーク品質。

onNetworkQualityProbeTestResult

このコールバックは、ネットワーク品質プローブの結果を報告します。プローブ開始から約 30 秒後にトリガーされます。

public void onNetworkQualityProbeTestResult(int code, AliRtcEngine.AlirtcNetworkQualityProbeResult result){}

パラメーター

パラメーター

タイプ

説明

code

int

戻り値。0 はプローブが成功したことを示します。-1 はネットワーク接続不良によりプローブが失敗したことを示します。

result

AlirtcNetworkQualityProbeResult

ネットワーク品質。

onSnapshotComplete

スナップショット結果コールバックインターフェイス。

public void onSnapshotComplete(String userId, AliRtcVideoTrack trackType, Bitmap bitmap, boolean success)

この API は、スクリーンショットの結果と詳細を返します。

パラメーター

パラメーター

タイプ

説明

userId

String

ユーザー ID

trackType

AliRtcVideoTrack

スクリーンショット用のビデオストリームタイプ。

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

  • 0:未作成

  • 1:コレクション実行中

  • 2:コレクションシャットダウン中

  • 3:コレクションシャットダウン

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

AliRtcAudioVolumeObserver

ボリュームデータを受信するオブジェクト。

unRegisterAudioVolumeObserver

音量エクスポートオブジェクトの登録を解除します。

public abstract void unRegisterAudioVolumeObserver();

このメソッドは、音量データ出力オブジェクトの登録を解除し、registerAudioVolumeObserver に対応します。

呼び出しのタイミング

registerAudioVolumeObserver でオーディオデータ受信オブジェクトを登録した後、このメソッドを呼び出して登録を解除します。

enableAudioFrameObserver

オーディオコールバックパラメーターを設定できます。

public abstract int  enableAudioFrameObserver(boolean enable, AliRtcAudioSource audioSource, AliRtcAudioFrameObserverConfig config);

このメソッドは、指定されたタイプのオーディオデータコールバックを有効または無効にし、開発者がさまざまな生およびエンコードされたオーディオデータを取得できるようにします。デフォルトでは無効になっています。有効にするには、このメソッドを呼び出します。

説明

特定の AliRtcAudioSource のオーディオデータコールバックを有効にする場合、registerAudioFrameObserver も呼び出してオーディオデータ受信オブジェクトを提供する必要があります。

呼び出しのタイミング

オーディオデータを取得する必要があるときにこのメソッドを呼び出します。

パラメーター

パラメーター

タイプ

説明

enable

boolean

オーディオデータコールバックを許可するかどうか。

audioSource

AliRtcAudioSource

コールバックデータソースタイプ。キャプチャ後 (0)、3A 後 (1)、アップストリーミング (2)、再生 (3)、アップストリーミング/再生ミックス後 (4)、プルされたオーディオデータ (5) を含む。

説明
  • アップストリームされたオーディオデータとアップストリーム/再生ミックス後のオーディオデータは、読み取り専用モードのみをサポートします。

  • プルされたオーディオデータは、サンプルレートやチャンネル数などのオーディオパラメーターの変更をサポートしていません。

config

AliRtcAudioFrameObserverConfig

オーディオコールバックパラメーター設定。サンプルレート、サウンドチャンネル数、コールバック読み取り/書き込みモード (読み取り専用、書き込み専用、読み取り/書き込み) を含む。null の場合、デフォルトは (48000, 1, ReadOnly)。

戻り値

  • 0:操作は成功しました。

  • <0:操作は失敗しました。

registerAudioFrameObserver

オーディオデータコールバックを登録します。

public abstract void registerAudioFrameObserver(AliRtcAudioFrameObserver observer);

このメソッドは、オーディオコールバックデータを受信するための受信オブジェクトを登録します。

呼び出しのタイミング

SDK が onCapturedAudioFrameonProcessCapturedAudioFrameonPublishAudioFrameonPlaybackAudioFrame、または onRemoteUserAudioFrame をトリガーしてさまざまな種類のオーディオデータを取得する必要があるときに、このメソッドを呼び出します。登録を解除するには、null を指定してこのメソッドを再度呼び出します。

制限事項

enableAudioFrameObserver を呼び出して、特定の AliRtcAudioSource のコールバックを有効にする必要があります。そうしないと、提供されたオブザーバーはデータを受信しません。

パラメーター

パラメーター

タイプ

説明

observer

AliRtcAudioFrameObserver

オーディオデータコールバック受信オブジェクトインスタンス。登録解除するには null を渡します。

registerVideoSampleObserver

ビデオデータをエクスポートするためのオブジェクトを登録します。

public abstract void registerVideoSampleObserver(AliVideoObserver observer);

このメソッドは、ビデオデータをエクスポートするためのオブジェクトを登録します。unRegisterVideoSampleObserver を呼び出してオブジェクトの登録を解除します。

呼び出しのタイミング

生のビデオデータ (YUV または RGBA 形式など) を取得するには、このメソッドを呼び出してビデオデータオブザーバーを登録し、さまざまな段階でビデオデータを取得します。AliRtcVideoObserver はビデオデータオブザーバークラスです。

関連コールバック

ビデオデータ出力オブザーバーを正常に登録した後、SDK はキャプチャされた各ビデオフレームに対して AliRtcVideoObserver インターフェイスに実装したコールバックをトリガーします。ビジネスニーズに基づいて適切なコールバックを実装します:

  • onLocalVideoSample:ローカルでキャプチャされたビデオデータを配信するコールバック。

  • onRemoteVideoSample:リモートビデオデータを配信するコールバック。

  • onPreEncodeVideoSample:エンコーディング前にローカルビデオデータを配信するコールバック。

パラメーター

パラメーター

タイプ

説明

observer

AliRtcVideoObserver

ビデオデータ出力オブジェクト。

戻り値の説明

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

AliRtcTextureObserver

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

AliRtcVideoTrack

キャプチャするビデオストリームタイプ。以下のみをサポートします:

  • AliRtcVideoTrackCamera:カメラストリーム。

  • AliRtcVideoTrackScreen:画面共有ストリーム。

返品手順

  • 0:メソッド呼び出しは成功しました。スクリーンショットの結果は onSnapshotComplete コールバックによって提供されます。

  • 0 以外の値:操作は失敗しました。エラーコードが返されます。

setLogDirPath

SDK ログファイルを保存するパスを設定します。

public static int setLogDirPath(String logDirPath);

パラメーター

パラメーター

タイプ

説明

logDirPath

String

ログファイルを保存する絶対パス。デフォルト:アプリディレクトリ。

戻り値の説明

戻り値が 0 の場合、成功を示します。0 以外の値は失敗を示します。:ログの損失を避けるため、他の SDK メソッドを呼び出す前にこのメソッドを呼び出してください。指定されたパスが存在し、書き込み可能であることを確認してください。

setLogLevel

ログレベルを設定します。

public static void setLogLevel(AliRtcLogLevel logLevel);

パラメーター

パラメーター

タイプ

説明

logLevel

AliRtcLogLevel

ログレベル。

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 はカスタムメッセージの送受信をサポートしており、音声および映像ストリームとともにリアルタイムメッセージデータを送信できます。このメソッドを使用して、リアルタイム制御コマンド、状態同期データ、またはその他のビジネス関連メッセージを送信します。使用方法の詳細については、「カスタムメッセージの送受信」をご参照ください。

説明
  • カスタムメッセージチャンネルはデフォルトで無効になっています。この機能を使用するには、setParameter API を `"{\"data\":{\"enablePubDataChannel\":true,\"enableSubDataChannel\":true}}"` で呼び出して有効にします。この機能は、チャンネルに参加する前または後に有効にできます。

  • メッセージには、テキストなどの任意のデータを含めることができます。

関連コールバック

  • 送信者がカスタムメッセージチャンネルを正常に有効にした後、このメソッドを呼び出してカスタムメッセージを送信できます。受信者は onDataChannelMessage コールバックを通じてそれらを取得します。

制限事項

  • ストリーマーはメッセージを送受信できます。視聴者はメッセージを受信することしかできません。

  • setParameter を呼び出してカスタムメッセージチャンネルを有効にする必要があります。

  • データ送信には以下の制限があります:

    • 最大ビットレートは 30 KB/秒。

    • 1 秒あたり最大 60 パケットで、各パケットのサイズは最大 1 KB。

パラメーター

パラメーター

タイプ

説明

Msg

AliRtcDataChannelMsg

メッセージコンテンツ。

返品手順

  • 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

AliRtcScreenShareEncoderConfiguration

解像度、フレームレート、ビットレート、ビデオの向きなど、事前に定義された画面共有エンコーディングプロパティ。

setGlobalEnvironment

グローバル環境を設定します。

public int setGlobalEnvironment(GlobalEnv env);

このメソッドは、SDK のグローバル動作環境を指定します。これは主にログアップロードイベントトラッキングデータの送信先を決定します:

  • 中国本土環境に設定すると、ログとイベントトラッキングデータは中国本土のデータセンターにアップロードされます。

  • 海外環境に設定すると、データはシンガポールなど中国以外のデータセンターにルーティングされます。

呼び出しのタイミング

このメソッドは、アプリケーションの初期化の早い段階 (例:Application の onCreate() メソッド内) で呼び出すことができます。

制限事項

  • この設定はグローバルであり、一度だけ呼び出す必要があります。

  • 複数回呼び出すと、以前の設定が上書きされ、確立された接続やセッションの状態に影響を与える可能性があります。実行中に動的に切り替えないでください。

AlivcEnv.GlobalEnv env = ENV_DEFAULT; // 海外の場合は ENV_SEA を使用
AlivcBase.getEnvironmentManager().setGlobalEnvironment(env);

パラメーター

パラメーター

タイプ

説明

env

GlobalEnv

グローバル環境を指定します。サポートされている列挙値:
ENV_DEFAULT:中国本土環境。
ENV_SEA:海外環境 (例:シンガポール)。




戻り値
int 型の結果コードを返します:

  • 0:成功を示します。

  • 0 の値は失敗を示します。