TRTCMeetingは、Tencent CloudのTRTCおよびIMサービスを基に組み合わせたコンポーネントで、以下の機能をサポートしています。
説明:TUIKitシリーズコンポーネントはTencent CloudのTRTCとIMという2つの基本的なPaaSサービスを同時に使用し、TRTCをアクティブにした後、IMサービスを同期的にアクティブにすることができます。IMサービスの課金ルールの詳細については、Instant Messagingの料金説明をご参照ください。TRTCをアクティブにすると、デフォルトでは、100DAUまでサポートするIM SDK体験版もアクティブになります。
TRTCMeetingは、1つのオープンソースのClassであり、Tencent Cloudの2つのクローズドソースのSDKに依存しています。具体的な実現プロセスは、多人数オーディオビデオルーム(Flutter)をご参照ください。
API | 説明 |
---|---|
sharedInstance | シングルトンオブジェクトを取得します。 |
destroySharedInstance | シングルトンオブジェクトを破棄します。 |
registerListener | イベント監視を設定します。 |
unRegisterListener | イベント監視を破棄します。 |
login | ログイン。 |
logout | ログアウト。 |
setSelfProfile | 個人情報を修正します。 |
API | 説明 |
---|---|
createMeeting | ルームの作成(キャスターが呼び出し)。 |
destroyMeeting | ルームの破棄(キャスターが呼び出し)。 |
enterMeeting | 入室(参加者が呼び出し)。 |
leaveMeeting | 退室(参加者が呼び出し)。 |
getUserInfoList | ルーム内の全メンバーのリストを取得します。enterMeeting()成功後に呼び出しが有効となります。 |
getUserInfo | ルーム内の指定メンバーの詳細情報を取得します。enterMeeting()成功後に呼び出しが有効となります。 |
API | 説明 |
---|---|
startRemoteView | 指定メンバーのリモートビデオ画面を再生します。 |
stopRemoteView | 指定メンバーのリモートビデオ画面の再生を停止します。 |
setRemoteViewParam | 指定メンバーのリモート画像のレンダリングパラメータを設定します。 |
muteRemoteAudio | 指定メンバーのリモート音声をミュート/ミュート取り消しにします。 |
muteAllRemoteAudio | 全メンバーのリモート音声をミュート/ミュート取り消しにします。 |
muteRemoteVideoStream | 指定メンバーのリモートビデオを一時停止/再開します。 |
muteAllRemoteVideoStream | 全メンバーのリモートビデオストリームを一時停止/再開します。 |
API | 説明 |
---|---|
startCameraPreview | ローカルビデオのプレビュー画面を立ち上げます。 |
stopCameraPreview | ローカルのビデオキャプチャおよびプレビューを停止します。 |
switchCamera | フロント/リアカメラを切り替えます。 |
setVideoEncoderParam | ビデオエンコーダ関連パラメータを設定します。 |
setLocalViewMirror | ローカル画面のミラーモードのプレビューを設定します。 |
API | 説明 |
---|---|
startMicrophone | マイクの集音開始。 |
stopMicrophone | マイクの集音停止。 |
muteLocalAudio | ローカル音声のミュート起動/停止。 |
setSpeaker | スピーカーまたはヘッドホン起動の設定。 |
setAudioCaptureVolume | マイクの集音音量設定。 |
setAudioPlayoutVolume | 再生音量の設定。 |
startAudioRecording | 録音の開始。 |
stopAudioRecording | 録音の停止。 |
enableAudioVolumeEvaluation | 音声レベルリマインダを有効にします。 |
API | 説明 |
---|---|
startScreenCapture | 画面共有を開始。 |
stopScreenCapture | 画面キャプチャの停止。 |
pauseScreenCapture | スクリーンキャプチャの一時停止。 |
resumeScreenCapture | スクリーンキャプチャの再開。 |
API | 説明 |
---|---|
getDeviceManager | デバイス管理オブジェクトTXDeviceManagerを取得します。 |
getBeautyManager | 美顔管理オブジェクトTXBeautyManagerを取得します。 |
API | 説明 |
---|---|
sendRoomTextMsg | ミーティング中にテキストメッセージをブロードキャストします。通常、チャットに使用します。 |
sendRoomCustomMsg | カスタマイズしたテキストメッセージを送信します。 |
API | 説明 |
---|---|
onError | エラーのコールバック。 |
onWarning | 警告のコールバック。 |
onKickedOffline | 他のユーザーが同じアカウントでログインすると、キックアウトされてオフラインになります。 |
API | 説明 |
---|---|
onRoomDestroy | ミーティングルームが破棄された時のコールバック。 |
onNetworkQuality | ネットワーク状態のコールバック。 |
onUserVolumeUpdate | ユーザー通話音量のコールバック。 |
API | 説明 |
---|---|
onEnterRoom | ローカルの入室のコールバック。 |
onLeaveRoom | ローカルの退室のコールバック。 |
onUserEnterRoom | 新しい参加者の入室のコールバック。 |
onUserLeaveRoom | 参加者の退出のコールバック。 |
API | 説明 |
---|---|
onUserAudioAvailable | 参加者がマイクを起動/停止したときのコールバック。 |
onUserVideoAvailable | 参加者がカメラを起動/停止したときのコールバック。 |
onUserSubStreamAvailable | 参加者がサブチャンネル画面を起動/停止したときのコールバック。 |
API | 説明 |
---|---|
onRecvRoomTextMsg | テキストメッセージ受信のコールバック。 |
onRecvRoomCustomMsg | カスタムメッセージ受信のコールバック。 |
API | 説明 |
---|---|
onScreenCaptureStarted | スクリーンキャプチャ開始のコールバック。 |
onScreenCapturePaused | スクリーンキャプチャ一時停止のコールバック。 |
onScreenCaptureResumed | スクリーンキャプチャ再開のコールバック。 |
onScreenCaptureStoped | スクリーンキャプチャ停止のコールバック。 |
TRTCMeetingシングルトンオブジェクトを取得します。
static Future<TRTCMeeting> sharedInstance();
TRTCMeetingシングルトンオブジェクトを破棄します。
static void destroySharedInstance();
説明:インスタンスを破棄すると、外部キャッシュのTRTCMeetingインスタンスは再利用できなくなります。あらためてsharedInstanceを呼び出し、新しいインスタンスを取得してください。
イベント監視を設定します。TRTCMeetingDelegateを介して、TRTCMeetingの各種ステータスの通知を取得できます。
void registerListener(MeetingListenerFunc func);
説明:funcはTRTCMeetingのプロキシコールバックです。
イベント監視を破棄します。
void unRegisterListener(MeetingListenerFunc func);
ログイン。
Future<ActionCallback> login(int sdkAppId, String userId, String userSig);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
sdkAppId | int | TRTCコンソール >【アプリケーション管理】> アプリケーション情報の中でSDKAppIDを確認できます。 |
userId | String | 現在のユーザーのID。文字列タイプ。アルファベット(a-z および A-Z)、数字(0-9)、ハイフン(-)、アンダーバー(_)のみ使用できます。 |
userSig | String | Tencent Cloudによって設計されたセキュリティ保護署名。取得方法については、 UserSigの計算、使用方法をご参照ください。 |
ログアウト。
Future<ActionCallback> logout();
個人情報の修正。
Future<ActionCallback> setSelfProfile(String userName, String avatarURL);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
userName | String | ユーザーニックネーム。 |
avatarURL | String | ユーザープロフィール画像のアドレス。 |
ミーティングの作成(キャスターの呼び出し)。
Future<ActionCallback> createMeeting(int roomId);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
roomId | int | ミーティングルームID。ご自身でアサインし、一括管理してください。 |
キャスターの通常の呼び出しフローは以下のとおりです:
createMeeting()
を呼び出し、roomId
を渡してミーティングを作成します。ミーティングルーム作成の成功の有無がActionCallback
によってキャスターに通知されます。 startCameraPreview()
を呼び出し、カメラのプレビューを起動します。この時美顔パラメータを調整できます。startMicrophone()
を呼び出し、マイクキャプチャを起動します。ミーティングルームを破棄します(キャスターが呼び出し)。キャスターは、ミーティング作成後、この関数を呼び出してミーティングを破棄できます。
Future<ActionCallback> destroyMeeting(int roomId);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
roomId | int | ミーティングルームID。ご自身でアサインし、一括管理してください。 |
ミーティングルームに参加します(参加者が呼び出し)。
Future<ActionCallback> enterMeeting(int roomId);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
roomId | int | ミーティングルームID。 |
参加者がミーティングに参加する通常の呼び出しフローは以下のとおりです:
enterMeeting()
を呼び出し、roomId
を渡せばミーティングルームに入れます。startCameraPreview()
を呼び出して、カメラのプレビューを起動し、startMicrophone()
を呼び出し、マイクキャプチャを起動します。onUserVideoAvailable
のイベントを受信します。startRemoteView()
を呼び出し、メンバーのuserIdを渡して再生を開始しますミーティングルームから退出します(参加者が呼び出し)。
Future<ActionCallback> leaveMeeting();
ルーム内の全メンバーのリストを取得します。enterMeeting()成功後に呼び出しが有効となります。
Future<UserListCallback> getUserInfoList(List<String> userIdList);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
userIdList | List<String> | 取得する必要があるuserId リスト。 |
ルーム内の指定メンバーの詳細情報を取得します。enterMeeting()成功後に呼び出しが有効となります。
Future<UserListCallback> getUserInfo(String userId);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
userId | String | 指定メンバーのID。 |
指定メンバーのリモートビデオ画面を再生します。
Future<void> startRemoteView(String userId, int streamType, int viewId);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
userId | String | 指定メンバーのID。 |
streamType | int | 視聴したいビデオストリームのタイプ。詳細については、TRTC SDKをご参照ください。 |
viewId | int | TRTCCloudVideoViewが発行するviewId。 |
指定メンバーのリモートビデオ画面の再生を停止します。
Future<void> stopRemoteView(String userId, int streamType);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
userId | String | 指定メンバーのID。 |
streamType | int | 視聴したいビデオストリームのタイプ。詳細については、TRTC SDKをご参照ください。 |
指定メンバーのリモート画像のレンダリングパラメータを設定します。
Future<void> setRemoteViewParam(String userId, int streamType,
{int fillMode, int rotation, int mirrorType});
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
userId | String | 指定メンバーのID。 |
streamType | int | 視聴したいビデオストリームのタイプ。詳細については、TRTC SDKをご参照ください。 |
fillMode | int | 画像レンダリングモード。FILL(デフォルト)またはFITモード。詳細については、TRTC SDKをご参照ください。 |
rotation | int | 画像の時計回りの回転角度。詳細については、TRTC SDKをご参照ください。 |
mirrorType | int | イメージモード。詳細については、 TRTC SDKをご参照ください。 |
指定メンバーのリモート音声をミュート/ミュート取り消します。
Future<void> muteRemoteAudio(String userId, bool mute);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
userId | String | 指定メンバーのID。 |
mute | boolean | true:ミュート、false:ミュート停止。 |
全メンバーのリモート音声をミュート/ミュート取り消します。
Future<void> muteAllRemoteAudio(bool mute);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
mute | boolean | true:ミュート、false:ミュート停止。 |
指定メンバーのリモートビデオを一時停止/再開します。
Future<void> muteRemoteVideoStream(String userId, bool mute);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
userId | String | 指定メンバーのID。 |
mute | boolean | true:一時停止、false:再開。 |
全メンバーのリモートビデオストリームを一時停止/再開します。
Future<void> muteAllRemoteVideoStream(bool mute);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
mute | boolean | true:一時停止、false:再開。 |
ローカルビデオのプレビュー画面を立ち上げます。
Future<void> startCameraPreview(bool isFront, int viewId);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
isFront | boolean | true:フロントカメラ、false:リアカメラ。 |
viewId | int | TRTCCloudVideoViewが発行するviewId。 |
ローカルのビデオキャプチャおよびプレビューを停止します。
Future<void> stopCameraPreview();
フロント/リアカメラを切り替えます。
Future<void> switchCamera(bool isFront);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
isFront | boolean | true:フロントカメラ、false:リアカメラ。 |
ビデオエンコーダ関連パラメータを設定します。
Future<void> setVideoEncoderParam({
int videoFps,
int videoBitrate,
int videoResolution,
int videoResolutionMode,
});
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
videoFps | int | ビデオキャプチャのフレームレート。 |
videoBitrate | int | ビットレート。SDKは目標ビットレートに応じてエンコードを行い、ネットワークの状態が良くない場合のみ、ビデオビットレートを動的に引き下げます。 |
videoResolution | int | ビデオ解像度。 |
videoResolutionMode | int | 解像度モード。 |
説明:詳細については、TRTC SDKをご参照ください。
ローカル画面のミラーモードのプレビューを設定します。
Future<void> setLocalViewMirror(bool isMirror);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
isMirror | boolean | イメージプレビューモードの起動の有無。true:オン、false:オフ。 |
マイクの集音開始。
Future<void> startMicrophone({int quality});
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
quality | int | オーディオ品質。詳細については、 TRTC SDKをご参照ください。 |
マイクの集音停止。
Future<void> stopMicrophone();
ローカル音声のミュート起動/停止。
Future<void> muteLocalAudio(bool mute);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
mute | boolean | true:ミュート、false:ミュート取り消し。 |
スピーカーまたはヘッドホンの起動設定。
Future<void> setSpeaker(bool useSpeaker);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
useSpeaker | boolean | true:スピーカー、false:ヘッドホン。 |
マイクの集音音量設定。
Future<void> setAudioCaptureVolume(int volume);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
volume | int | 集音音量、値:0 - 100、デフォルト値:100。 |
再生音量の設定。
Future<void> setAudioPlayoutVolume(int volume);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
volume | int | 再生音量、値:0 - 100、デフォルト値:100。 |
録音の開始。
Future<int?> startAudioRecording(String filePath);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
filePath | String | 録音ファイルの保存パス。このパスはユーザーが自身で指定する必要があります。パスが存在し、記述できることを確認してください。このパスはファイル名およびフォーマットの拡張子まで正確に示す必要があります。フォーマットの拡張子によって録音ファイルの形式が決まります。現在サポートしている形式はPCM、WAV、AACです。 |
録音の停止。
Future<void> stopAudioRecording();
音量レベルリマインダを有効にします。
Future<void> enableAudioVolumeEvaluation(int intervalMs);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
intervalMs | int | onUserVoiceVolume コールバックをトリガーするインターバルを決定します。単位はms。最小インターバルは100ms。0以下の場合、コールバックは停止します。設定を300msにすることを推奨します。 |
画面共有を開始。
Future<void> startScreenCapture({
int videoFps,
int videoBitrate,
int videoResolution,
int videoResolutionMode,
String appGroup,
});
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
videoFps | int | ビデオキャプチャのフレームレート。 |
videoBitrate | int | ビットレート。SDKは目標ビットレートに応じてエンコードを行い、ネットワークの状態が良くない場合のみ、ビデオビットレートを動的に引き下げます。 |
videoResolution | int | ビデオ解像度。 |
videoResolutionMode | int | 解像度モード。 |
appGroup | String | このパラメータはiOS端末でのみ有効となり、Android端末の場合、このパラメータを気にする必要はありません。このパラメータはメインAppとBroadcastが共有するApplication Group Identifierです。 |
説明:詳細については、TRTC SDKをご参照ください。
画面キャプチャの停止。
Future<void> stopScreenCapture();
スクリーンキャプチャの一時停止。
Future<void> pauseScreenCapture();
スクリーンキャプチャの再開。
Future<void> resumeScreenCapture();
デバイス管理オブジェクト TXDeviceManagerを取得します。
getDeviceManager();
美顔管理オブジェクトTXBeautyManagerを取得します。 |
getBeautyManager();
美顔管理では、次の機能を使用できます。
ミーティング中にテキストメッセージをブロードキャストします。通常、チャットに使用します。
Future<ActionCallback> sendRoomTextMsg(String message);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
message | String | テキストメッセージ。 |
カスタマイズしたテキストメッセージを送信します。
Future<ActionCallback> sendRoomCustomMsg(String cmd, String message);
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
cmd | String | コマンドワードです。開発者がカスタマイズするものであり、主にさまざまなメッセージタイプを区別するために使用されます。 |
message | String | テキストメッセージ。 |
エラーのコールバック。
説明:SDKリカバリー不能なエラーは必ず監視し、状況に応じてユーザーに適切なインターフェースプロンプトを表示します。
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
errCode | int | エラーコード。 |
errMsg | String | エラー情報。 |
extraInfo | String | 拡張情報フィールド。個別のエラーコードにより問題の特定に役立つ追加情報をもたせることが可能です。 |
警告のコールバック。
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
warningCode | int | エラーコード。 |
warningMsg | String | 警告情報。 |
extraInfo | String | 拡張情報フィールド。個別のエラーコードにより問題の特定に役立つ追加情報をもたせることが可能です。 |
他のユーザーが同じアカウントでログインすると、キックアウトされてオフラインになります。
ミーティングルームが破棄された時のコールバック。キャスターの退室時、ルーム内の全ユーザーがこの通知を受信します。
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
roomId | String | ミーティングルームID。 |
ネットワーク状態のコールバック。
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
localQuality | TRTCCloudDef.TRTCQuality | アップストリームのネットワーク品質。 |
remoteQuality | List<TRTCCloudDef.TRTCQuality> | ダウンストリームのネットワーク品質。 |
ユーザーの通話音量のコールバック。
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
userVolumes | List | 発言中のすべてのルーム参加者の音量。値の範囲:0~100。 |
totalVolume | int | すべてのリモート参加者の総音量。値の範囲:0~100。 |
ローカルの入室のコールバック。
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
result | int | 0を上回るときは入室の所要時間(ms)、0未満のときは入室のエラーコードです。 |
ローカルの退室のコールバック。
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
reason | int | ミーティング退出の原因。0:自主的にleaveMeetingを呼び出して退出。1:サーバーによる現在のミーティングからのキックアウト。2:現在のミーティング全体の解散。 |
新しい参加者の入室のコールバック。
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
userId | String | 新しい参加者のユーザーID。 |
参加者の退出のコールバック。
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
userId | String | 退出した参加者のユーザーID。 |
参加者のマイク起動/停止のコールバック。
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
userId | String | ユーザーID。 |
available | boolean | true:ユーザーがマイクをオンにします。false:ユーザーがマイクをオフにします。 |
参加者によるカメラ起動/停止のコールバック。
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
userId | String | ユーザーID。 |
available | boolean | true:ユーザーがカメラをオンにします。false:ユーザーがカメラをオフにします。 |
参加者がサブチャンネル画面を起動/停止したときのコールバック。
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
userId | String | ユーザーID。 |
available | boolean | true:ユーザーがサブチャンネル画面を起動。false:ユーザーがサブチャンネル画面を停止。 |
テキストメッセージ受信のコールバック。
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
message | String | テキストメッセージ。 |
sendId | String | 送信者のユーザーID。 |
userAvatar | String | 送信者のユーザープロフィール画像。 |
userName | String | 送信者のユーザーニックネーム。 |
カスタムメッセージ受信のコールバック。
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
command | String | コマンドワードです。開発者がカスタマイズするものであり、主にさまざまなメッセージタイプを区別するために使用されます。 |
message | String | テキストメッセージ。 |
sendId | String | 送信者のユーザーID。 |
userAvatar | String | 送信者のユーザープロフィール画像。 |
userName | String | 送信者のユーザーニックネーム。 |
スクリーンキャプチャ開始のコールバック。
スクリーンキャプチャ一時停止のコールバック。
スクリーンキャプチャ再生のコールバック。
スクリーンキャプチャ停止のコールバック。
パラメータは下表に示すとおりです:
パラメータ | タイプ | 意味 |
---|---|---|
reason | int | 停止の理由。0:ユーザーの自発的な停止。1:スクリーンウィンドウが閉じられたことによるによる停止。 |
この記事はお役に立ちましたか?