# TRTCCloud class Null safety

Main API class for the TRTC video call feature

## Constructors

TRTCCloud()

## Properties

hashCode → int
  The hash code for this object.
  read-only, inherited
runtimeType → Type
  A representation of the runtime type of the object.
  read-only, inherited

## Methods

callExperimentalAPI(String jsonStr) → Future<void>
  Call experimental APIs
connectOtherRoom(String param) → Future<void>
  Request cross-room call (anchor competition)
disconnectOtherRoom() → Future<void>
  Exit cross-room call
enableAudioVolumeEvaluation(int intervalMs) → Future<void>
  Enable volume reminder
enableCustomVideoProcess(bool enable) → Future<int?>
  开启/关闭自定义视频处理。
enableEncSmallVideoStream(bool enable, TRTCVideoEncParam smallVideoEncParam) → Future<int?>
  Enable dual-channel encoding mode with big and small images
enterRoom(TRTCParams param, int scene) → Future<void>
  Enter room
exitRoom() → Future<void>
  Exit room
getAudioCaptureVolume() → Future<int?>
  Get SDK capturing volume
getAudioEffectManager() → TXAudioEffectManager
  Get sound effect management class `TXAudioEffectManager`
getAudioPlayoutVolume() → Future<int?>
  Get SDK playback volume
getBeautyManager() → TXBeautyManager
  Get beauty filter management object
getDeviceManager() → TXDeviceManager
  Get device management module
getSDKVersion() → Future<String?>
  Get SDK version information
muteAllRemoteAudio(bool mute) → Future<void>
  Mute/Unmute all users' audio
muteAllRemoteVideoStreams(bool mute) → Future<void>
  Pause/Resume receiving all remote video streams
muteLocalAudio(bool mute) → Future<void>
  Mute/Unmute local audio
muteLocalVideo(bool mute) → Future<void>
  Pause/Resume pushing local video data
muteRemoteAudio(String userId, bool mute) → Future<void>
  Mute/Unmute the specified remote user's audio
muteRemoteVideoStream(String userId, bool mute) → Future<void>
  Pause/Resume receiving specified remote video stream
noSuchMethod(Invocation invocation) → dynamic
  Invoked when a non-existent method or property is accessed.
  inherited
pauseScreenCapture() → Future<void>
  Pause screen sharing
registerListener(ListenerValue func) → void
  Set an event listener, through which users can get various status notifications from `TRTCCloud`
resumeScreenCapture() → Future<void>
  Resume screen sharing
sendCustomCmdMsg(int cmdID, String data, bool reliable, bool ordered) → Future<bool?>
  Send custom message to all users in the room
sendSEIMsg(String data, int repeatCount) → Future<bool?>
  Embed custom data of a small size in video frames
setAudioCaptureVolume(int volume) → Future<void>
  Set SDK capturing volume
setAudioPlayoutVolume(int volume) → Future<void>
  Set SDK playback volume
setConsoleEnabled(bool enabled) → Future<void>
  Enable or disable console log printing
setDefaultStreamRecvMode(bool autoRecvAudio, bool autoRecvVideo) → Future<void>
  Set audio/video data reception mode, which must be set before room entry for it to take effect
setGSensorMode(int mode) → Future<void>
  Set the adaptation mode of the G-sensor
setLocalRenderParams(TRTCRenderParams renderParams) → Future<void>
  Set the rendering mode of local image
setLocalVideoRenderListener(CustomLocalRender param) → Future<int?>
  Start the custom rendering of local video with external texture
setLogCompressEnabled(bool enabled) → Future<void>
  Enable or disable local log compression
setLogDirPath(String path) → Future<void>
  Modify log storage path
setLogLevel(int level) → Future<void>
  Set log output level
setMixTranscodingConfig(TRTCTranscodingConfig? config) → Future<void>
  Set On-Cloud MixTranscoding parameters
setNetworkQosParam(TRTCNetworkQosParam param) → Future<void>
  Set QoS parameters
setRemoteAudioVolume(String userId, int volume) → Future<void>
  Set the playback volume of the specified remote user
setRemoteRenderParams(String userId, int streamType, TRTCRenderParams renderParams) → Future<void>
  Set remote image parameters
setRemoteVideoRenderListener(CustomRemoteRender param) → Future<int?>
  Start custom video rendering with external texture
setRemoteVideoStreamType(String userId, int streamType) → Future<int?>
  Select whether to view the big or small image of the specified `uid`
setVideoEncoderMirror(bool mirror) → Future<void>
  Set the mirror mode of image output by encoder
setVideoEncoderParam(TRTCVideoEncParam param) → Future<void>
  Set video encoder parameters
setVideoEncoderRotation(int rotation) → Future<void>
  Set the direction of image output by video encoder (i.e., video image viewed by remote user and recorded by server)
setVideoMuteImage(String? assetUrl, int fps) → Future<int?>
  Set the image to be pushed when the local video pushing is paused
setWatermark(String assetUrl, int streamType, double x, double y, double width) → Future<void>
  Add watermark
showDebugView(int showType) → Future<void>
  Display dashboard
snapshotVideo(String? userId, int streamType, int sourceType, String path) → Future<void>
  Screencapture video
startAudioRecording(TRTCAudioRecordingParams param) → Future<int?>
  Start audio recording
startLocalAudio(int quality) → Future<void>
  Enable local audio capturing and upstreaming and set audio quality
startLocalPreview(bool frontCamera, int? viewId) → Future<void>
  Enable the preview image of local video
startLocalRecording(TRTCLocalRecordingParams param) → Future<void>
  Start local media recording
startPublishCDNStream(TRTCPublishCDNParam param) → Future<void>
  Start relaying to the live streaming CDN of another cloud
startPublishing(String streamId, int streamType) → Future<void>
  Start pushing to Tencent Cloud CSS CDN
startRemoteView(String userId, int streamType, int? viewId) → Future<void>
  Display remote video image or substream
startScreenCapture(int streamType, TRTCVideoEncParam encParams, {String shareUserId = '', String shareUserSig = '', String appGroup = ''}) → Future<void>
  Start desktop screen sharing
startSpeedTest(int sdkAppId, String userId, String userSig) → Future<void>
  Start network speed testing, which should be avoided during video calls to ensure call quality
startSystemAudioLoopback() → Future<void>
  Enable system audio capturing (for android system only)
stopAllRemoteView() → Future<void>
  Stop displaying all remote video images and pulling the video data streams of all remote users
stopAudioRecording() → Future<void>
  Stop audio recording
stopLocalAudio() → Future<void>
  Disable local audio capturing and upstreaming
stopLocalPreview() → Future<void>
  Stop local video capturing and preview
stopLocalRecording() → Future<void>
  Stop local media recording
stopPublishCDNStream() → Future<void>
  Stop relaying to non-Tencent Cloud address
stopPublishing() → Future<void>
  Stop pushing to Tencent Cloud CSS CDN
stopRemoteView(String userId, int streamType) → Future<void>
  Stop displaying remote video image and pulling the video data stream of remote user
stopScreenCapture() → Future<void>
  Stop screen capture
stopSpeedTest() → Future<void>
  Stop server speed test
stopSystemAudioLoopback() → Future<void>
  Stop system audio capturing (for android system)
switchRole(int role) → Future<void>
  Switch roles (applicable only to the live streaming scenarios `TRTC_APP_SCENE_LIVE` and `TRTC_APP_SCENE_VOICE_CHATROOM`)
switchRoom(TRTCSwitchRoomConfig config) → Future<void>
  Switch room
toString() → String
  A string representation of this object.
  inherited
unRegisterListener(ListenerValue func) → void
  Remove message listener
unregisterTexture(int textureID) → Future<void>
  Unregister texture
updateLocalView(int viewId) → Future<void>
  Update the preview image of local video
updateRemoteView(String userId, int streamType, int viewId) → Future<void>
  Update the window of remote video image

## Operators

operator ==(Object other) → bool
  The equality operator.
  inherited

## Static Properties

listener ↔ TRTCCloudListenerObj?
  read / write

## Static Methods

destroySharedInstance() → Future<void>
  Terminate a `TRTCCloud` singleton
getPlatformVersion() → Future<String?>
sharedInstance() → Future<TRTCCloud?>
  Create a `TRTCCloud` singleton