RTCVideo class abstract

引擎接口

Constructors

RTCVideo()

Properties

audioMixingManager → RTCAudioMixingManager
创建混音管理接口实例
read-only
hashCode → int
The hash code for this object.
read-onlyinherited
runtimeType → Type
A representation of the runtime type of the object.
read-onlyinherited
videoEffectInterface → RTCVideoEffect
获取视频特效接口。
read-only

Methods

checkVideoEffectLicense(String licenseFile) → Future<int?>
视频特效许可证检查
clearVideoWatermark([StreamIndex streamIndex = StreamIndex.main]) → Future<int?>
移除指定视频流的水印
createRTCRoom(String roomId) → Future<RTCRoom?>
创建房间实例。
destroy() → Future<void>
销毁由 RTCVideo.createRTCVideo 所创建的引擎实例,并释放所有相关资源。
enableAudioPropertiesReport(AudioPropertiesConfig config) → Future<int?>
启用音量提示
enableCameraAutoExposureFaceMode(bool enable) → Future<int?>
v3.54.1 新增
enableEffectBeauty(bool enable) → Future<int?>
开启/关闭基础美颜
enableExternalSoundCard(bool enable) → Future<int?>
启用匹配外置声卡的音频处理模式
enableLocalVoiceReverb(bool enable) → Future<int?>
开启本地音效混响效果
enablePlaybackDucking(bool enable) → Future<int?>
打开/关闭音量闪避功能,适用于在 RTC 通话过程中会同时播放短视频或音乐的场景,如“一起看”、“在线 KTV”等
enableSimulcastMode(bool enable) → Future<int?>
设置视频流发布端是否开启发布多路编码参数不同的视频流的模式,默认关闭。
enableVideoEffect(bool enable) → Future<int?>
创建/销毁视频特效引擎
enableVocalInstrumentBalance(bool enable) → Future<int?>
开启/关闭音量均衡功能
feedback({required List<ProblemFeedbackOption> types, ProblemFeedbackInfo? info}) → Future<int?>
将用户反馈的问题上报到 RTC
getAudioEffectPlayer() → FutureOr<RTCAudioEffectPlayer?>
v3.54.1 新增
getAudioRoute() → Future<AudioRoute>
获取当前使用的音频播放路由
getCameraZoomMaxRatio() → Future<double?>
获取当前使用的摄像头(前置/后置)的最大变焦倍数
getKTVManager() → FutureOr<RTCKTVManager?>
创建 KTV 管理接口
getMediaPlayer(int playerId) → FutureOr<RTCMediaPlayer?>
v3.54.1 新增
getNetworkTimeInfo() → Future<NetworkTimeInfo?>
通过 NTP 协议,获取网络时间
getPeerOnlineStatus(String peerUid) → Future<int?>
发送消息前,查询指定远端用户或本地用户的登录状态
getSingScoringManager() → FutureOr<RTCSingScoringManager?>
创建 K 歌评分管理接口
isCameraExposurePositionSupported() → Future<bool?>
检查当前使用的摄像头是否支持手动设置曝光点
isCameraFocusPositionSupported() → Future<bool?>
检查当前使用的摄像头是否支持手动对焦
isCameraTorchSupported() → Future<bool?>
检测当前使用的摄像头(前置/后置),是否支持闪光灯
isCameraZoomSupported() → Future<bool?>
检测当前使用的摄像头(前置/后置),是否支持变焦(数码/光学变焦)
login({required String token, required String uid}) → Future<int?>
登录以发送房间外消息和向业务服务器发送消息
logout() → Future<int?>
登出
muteAudioPlayback(bool muteState) → Future<int?>
控制本地音频流播放状态:播放/不播放
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
registerFaceDetectionObserver({RTCFaceDetectionObserver? observer, int interval = 0}) → Future<int?>
注册人脸检测结果回调观察者
removeLocalVideo([StreamIndex streamType = StreamIndex.main]) → Future<int?>
取消设置本地视频画布
removePublicStreamVideo(String publicStreamId) → Future<int?>
取消设置公共流视频画布
removeRemoteVideo({required String roomId, required String uid, StreamIndex streamType = StreamIndex.main}) → Future<int?>
取消设置远端视频画布
sendScreenCaptureExtensionMessage(Uint8List message) → Future<int?>
仅适用于 iOS,向屏幕共享 Extension 发送自定义消息
sendSEIMessage({StreamIndex streamIndex = StreamIndex.main, required Uint8List message, required int repeatCount, SEICountPerFrame mode = SEICountPerFrame.single}) → Future<int?>
通过视频帧发送 SEI 数据。
sendServerBinaryMessage(Uint8List message) → Future<int?>
客户端给业务服务器发送二进制消息
sendServerMessage(String message) → Future<int?>
客户端给业务服务器发送文本消息
sendStreamSyncInfo({required Uint8List data, required StreamSyncInfoConfig config}) → Future<int?>
发送音频流同步信息
sendUserBinaryMessageOutsideRoom({required String uid, required Uint8List message, required MessageConfig config}) → Future<int?>
给房间外指定的用户发送二进制消息
sendUserMessageOutsideRoom({required String uid, required String message, required MessageConfig config}) → Future<int?>
给房间外指定的用户发送文本消息
setAnsMode(AnsMode ansMode) → Future<int?>
支持根据业务场景,设置通话中的音频降噪模式。
setAudioAlignmentProperty({required RemoteStreamKey streamKey, required AudioAlignmentMode mode}) → Future<int?>
在听众端,设置订阅的所有远端音频流精准对齐后播放
setAudioProfile(AudioProfileType audioProfile) → Future<int?>
设置音质档位
setAudioRoute(AudioRoute audioRoute) → Future<int?>
强制切换当前的音频播放路由
setAudioScenario(AudioScenario audioScenario) → Future<int?>
设置音频场景类型
setBackgroundSticker({String? modelPath, VirtualBackgroundSource? source}) → Future<int?>
将摄像头采集画面中的人像背景替换为指定图片或纯色背景
setBeautyIntensity({required EffectBeautyMode beautyMode, required double intensity}) → Future<int?>
调整基础美颜强度
setBluetoothMode(BluetoothMode mode) → Future<int?>
在纯媒体音频场景下,切换 iOS 设备与耳机之间的蓝牙传输协议
仅 iOS 适用。
setBusinessId(String businessId) → Future<int?>
设置业务标识参数。
setCameraAdaptiveMinimumFrameRate(int framerate) → Future<int?>
v3.54.1 新增
setCameraExposureCompensation(double val) → Future<int?>
设置当前使用的摄像头的曝光补偿
setCameraExposurePosition(Offset position) → Future<int?>
设置当前使用的摄像头的曝光点
setCameraFocusPosition(Offset position) → Future<int?>
设置当前使用的摄像头的对焦点
setCameraTorch(TorchState torchState) → Future<int?>
打开/关闭当前使用的摄像头(前置/后置)的闪光灯
setCameraZoomRatio(double zoom) → Future<int?>
设置当前使用的摄像头(前置/后置)的光学变焦倍数
setCaptureVolume({StreamIndex index = StreamIndex.main, required int volume}) → Future<int?>
调节音频采集音量
setCellularEnhancement(MediaTypeEnhancementConfig config) → Future<int?>
v3.54.1 新增。
setDefaultAudioRoute(AudioRoute audioRoute) → Future<int?>
将默认的音频播放设备设置为听筒或扬声器
setDummyCaptureImagePath(String filePath) → Future<int?>
摄像头处于关闭状态时,使用静态图片填充本地推送的视频流。
setEarMonitorMode(EarMonitorMode mode) → Future<int?>
开启/关闭耳返功能。
setEarMonitorVolume(int volume) → Future<int?>
设置耳返的音量。
setEncryptInfo({required EncryptType aesType, required String key}) → Future<int?>
设置传输时使用内置加密的方式
setLocalProxy(List<LocalProxyConfiguration>? configurations) → Future<int?>
v3.54.1 新增。
setLocalVideoMirrorType(MirrorType mirrorType) → Future<int?>
为本地采集到的视频流开启镜像
setLocalVoiceEqualization(VoiceEqualizationConfig config) → Future<int?>
设置本地采集语音的均衡效果
包含内部采集和外部采集,但不包含混音音频文件。
setLocalVoicePitch(int pitch) → Future<int?>
开启本地语音变调功能,多用于 K 歌场景
setLocalVoiceReverbParam(VoiceReverbConfig config) → Future<int?>
设置本地采集音频的混响效果
包含内部采集和外部采集,但不包含混音音频文件。
setMaxVideoEncoderConfig(VideoEncoderConfig maxSolution) → Future<int?>
视频发布端设置期望发布的最大分辨率视频流参数,包括分辨率、帧率、码率、缩放模式、网络不佳时的回退策略等
setPlaybackVolume(int volume) → Future<int?>
调节本地播放的所有远端用户混音后的音量
播放音频前或播放音频时,你都可以使用此接口设定播放音量。
setPublicStreamAudioPlaybackVolume({required String publicStreamId, required int volume}) → Future<int?>
调节公共流的音频播放音量。
setPublishFallbackOption(PublishFallbackOption option) → Future<int?>
设置发布的音视频流回退选项
setRemoteAudioPlaybackVolume({required String roomId, required String uid, required int volume}) → Future<int?>
调节来自指定远端用户的音频播放音量
setRemoteUserPriority({required String roomId, required String uid, required RemoteUserPriority priority}) → Future<int?>
设置指定远端用户在回退中的优先级
setRTCVideoEventHandler(RTCVideoEventHandler handler) → void
设置事件回调的接收类
setRuntimeParameters(Map<String, dynamic> params) → Future<int?>
设置运行时的参数
setScreenAudioStreamIndex(StreamIndex index) → Future<int?>
在屏幕共享时,设置屏幕音频流和麦克风采集到的音频流的混流方式
setScreenVideoEncoderConfig(ScreenVideoEncoderConfig screenSolution) → Future<int?>
为发布的屏幕共享视频流设置期望的编码参数,包括分辨率、帧率、码率、缩放模式、网络不佳时的回退策略等
setServerParams({required String signature, required String url}) → Future<int?>
设置应用服务器参数
setSubscribeFallbackOption(SubscribeFallbackOption option) → Future<int?>
设置订阅的音视频流回退选项
setVideoCaptureConfig(VideoCaptureConfig config) → Future<int?>
设置 RTC SDK 内部采集时的视频采集参数,包括分辨率、帧率等
setVideoDigitalZoomConfig({required ZoomConfigType type, double size}) → Future<int?>
设置本地摄像头数码变焦参数,包括缩放倍数,移动步长。
setVideoDigitalZoomControl(ZoomDirectionType direction) → Future<int?>
控制本地摄像头数码变焦,缩放或移动一次。设置对本地预览画面和发布到远端的视频都生效。
setVideoEffectAlgoModelPath(String modelPath) → Future<int?>
设置视频特效算法模型路径
setVideoEffectColorFilter(String? resFile) → Future<int?>
设置颜色滤镜
setVideoEffectColorFilterIntensity(double intensity) → Future<int?>
设置已启用的颜色滤镜强度
setVideoEffectNodes(List<String>? effectNodes) → Future<int?>
设置视频特效素材包
setVideoEncoderConfig(List<VideoEncoderConfig> channelSolutions) → Future<int?>
视频发布端设置推送多路流时各路流的参数,包括分辨率、帧率、码率、缩放模式、网络不佳时的回退策略等
setVideoOrientation(VideoOrientation orientation) → Future<int?>
在自定义视频前处理及编码前,设置 RTC 链路中的视频帧朝向,默认为 Adaptive 模式
setVideoRotationMode(VideoRotationMode rotationMode) → Future<int?>
设置采集视频的旋转模式,默认以 App 方向为旋转参考系
setVideoWatermark({StreamIndex streamIndex = StreamIndex.main, required String imagePath, required WatermarkConfig watermarkConfig}) → Future<int?>
在指定视频流上添加水印
setVoiceChangerType(VoiceChangerType voiceChanger) → Future<int?>
设置变声特效类型
setVoiceReverbType(VoiceReverbType voiceReverb) → Future<int?>
设置混响特效类型
startASR({required RTCASRConfig asrConfig, required RTCASREngineEventHandler handler}) → Future<int?>
开启自动语音识别服务
startAudioCapture() → Future<int?>
开启内部音频采集,默认为关闭状态
startAudioRecording(AudioRecordingConfig config) → Future<int?>
开启录制语音通话,生成本地文件。
startCloudProxy(List<CloudProxyInfo> cloudProxiesInfo) → Future<int?>
开启云代理
startEchoTest({required EchoTestConfig config, required int delayTime}) → Future<int?>
开启音视频回路测试
startFileRecording({StreamIndex streamIndex = StreamIndex.main, required RecordingConfig config, required RecordingType recordingType}) → Future<int?>
将通话过程中的音视频数据录制到本地的文件中
startHardwareEchoDetection(String testAudioFilePath) → Future<int?>
开启通话前回声检测
startLiveTranscoding({required String taskId, required LiveTranscoding transcoding, required RTCLiveTranscodingObserver observer}) → Future<int?>
新增转推直播任务,并设置合流的图片、视频视图布局和音频属性
startNetworkDetection({required bool isTestUplink, required int expectedUplinkBitrate, required bool isTestDownlink, required int expectedDownlinkBitrate}) → Future<int?>
开启通话前网络探测
startPlayPublicStream(String publicStreamId) → Future<int?>
订阅指定公共流
startPushMixedStreamToCDN({required String taskId, required MixedStreamConfig mixedConfig, RTCMixedStreamObserver? observer}) → Future<int?>
v3.54.1 新增
startPushPublicStream({required String publicStreamId, required PublicStreaming publicStreamParam}) → Future<int?>
发布一路公共流
startPushSingleStreamToCDN({required String taskId, required PushSingleStreamParam param, required RTCPushSingleStreamToCDNObserver observer}) → Future<int?>
新增单流转推直播任务
startScreenCapture(ScreenMediaType type) → Future<int?>
使用 RTC SDK 内部采集模块开始采集屏幕音频流和(或)视频流
startVideoCapture() → Future<int?>
开启内部视频采集,默认为关闭状态
startVideoDigitalZoomControl(ZoomDirectionType direction) → Future<int?>
开启本地摄像头持续数码变焦,缩放或移动。设置对本地预览画面和发布到远端的视频都生效。
stopASR() → Future<int?>
关闭语音识别服务
stopAudioCapture() → Future<int?>
关闭内部音频采集,默认为关闭状态
stopAudioRecording() → Future<int?>
停止音频文件录制
stopCloudProxy() → Future<int?>
关闭云代理
stopEchoTest() → Future<int?>
停止音视频回路测试
stopFileRecording([StreamIndex streamIndex = StreamIndex.main]) → Future<int?>
停止本地录制
stopHardwareEchoDetection() → Future<int?>
停止通话前回声检测
stopLiveTranscoding(String taskId) → Future<int?>
停止转推直播
stopNetworkDetection() → Future<int?>
停止通话前网络探测
stopPlayPublicStream(String publicStreamId) → Future<int?>
取消订阅指定公共流
stopPushPublicStream(String publicStreamId) → Future<int?>
停止发布公共流
stopPushStreamToCDN(String taskId) → Future<int?>
停止单流转推直播任务
stopScreenCapture() → Future<int?>
屏幕共享时,停止屏幕流采集
stopVideoCapture() → Future<int?>
关闭本地视频采集,默认为关闭状态
stopVideoDigitalZoomControl() → Future<int?>
停止本地摄像头持续数码变焦。
switchCamera(CameraId cameraId) → Future<int?>
切换移动端前置/后置摄像头
takeLocalSnapshot(StreamIndex streamIndex, String filePath) → CancelableOperation<LocalSnapshot>
截取本地视频画面
takeRemoteSnapshot(RemoteStreamKey streamKey, String filePath) → CancelableOperation<RemoteSnapshot>
截取远端视频画面
toString() → String
A string representation of this object.
inherited
updateLiveTranscoding({required String taskId, required LiveTranscoding transcoding}) → Future<int?>
更新转推直播参数
updateLoginToken(String token) → Future<int?>
更新用户用于登录的 Token
updatePublicStreamParam({required String publicStreamId, required PublicStreaming publicStreamParam}) → Future<int?>
更新发布的公共流参数
updatePushMixedStreamToCDN({required String taskId, required MixedStreamConfig mixedConfig}) → Future<int?>
v3.54.1 新增
updateScreenCapture(ScreenMediaType type) → Future<int?>
开启屏幕采集后,更新采集的媒体类型
updateVideoEffectNode({required String effectNode, required String key, required double value}) → Future<int?>
设置特效强度

Operators

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

Static Methods

createRTCVideo(RTCVideoContext context) → Future<RTCVideo?>
创建引擎对象
getErrorDescription(int code) → Future<String?>
获取 SDK 内各种错误码、警告码的描述文字。
getSDKVersion() → Future<String?>
获取当前 SDK 版本信息
setLogConfig(RTCLogConfig logConfig) → Future<int?>
v3.54.1 新增