跳到主要内容

发布自定义资源

提示

在 Android 平台至少需要调用 publish(RCRTCMediaType.audio_video)publish(RCRTCMediaType.audio) 方法发布成功音频资源后,再发布自定义视频流才有效。tag 不能包含 _RongCloudRTC 字符。

创建自定义视频资源

  • 示例代码:

    /// 从assets目录下的资源文件创建自定义视频资源
    engine.createCustomStreamFromAssetsFile(path, tag);

    /// 从本地目录下的资源文件创建自定义视频资源
    engine.createCustomStreamFromFile(path, tag);

设置自定义视频属性

  • 示例代码:

    RCRTCVideoConfig config = RCRTCVideoConfig.create(
    minBitrate: 500,
    maxBitrate: 2200,
    fps: RCRTCVideoFps.fps_24,
    resolution: RCRTCVideoResolution.resolution_720_1280,
    );
    engine.setCustomStreamVideoConfig(tag, config);

设置自定义视频资源预览窗口

  • 示例代码:

    RCRTCView view = await RCRTCView.create();
    engine.setLocalCustomStreamView(tag, view);

发布自定义视频资源

  • 示例代码:

    engine.publishCustomStream(tag);

设置远端自定义视频资源发布监听

  • 示例代码:

    engine.onRemoteCustomStreamPublished = (String roomId, String userId, String tag, RCRTCMediaType type) {
    // roomId 房间 ID
    // userId 远端用户 ID
    // tag 远端自定义视频资源 tag
    // type 资源类型
    };

订阅远端自定义视频资源

  • 示例代码:

    engine.subscribeCustomStream(userId, tag);

设置远端自定义视频资源预览窗口

  • 示例代码:

    RCRTCView view = await RCRTCView.create();
    engine.setRemoteCustomStreamView(userId, tag, view);