跳到主要内容

视频管理

设置视频视图

视频组件

RN CallLib SDK 会暴露呈现视频的组件<RCReactNativeCallVideoView />, 该组件是视频的容器。

代码示例

  1. 引入 RCReactNativeCallVideoView

    import * as CallLib from '@rongcloud/react-native-calllib'
    const RCReactNativeCallVideoView = CallLib.RCReactNativeCallVideoView
  2. 在 React 组件里定义一个数组,用来存放视图容器的引用

    this.viewInfo = []
  3. 在 React 的 render 函数里的使用

    <RCReactNativeCallVideoView
    style={{ width: '100%', height: '100%' }}
    ref={(ref) => {
    const node = findNodeHandle(ref)
    if(node){
    this.viewInfo.push({
    node: node,
    userId: user.userId
    })
    }
    }}
    />

设置视频

通过 CallLib.setVideoView 方法设置视频。因要等原生视图完全渲染完成才能取得容器,所以 call.setVideoView 需要延时调用。

参数说明

参数类型必填说明
userIdString用户id
refStringvideoView的容器的引用
typeNumber视频显示模式 0 铺满 1 自适应
isZOrderOnTopBoolean是否置顶 (仅Android 需要设置)

代码示例

setTimeout(()=>{
CallLib.setVideoView(userId, ref, type, isZOrderOnTop);
}, 200)

切换前后置摄像头

在通话建立之后切换前后置摄像头,该方法适用于通过SDK打开 默认摄像头 的场景,视频默认打开前置摄像头。

示例代码

CallLib.switchCamera();

开关摄像头

参数说明

参数类型必填说明
isOpenBoolean是否开启摄像头
RCCallIWCameraNumber0 未指定 1 前置相机 2 后置相机

在通话建立之后打开/关闭摄像头

示例代码

CallLib.enableCamera(isOpen,RCCallIWCamera)

降级通话

降级通话是指从视频通话转为音频通话,目前仅支持视频往音频单向转换。

参数说明

参数类型必填说明
mediaTypeNumber通话媒体类型 0表示音频通话 1表示视频通话

在通话建立之后降级通话。

示例代码

CallLib.changeMediaType(mediaType)