更新时间:2024-10-23 GMT+08:00
分享

视频管理

createRenderer

public abstract SurfaceView createRenderer(Context context)

功能说明

创建渲染视图。

请求参数

context:上下文。

返回参数

创建的渲染视图。

updateLocalRenderMode

public abstract int updateLocalRenderMode(HRTCVideoDisplayMode displayMode, HRTCVideoMirrorType mirrorMode) = 0;

功能说明

设置本地窗口显示模式,镜像模式。

请求参数

返回参数

setupLocalView

public abstract int setupLocalView(SurfaceView view);
public abstract int setupLocalView(SurfaceView view, HRTCVideoDisplayMode viewMode);

功能说明

设置本地窗口。

请求参数
  • view:窗口视图。
  • displayMode:显示模式,具体请参见HRTCVideoDisplayMode。不设置则默认为裁剪模式。
返回参数

pushLocalVideo

public abstract int pushLocalVideo(boolean push);

功能说明

设置是否发送本地视频流。

请求参数

push:true表示发送,false表示不发送。

返回参数

setVideoEncoderConfig

public abstract int setVideoEncoderConfig(int totalBitRate, List<HRTCVideoEncParam> encoderParams);
public abstract int setVideoEncoderConfig(HRTCVideoEncParam encoderParam);

功能说明

设置视频编码参数。具体请参见全平台setVideoEncoderConfig

请求参数
  • totalBitRate:视频最大码率,默认值4096。
  • encoderParams:视频编码参数列表,具体请参见HRTCVideoEncParam
  • encoderParam:视频编码参数,具体请参见HRTCVideoEncParam
返回参数
  • 0:成功。
  • >0:失败。具体请参见客户端错误码
    • 安卓移动端采集帧率限制20帧,建议设置的编码帧率不要超过20帧

setNonStandardVideoEncoder

public abstract int setNonStandardVideoEncoder(List<HRTCVideoEncParam> encParams);

功能说明

设置非标视频编码参数。参数列表,第一个为大流(必填),第二个为小流(选填)。

请求参数

encoderParams:视频编码参数列表,具体请参见HRTCVideoEncParam

返回参数

setRemoteVideoAdjustResolution

public abstract int setRemoteVideoAdjustResolution(boolean enable);

功能说明

设置是否开启远端流分辨率自适应。默认开启自适应。

请求参数

enable:是否开启分辨率自适应。默认开启。

返回参数

startLocalPreview

public abstract int startLocalPreview();

功能说明

开始本地预览。

请求参数

返回参数
  • 该接口限制在房间外调用,在房间内设置不生效,需要调用stopLocalPreview关闭预览,否则将一直处于预览状态。
  • 在房间内预览:可调用setupLocalView设置有效view开启预览,设置为null表示关闭预览,不需要调用stopLocalPreview。
  • 在房间外预览:先调用setupLocalView设置有效view,再调用startLocalPreview开启预览;关闭时,先调用setupLocalView设置为null,再调用stopLocalPreview关闭预览。

stopLocalPreview

public abstract int stopLocalPreview();

功能说明

停止本地预览。

请求参数

返回参数

如果调用了startLocalPreview,需调用stopLocalPreview关闭预览,否则将一直处于预览状态。该接口限制在房间外调用,在房间内设置不生效。

startRemoteStreamView

public abstract int startRemoteStreamView(String userId, SurfaceView view, HRTCStreamType streamType, boolean disableAdjustRes);

功能说明

开始订阅远端视频流,并设置远端窗口。

【请求参数】
  • userId:用户ID。
  • view:远端窗口视图。
  • streamType:流类型,具体请参见HRTCStreamType
  • disableAdjustRes:禁用分辨率自适应的标志。

返回参数

stopRemoteStreamView

public abstract int stopRemoteStreamView(String userId);

功能说明

停止订阅远端视频流,并关闭远端窗口。

请求参数

userId:用户ID。

返回参数

setupRemoteView

public abstract int setupRemoteView(String userId, SurfaceView view);

功能说明

设置远端流视图,该接口不影响收流。

请求参数

  • userId:远端用户的唯一标识。
  • view:远端窗口视图,view为null时,解除窗口绑定。
返回参数

updateRemoteRenderMode

public abstract int updateRemoteRenderMode(String userId, HRTCVideoDisplayMode displayMode, HRTCVideoMirrorType mirrorMode);

功能说明

设置远端窗口渲染模式。

请求参数
返回参数

pullRemoteVideo

public abstract int pullRemoteVideo(String userId, boolean pull);

功能说明

开启、关闭指定远端用户的视频流。

请求参数

  • userId:远端用户的userId,唯一标识。
  • pull:true表示开始接收,false表示关闭接收。

返回参数

pullAllRemoteVideo

public abstract int pullAllRemoteVideo(boolean pull);

功能说明

批量开启、关闭当前所有远端用户的视频流。

请求参数

pull:true表示开启接收,false表示关闭接收, 默认开启接收。

返回参数

开启本地镜像后,本地视频窗口看到的是镜像视图,但不影响远端查看自己的视图。

setVideoEncoderMirror

public abstract int setVideoEncoderMirror(HRTCVideoMirrorType mirrorType);

功能说明

设置视频编码镜像模式。

请求参数

mirrorType:镜像模式,是否开启镜像,具体请参见HRTCVideoMirrorType,默认值false。

返回参数

开启镜像后,仅改变编码发送给远端用户的视图,不影响自己看到的本地视频窗口。

enableLocalVideo

public abstract int enableLocalVideo(boolean enabled);

功能说明

设置是否开启摄像头采集视频。

请求参数

enabled:true表示开启,false表示关闭。

返回参数

默认开启,本端调用时,远端用户会触发onRemoteVideoStateChangedNotify远端视频流状态变化回调。

enableVideoSuperResolution

public abstract int enableVideoSuperResolution(boolean enabled);

功能说明

设置是否开启视频超分 。

请求参数

enabled:true表示开启,false表示关闭。

返回参数

enableSmallVideoStream

public abstract int enableSmallVideoStream(boolean enable, HRTCVideoEncParam encoderParam);

功能说明

大小流模式设置是否开启小流,并设置编码参数。小流选择性开启。

请求参数
  • enable:是否开启小流。
  • encoderParam:视频编码参数。包括流类型、宽、高、码率、帧率等。具体请参见HRTCVideoEncParam
返回参数

setPriorRemoteVideoStreamType

public abstract int setPriorRemoteVideoStreamType(HRTCVideoStreamType type);

功能说明

大小流模式,设置所有订阅的远端视频流类型。默认订阅大流,优先应用setRemoteVideoStreamType接口设置的用户流类型。

请求参数

type:订阅的视频流类型,分为大流和小流,具体请参见HRTCVideoStreamType

返回参数

setRemoteVideoStreamType

public abstract int setRemoteVideoStreamType(String userId, HRTCVideoStreamType type);

功能说明

大小流模式,设置指定订阅的远端视频流类型。

请求参数

  • userId:远端用户唯一标识。
  • type:订阅的视频流类型,分为大流和小流,具体请参见HRTCVideoStreamType

startPublishStream

public abstract int startPublishStream(String taskId, List<String> urlList, HRTCTranscodeConfig transcodeConfig);

功能说明

开始旁路推流。

请求参数

  • taskId:任务id,业务自行定义,保证唯一。
  • urlList:url数组。参考HRTCRtmpUrlList
  • transcodeConfig:用户id数组和其他参数,具体请参见HRTCTranscodeConfig

返回参数

updateTransCoding

public abstract int updateTransCoding(String taskId, HRTCTranscodeConfig transcodeConfig);

功能说明

更新旁路推流。

请求参数

  • taskId:任务id,业务自行定义,保证唯一。
  • transcodeConfig:用户id数组和其他参数,具体请参见HRTCTranscodeConfig

返回参数

stopPublishStream

virtual int stopPublishStream(const char* taskId)

功能说明

停止旁路推流。

请求参数

taskId:任务id,支持自定义,需保证唯一性。

返回参数

startAllRemoteView

public abstract int startAllRemoteView(int counts, List<HRTCVideoRemoteView> viewInfoList);

功能说明

批量设置远端流视图。

请求参数

  • counts:必选,number类型,为数组的长度;如果设置为0,则取消所有远端流视图,大于0,则取消没选中用户的远端视图。
  • viewInfoList:订阅的视图信息,主要包括该视图的句柄、流类型、用户ID、是否自适应等,具体请参见HRTCVideoRemoteView
返回参数

相关文档