视频渲染
- React Native
更新时间不可用
enableInstantMediaRendering
开启音视频帧加速渲染。
abstract enableInstantMediaRendering(): number;成功调用该方法后,SDK 会开启加速出图和出声模式,可加快用户加入频道后的首帧出图与出声速度。
注: 主播端和观众端都需调用该方法开启音视频帧加速渲染才可体验该功能。 一旦成功调用该方法,只能通过调用 release 方法销毁 IRtcEngine 对象来取消加速渲染。
适用场景
声网推荐在直播场景下,对观众开启该模式。
调用时机
该方法需要在加入频道前调用。
返回值
-
0: 方法调用成功。
-
< 0: 方法调用失败。详见错误码了解详情和解决建议。
- -7: IRtcEngine 尚未初始化就调用方法。
所属接口类
setLocalRenderMode
更新本地视图显示模式。
abstract setLocalRenderMode(
renderMode: RenderModeType,
mirrorMode?: VideoMirrorModeType
): number;初始化本地用户视图后,你可以调用该方法更新本地用户视图的渲染和镜像模式。该方法只影响本地用户看到的视频画面,不影响本地视频的发布。
调用时机
- 你可以在通话中多次调用该方法,多次更新本地用户视图的显示模式。
参数
| 参数名 | 描述 |
|---|---|
renderMode | 本地视图显示模式。详见 RenderModeType。 |
mirrorMode |
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
所属接口类
setLocalRenderTargetFps
设置本地视频渲染的最大帧率。
abstract setLocalRenderTargetFps(
sourceType: VideoSourceType,
targetFps: number
): number;适用场景
在对视频渲染帧率要求不高的场景(例如:屏幕共享、在线教育)下,你可以调用该方法设置本地视频渲染的最大帧率,SDK 进行本地渲染的实际帧率会尽量接近该值,从而减小 CPU 消耗、提升系统性能。
调用时机
该方法在加入频道前后均可调用。
参数
| 参数名 | 描述 |
|---|---|
sourceType | 视频源的类型,详见 VideoSourceType。 |
targetFps |
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
所属接口类
setLocalVideoMirrorMode
设置本地视频镜像。
abstract setLocalVideoMirrorMode(mirrorMode: VideoMirrorModeType): number;废弃
弃用: 该方法已废弃。
参数
| 参数名 | 描述 |
|---|---|
mirrorMode | 本地视频镜像模式。详见 VideoMirrorModeType。 |
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
所属接口类
setRemoteRenderMode
更新远端视图显示模式。
abstract setRemoteRenderMode(
uid: number,
renderMode: RenderModeType,
mirrorMode: VideoMirrorModeType
): number;初始化远端用户视图后,你可以调用该方法更新远端用户视图在本地显示时的渲染和镜像模式。该方法只影响本地用户看到的视频画面。
注:
- 你可以在通话中多次调用该方法,多次更新远端用户视图的显示模式。
参数
| 参数名 | 描述 |
|---|---|
uid | |
renderMode | 远端用户视图的渲染模式,详见 RenderModeType。 |
mirrorMode | 远端用户视图的镜像模式,详见 VideoMirrorModeType。 |
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
setRemoteRenderModeEx
设置远端视图显示模式。
abstract setRemoteRenderModeEx(
uid: number,
renderMode: RenderModeType,
mirrorMode: VideoMirrorModeType,
connection: RtcConnection
): number;初始化远端用户视图后,你可以调用该方法更新远端用户视图在本地显示时的渲染和镜像模式。该方法只影响本地用户看到的视频画面。
参数
| 参数名 | 描述 |
|---|---|
uid | |
renderMode | 远端视图显示模式,详见 RenderModeType。 |
mirrorMode | 远端用户视图的镜像模式,详见 VideoMirrorModeType。 |
connection | Connection 信息。详见 RtcConnection。 |
返回值
- 0:方法调用成功。
- < 0:方法调用失败。详见错误码了解详情和解决建议。
所属接口类
setRemoteRenderTargetFps
设置视频在远端渲染的最大帧率。
abstract setRemoteRenderTargetFps(targetFps: number): number;适用场景
在对视频渲染帧率要求不高的场景(例如:屏幕共享、在线教育)或者远端使用中低端设备的场景下,你可以调用该方法设置视频在远端渲染的最大帧率,SDK 进行远端视频渲染的实际帧率会尽量接近该值,从而减小 CPU 消耗、提升系统性能。
调用时机
该方法在加入频道前后均可调用。
参数
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
所属接口类
setRenderMode
设置播放器视图的渲染模式。
abstract setRenderMode(renderMode: RenderModeType): number;参数
| 参数名 | 描述 |
|---|---|
renderMode | 播放器视图的渲染模式。详见 RenderModeType。 |
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
所属接口类
startMediaRenderingTracing
开启视频帧渲染数据打点。
abstract startMediaRenderingTracing(): number;成功调用该方法后,SDK 会以调用该方法的时刻作为起点,并通过 onVideoRenderingTracingResult 回调报告视频帧渲染的相关信息。
注:
- 如果你未调用该方法,SDK 默认以调用 joinChannel 加入频道的时刻为起始点开始打点,自动开始跟踪视频的渲染事件。你可以根据实际业务场景,在合适的时机调用该方法,进行自定义打点。
- 离开当前频道后,SDK 会自动重置该时间点为下一次加入频道的时刻。
适用场景
声网推荐你将该方法和 App 中的 UI 设置(按钮、滑动条等)结合使用,用于获取符合终端用户实际体验的首帧出图耗时的场景。例如:在终端用户在点击 加入频道 按钮的时刻调用该方法进行打点,然后通过 onVideoRenderingTracingResult 回调获取视频帧渲染过程中的各阶段耗时,从而针对各阶段耗时进行专项优化。
返回值
-
0: 方法调用成功。
-
< 0: 方法调用失败。详见错误码了解详情和解决建议。
- -7: IRtcEngine 尚未初始化就调用方法。
所属接口类
startMediaRenderingTracingEx
开启视频帧渲染数据打点。
abstract startMediaRenderingTracingEx(connection: RtcConnection): number;成功调用该方法后,SDK 会以调用该方法的时刻作为起点,并通过 onVideoRenderingTracingResult 回调报告视频帧渲染的相关信息。
注:
- 如果你未调用该方法,SDK 默认以调用 joinChannel 加入频道的时刻为起始点开始打点,自动开始跟踪视频的渲染事件。你可以根据实际业务场景,在合适的时机调用该方法,进行自定义打点。
- 离开当前频道后,SDK 会自动重置该时间点为下一次加入频道的时刻。
适用场景
声网推荐你将该方法和 App 中的 UI 设置(按钮、滑动条等)结合使用,用于获取符合终端用户实际体验的首帧出图耗时的场景。例如:在终端用户在点击 加入频道 按钮的时刻调用该方法进行打点,然后通过 onVideoRenderingTracingResult 回调获取视频帧渲染过程中的各阶段耗时,从而针对各阶段耗时进行专项优化。
参数
| 参数名 | 描述 |
|---|---|
connection | Connection 信息。详见 RtcConnection。 |
返回值
- 0: 方法调用成功。
- < 0: 方法调用失败。详见错误码了解详情和解决建议。
所属接口类
onTranscodedStreamLayoutInfo
已接收携带布局信息的合图视频流回调。
onTranscodedStreamLayoutInfo?(
connection: RtcConnection,
uid: number,
width: number,
height: number,
layoutCount: number,
layoutlist: VideoLayout[]
): void;当本地第一次接收到合图服务器发送的合图视频流,或者合图流的布局信息有变化时,SDK 会触发该回调,报告合图视频流中每一路子视频流的布局信息。
参数
| 参数名 | 描述 |
|---|---|
connection | Connection 信息。详见 RtcConnection。 |
uid | |
width | |
height | |
layoutCount | |
layoutlist | 某一路合图视频流的详细布局信息。详见 VideoLayout。 |
所属接口类
onVideoRenderingTracingResult
视频帧渲染事件回调。
onVideoRenderingTracingResult?(
connection: RtcConnection,
uid: number,
currentEvent: MediaTraceEvent,
tracingInfo: VideoRenderingTracingInfo
): void;调用 startMediaRenderingTracing 方法或加入频道后,SDK 会触发该回调,报告视频帧渲染的事件和渲染过程中的指标。开发者可以针对指标进行专项优化,以提高出图效率。
参数
| 参数名 | 描述 |
|---|---|
connection | Connection 信息。详见 RtcConnection。 |
uid | |
currentEvent | 当前视频帧渲染事件。详见 MediaTraceEvent。 |
tracingInfo | 视频帧渲染过程中的指标。开发者需要尽可能降低指标值,以提高出图效率。详见 VideoRenderingTracingInfo。 |