TRTC_TranscodingConfigMode_Template_ScreenSharing property

int TRTC_TranscodingConfigMode_Template_ScreenSharing
final

屏幕共享模式,适用于在线教育等以屏幕共享为主的使用场景,仅支持 Windows 和 macOS 系统的 SDK。

SDK 首先会根据您设置的目标分辨率(通过 videoWidthvideoHeight 参数)构建一块画布。在老师开启屏幕共享前,SDK 会将摄像头画面等比缩放后绘制到画布上;在老师开启屏幕共享后,SDK 会将屏幕上的视频画面绘制到同一块画布上。 这样做的目的是确保混合转码模块的输出分辨率保持一致,避免在课程回放和网页播放(网页播放器不支持可调分辨率)时出现画面模糊的问题。 同时,默认情况下,会将开麦学生的音频混合到老师的音视频流中。

教学模式下的视频内容主要是共享的屏幕,同时传输摄像头画面和屏幕画面会浪费带宽。 因此,推荐的做法是通过 setLocalVideoRenderCallback API 直接将摄像头画面绘制到当前屏幕上。 在此模式下,您无需设置 TRTCTranscodingConfig 中的 mixUsers 参数,SDK 不会混合学生的画面,以免干扰屏幕共享效果。

您可以将 TRTCTranscodingConfig 中的宽度 x 高度设置为 0 px x 0 px,SDK 会根据用户当前屏幕的宽高比自动计算出合适的分辨率。

  • 如果老师当前屏幕宽度小于或等于 1920 px,SDK 会使用老师当前屏幕的实际分辨率。
  • 如果老师当前屏幕宽度大于 1920 px,SDK 会根据当前屏幕宽高比选择 1920x1080(16:9)、1920x1200(16:10)和 1920x1440(4:3)中的一种分辨率。

Implementation

static final int TRTC_TranscodingConfigMode_Template_ScreenSharing = 4;