Interface ScreenVideoTrackInitConfig

  • React

更新时间不可用

创建屏幕共享视频轨道时的配置对象,用于 AgoraRTC.createScreenVideoTrack。

Properties

displaySurface

Optional
displaySurface: "browser"|"window"|"monitor"

自从

4.17.1

默认选中的共享内容类型,支持设为标签页、应用窗口(如下图)、或屏幕。详见 displaySurface。

注意事项:

该属性仅支持 Chrome 107 及以上版本、Edge 107 及以上版本。

electronScreenSourceId

Optional
electronScreenSourceId: string

使用 Electron 屏幕共享时,传入 sourceId。

encoderConfig

Optional

控制屏幕共享视频的编码配置。

你可以通过以下方式设置该属性:

extensionId

Optional
extensionId: string

使用 Chrome 浏览器插件进行屏幕共享时,传入插件的 ID。

optimizationMode

Optional
optimizationMode: "motion"|"detail"

自从

4.2.0

设置视频传输优化模式。

你可以在视频通话、视频直播或屏幕共享过程中调用此方法动态调整视频的传输优化模式。例如你想要把屏幕共享内容从演示文稿切换为视频时,你可以将传输优化模式从 "detail" 切换为 "motion",确保视频画面在网络波动时不会出现卡顿。

注意事项:

该方法只支持 Chrome 浏览器。

param

视频传输优化模式:

  • "detail": 清晰优先。

    • SDK 会自动根据你的采集分辨率和帧率设定一个最小码率。即使遭遇网络波动,发送码率也不会低于这个值,从而确保清晰的视频画面。
    • 大部分情况下,SDK 不会降低发送分辨率,但是可能会降低帧率。
  • "motion": 自 4.21.0 开始,SDK 默认开启流畅优先模式。

    • SDK 不会启用最小码率策略。遭遇网络波动时,发送端会降低码率来确保接收端的视频画面不会出现中断和卡顿。
    • 大部分情况下,SDK 不会降低帧率,但是可能会降低发送分辨率。

screenSourceType

Optional
screenSourceType: ScreenSourceType

deprecated

自 v4.17.1 起废弃,请改用 displaySurface。

屏幕共享源的类型。

selfBrowserSurface

Optional
selfBrowserSurface: "include"|"exclude"

自从

4.17.1

是否允许用户共享当前标签页:

  • "include":(默认)允许用户共享当前标签页。
  • "exclude":禁止用户共享当前标签页。

详见 selfBrowserSurface。

注意事项:

  • Chrome 107 上该属性的默认值为 "exclude",但 SDK 为保证兼容性将默认值改为了 "include",以免用户升级到 Chrome 107 后无法共享当前标签页。
  • 该属性仅支持 Chrome 107 及以上版本、Edge 107 及以上版本。

surfaceSwitching

Optional
surfaceSwitching: "include"|"exclude"

自从

4.17.1

是否允许用户动态切换共享的标签页:

  • "include":(默认)允许用户动态切换共享的标签页。
  • "exclude":禁止用户动态切换共享的标签页。

详见 surfaceSwitching。

注意事项:

该属性仅支持 Chrome 107 及以上版本、Edge 107 及以上版本。

systemAudio

Optional
systemAudio: "include"|"exclude"

自从

4.17.1

是否允许采集系统音频:

  • "include":(默认)允许采集系统音频。
  • "exclude":禁止采集系统音频。

详见 systemAudio。

注意事项:

该属性仅支持 Windows 设备上的 Chrome 105 及以上版本、Edge 105 及以上版本。