TencentRtcPlugin class
Properties
-
hashCode
→ int
-
The hash code for this object.
no setterinherited
-
runtimeType
→ Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(Invocation invocation)
→ dynamic
-
Invoked when a nonexistent method or property is accessed.
inherited
-
toString()
→ String
-
A string representation of this object.
inherited
Static Methods
-
addListener(ListenerValue func)
→ void
-
添加消息监听
-
connectOtherRoom({required String param})
→ dynamic
-
请求跨房通话(主播 PK)
param
JSON 字符串连麦参数,roomId 代表目标房间号,userId 代表目标用户 ID。
-
disconnectOtherRoom()
→ dynamic
-
退出跨房通话
-
enableAudioEarMonitoring({required bool enable})
→ dynamic
-
开启耳返。
enable
是否启用
-
enableAudioVolumeEvaluation({required int intervalMs})
→ dynamic
-
启用音量大小提示。
intervalMs
决定了 onUserVoiceVolume 回调的触发间隔,单位为ms,最小间隔为100ms,如果小于等于0则会关闭回调,建议设置为300ms;详细的回调规则请参考 onUserVoiceVolume 的注释说明。
-
enableEncSmallVideoStream({required bool enable, required VideoEncParamEntity smallVideoEncParam})
→ Future<int?>
-
开启大小画面双路编码模式。
enable
是否开启小画面编码
smallVideoEncParam
小流的视频参数。
-
enableTorch({required bool enable})
→ dynamic
-
开关闪光灯。
enable
是否开启
-
enterRoom({required int appid, required String userId, required String userSig, required int roomId, required SceneEnum scene, RoleEnum? role, String? privateMapKey})
→ dynamic
-
加入房间(默认开启音频接收)
appid
appid
userId
用户ID
userSig
用户签名
roomId
房间号
scene
应用场景,目前支持视频通话(VideoCall)和在线直播(Live)两种场景。
role
角色
privateMapKey
房间签名
-
exitRoom()
→ dynamic
-
离开房间
-
genUserSig({required int appid, required String secretKey, required String userId})
→ Future<String>
-
生成用户签名。
-
getAudioCaptureVolume()
→ Future<int>
-
获取 SDK 采集音量
-
getAudioPlayoutVolume()
→ Future<int>
-
获取 SDK 播放音量
-
getSDKVersion()
→ Future<String>
-
获得SDK版本
-
isCameraAutoFocusFaceModeSupported()
→ Future<bool>
-
查询是否支持自动识别人脸位置。
-
isCameraFocusPositionInPreviewSupported()
→ Future<bool?>
-
查询是否支持设置焦点。
-
isCameraTorchSupported()
→ Future<bool>
-
查询是否支持开关闪光灯(手电筒模式)。
-
isCameraZoomSupported()
→ Future<bool>
-
查询当前摄像头是否支持缩放
-
muteAllRemoteAudio({required bool mute})
→ dynamic
-
静音/取消静音 所有用户
mute
是否静音
-
muteAllRemoteVideoStreams({required bool mute})
→ dynamic
-
停止接收所有远端视频流
mute
是否停止接收
-
muteLocalAudio({required bool mute})
→ dynamic
-
静音本地的音频。
mute
true:屏蔽;false:开启,默认值:false。
-
muteLocalVideo({required bool mute})
→ dynamic
-
关闭本地的视频。
mute
是否关闭
-
muteRemoteAudio({required String userId, required bool mute})
→ dynamic
-
静音/取消静音
userId
用户ID
mute
是否静音
-
muteRemoteVideoStream({required String userId, required bool mute})
→ dynamic
-
暂停接收指定的远端视频流。。
userId
用户ID
mute
是否停止接收
-
pauseScreenCapture()
→ dynamic
-
暂停屏幕分享。
-
removeListener(ListenerValue func)
→ void
-
移除消息监听
-
resumeScreenCapture()
→ dynamic
-
恢复屏幕分享。
-
sendCustomCmdMsg({required int cmdID, required Uint8List data, required bool reliable, required bool ordered})
→ dynamic
-
发送自定义消息给房间内所有用户。
cmdID
消息 ID,取值范围为1 - 10
data
待发送的消息,最大支持1KB(1000字节)的数据大小
reliable
是否可靠发送,可靠发送的代价是会引入一定的延时,因为接收端要暂存一段时间的数据来等待重传
ordered
是否要求有序,即是否要求接收端接收的数据顺序和发送端发送的顺序一致,这会带来一定的接收延时,因为在接收端需要暂存并排序这些消息。
-
sendSEIMsg({required String data, required int repeatCount})
→ dynamic
-
将小数据量的自定义数据嵌入视频帧中
data
待发送的数据,最大支持1kb(1000字节)的数据大小
repeatCount
发送数据次数
-
setAudioCaptureVolume({required int volume})
→ dynamic
-
设置 SDK 采集音量。
volume
音量大小,取值: 0-100
-
setAudioPlayoutVolume({required int volume})
→ dynamic
-
设置 SDK 播放音量。
volume
音量大小,取值: 0-100
-
setAudioQuality({required QualityEnum quality})
→ dynamic
-
设置音频质量 主播端的音质越高,观众端的听感越好,但传输所依赖的带宽也就越高,在带宽有限的场景下也更容易出现卡顿。
quality
质量
-
setAudioRoute({required RouteEnum route})
→ dynamic
-
设置音频路由。
route
音频路由,即声音由哪里输出(扬声器、听筒)
-
setConsoleEnabled({required bool enabled})
→ dynamic
-
设置启用控制台打印
enabled
是否启用
-
setDebugViewMargin({required String userId, required double left, required double right, required double top, required double bottom})
→ dynamic
-
设置仪表盘的边距。
userId
用户ID
-
setDefaultStreamRecvMode({required bool autoRecvAudio, required bool autoRecvVideo})
→ dynamic
-
设置音视频数据接收模式,需要在进房前设置才能生效。
autoRecvAudio
true:自动接收音频数据;false:需要调用 muteRemoteAudio 进行请求或取消。默认值:true。
autoRecvVideo
true:自动接收视频数据;false:需要调用 startRemoteView/stopRemoteView 进行请求或取消。默认值:true。
-
setFocusPosition({required int x, required int y})
→ dynamic
-
设置摄像头焦点。
-
setGSensorMode({required GsensorModeEnum mode})
→ dynamic
-
设置重力感应的适应模式。
mode
重力感应模式
-
setLocalViewFillMode({required RenderModeEnum mode})
→ dynamic
-
设置本地图像的渲染模式
-
setLocalViewMirror({required MirrorTypeEnum mirrorType})
→ dynamic
-
设置本地摄像头预览画面的镜像模式。
mirrorType
镜像模式
-
setLocalViewRotation({required RotationEnum rotation})
→ dynamic
-
设置本地图像的顺时针旋转角度。
rotation
角度
-
setLogCompressEnabled({required bool enabled})
→ dynamic
-
启用或禁用 Log 的本地压缩。
enabled
是否启用
-
setLogDirPath({required String path})
→ dynamic
-
修改日志保存路径。
path
保存路径
-
setLogLevel({required LogLevelEnum level})
→ dynamic
-
设置日志输出级别
level
日志级别
-
setNetworkQosParam({required QosPreferenceEnum preference, required QosControlEnum controlMode})
→ dynamic
-
设置网络流控相关参数。参考: http://doc.qcloudtrtc.com/group__TRTCCloudDef__android.html#classcom_1_1tencent_1_1trtc_1_1TRTCCloudDef_1_1TRTCNetworkQosParam
preference
弱网下是“保清晰”还是“保流畅”。
controlMode
视频分辨率(云端控制 - 客户端控制)。
-
setPriorRemoteVideoStreamType({required StreamTypeEnum streamType})
→ dynamic
-
设定观看方优先选择的视频质量。
streamType
流类型
-
setRemoteSubStreamViewFillMode({required String userId, required RenderModeEnum mode})
→ dynamic
-
设置屏幕分享画面的显示模式。
userId
用户ID
mode
显示模式
-
setRemoteSubStreamViewRotation({required String userId, required RotationEnum rotation})
→ dynamic
-
设置屏幕分享画面的顺时针旋转角度。
userId
用户ID
rotation
旋转角度
-
setRemoteVideoStreamType({required String userId, required StreamTypeEnum streamType})
→ dynamic
-
选定观看指定 uid 的大画面或小画面。
userId
用户ID
streamType
流类型
-
setRemoteViewFillMode({required String userId, required RenderModeEnum mode})
→ dynamic
-
设置远程视频填充模式
userId
用户ID
mode
模式
-
setRemoteViewRotation({required String userId, required RotationEnum rotation})
→ dynamic
-
设置远端图像的顺时针旋转角度。
userId
用户ID
rotation
角度
-
setSystemVolumeType({required SystemVolumeTypeEnum type})
→ dynamic
-
设置通话时使用的系统音量类型。
type
系统音量类型
-
setVideoEncoderMirror({required bool mirror})
→ dynamic
-
设置编码器输出的画面镜像模式。
mirror
true:镜像;false:不镜像;默认值:false。
-
setVideoEncoderParam({required VideoEncParamEntity param})
→ dynamic
-
设置视频编码相关
param
视频编码参数
-
setVideoEncoderRotation({required RotationEnum rotation})
→ dynamic
-
设置视频编码输出的(也就是远端用户观看到的,以及服务器录制下来的)画面方向
rotation
旋转角度,目前仅支持 Rotation_0 和 Rotation_180
-
setVideoMuteImage({String? asset, int fps = 10})
→ dynamic
-
设置暂停推送本地视频时要推送的图片。
asset
assets 中的资源,不是本地原生资源!!!
fps
推送图片帧率,Android: 最小值为5,最大值为20,默认10。IOS: 最小值为5,最大值为10。
-
setWatermark({required String asset, required StreamTypeEnum streamType, required double x, required double y, required double width, double height = 0.5})
→ dynamic
-
添加水印
asset
assets 中的资源,不是本地原生资源!!!
streamType
流类型
x
归一化水印位置的 X 轴坐标,取值0,1
y
归一化水印位置的 Y 轴坐标,取值0,1
width
归一化水印宽度,取值0,1
height
归一化水印宽度,取值0,1
,仅IOS有效
-
setZoom({required int distance})
→ dynamic
-
设置摄像头缩放因子(焦距)。
distance
取值范围为1 - 5,数值越大,焦距越远。
-
showDebugView({required DebugViewModeEnum mode})
→ dynamic
-
设置Debug视图
-
startAudioRecording({required String filePath})
→ dynamic
-
开始录音。
filePath
文件路径(必填),录音的文件地址,由用户自行指定,请确保 App 里指定的目录存在且可写。
-
startLocalAudio()
→ dynamic
-
开启本地音频采集
-
startPublishCDNStream({required String appid, required String bizId, required String url})
→ dynamic
-
开始向友商云的直播 CDN 转推
appid
appid
bizId
腾讯云直播 bizid,请在 实时音视频控制台 选择已经创建的应用,单击【帐号信息】,在“直播信息”中获取
url
旁路转推的 URL
-
startPublishing({required String streamId, required StreamTypeEnum streamType})
→ dynamic
-
开始向腾讯云的直播 CDN 推流
streamId
自定义流 Id。
streamType
流类型,仅支持 Big 和 Sub
-
startSpeedTest({required int appid, required String userId, required String userSig})
→ dynamic
-
开始进行网络测速(视频通话期间请勿测试,以免影响通话质量)
appid
appid
userId
用户ID
userSig
用户签名
-
stopAllRemoteView()
→ dynamic
-
停止显示所有远端视频画面。
-
stopAudioRecording()
→ dynamic
-
停止录音。
-
stopLocalAudio()
→ dynamic
-
关闭本地音频采集
-
stopLocalPreview()
→ dynamic
-
停止本地视频采集
-
stopPublishCDNStream()
→ dynamic
-
停止向非腾讯云地址转推
-
stopPublishing()
→ dynamic
-
停止向腾讯云的直播 CDN 推流
-
stopRemoteSubStreamView({required String userId})
→ dynamic
-
关闭远端辅流显示
userId
用户ID
-
stopRemoteView({required String userId})
→ dynamic
-
关闭远程显示
userId
用户ID
-
stopScreenCapture()
→ dynamic
-
停止屏幕采集。
-
stopSpeedTest()
→ dynamic
-
停止服务器测速
-
switchCamera()
→ dynamic
-
切换摄像头。
-
switchRole({required RoleEnum role})
→ dynamic
-
切换角色,仅适用于直播场景(TRTC_APP_SCENE_LIVE 和 TRTC_APP_SCENE_VOICE_CHATROOM)。
role
目标角色