跳到主要内容

发布与取消

用户以主播身份加入房间后,需要发布资源,房间内的其他主播和观众才能看见、听见。

设置发布资源事件回调监听

设置发布资源事件回调

方法

Dart
RCRTCEngine.onPublished

返回值

参数描述
type发布资源的类型
code接口结果码
errMsg失败原因

示例代码

Dart
engine.onPublished = (RCRTCMediaType type, int code, String? errMsg) {
if (code != 0) {
// 发布失败
print('发布 $type 资源失败: $errMsg');
} else {
// 发布成功
print('发布 $type 资源成功');
}
};

设置取消发布资源事件回调

方法

Dart
RCRTCEngine.onUnpublished

返回值

参数描述
type取消发布资源的类型
code接口结果码
errMsg失败原因

示例代码

Dart
engine.onUnpublished = (RCRTCMediaType type, int code, String? errMsg) {
if (code != 0) {
// 取消发布失败
print('取消发布 $type 资源失败: $errMsg');
} else {
// 取消发布成功
print('取消发布 $type 资源成功');
}
};

发布

直播房间发布音视频流,可调用 RCRTCEngine 中的 publish 来发布本地音视频资源。

方法

Dart
RCRTCEngine.publish();

参数说明

参数类型必填说明
typeRCRTCMediaType发布的资源类型

示例代码

发布音视频资源

Dart
// 发布音视频资源,即麦克风、摄像头采集数据
engine.publish(RCRTCMediaType.audio_video);

发布纯音频资源

Dart
// 发布纯音频资源,即麦克风采集数据
engine.publish(RCRTCMediaType.audio);

发布纯视频资源

Dart
// 发布纯视频资源,即摄像头采集数据
engine.publish(RCRTCMediaType.video);

取消发布

当需要取消发布直播流时,可调用 RCRTCEngine 中的 unpublish 来取消发布本地音视频资源。

方法

Dart
RCRTCEngine.unpublish();

参数说明

参数类型必填说明
typeRCRTCMediaType取消发布的资源类型

示例代码

取消发布音视频资源

Dart
// 取消发布音视频资源,即麦克风、摄像头采集数据
engine.unpublish(RCRTCMediaType.audio_video);

取消发布纯音频资源

Dart
// 取消发布纯音频资源,即麦克风采集数据
engine.unpublish(RCRTCMediaType.audio);

取消发布纯视频资源

Dart
// 取消发布纯视频资源,即摄像头采集数据
engine.unpublish(RCRTCMediaType.video);