selectScreenCaptureTarget method

Future<void> selectScreenCaptureTarget(
  1. TRTCScreenCaptureSourceInfo sourceInfo,
  2. TRTCScreenCaptureProperty property,
  3. {int captureLeft = 0,
  4. int captureTop = 0,
  5. int captureRight = 0,
  6. int captureBottom = 0}
)

选取要分享的屏幕或窗口(该接口仅支持 Windows )

当您通过 getScreenCaptureSources 获取到可以分享的屏幕和窗口之后,您可以调用该接口选定期望分享的目标屏幕或目标窗口。

在屏幕分享的过程中,您也可以随时调用该接口以切换分享目标。

支持如下四种情况:

  • 共享整个屏幕:sourceInfoList 中 type 为 Screen 的 source,capture 设为 { 0, 0, 0, 0 }
  • 共享指定区域:sourceInfoList 中 type 为 Screen 的 source
  • 共享整个窗口:sourceInfoList 中 type 为 Window 的 source,capture 设为 { 0, 0, 0, 0 }
  • 共享窗口区域:sourceInfoList 中 type 为 Window 的 source

参数:

sourceInfo 指定分享源

property 指定屏幕分享目标的属性,包括捕获鼠标,高亮捕获窗口等,详情参考 TRTCScreenCaptureProperty 定义

captureLeft & captureTop & captureRight & captureBottom 指定捕获的区域

Implementation

Future<void> selectScreenCaptureTarget(TRTCScreenCaptureSourceInfo sourceInfo, TRTCScreenCaptureProperty property, {
  int captureLeft = 0,
  int captureTop = 0,
  int captureRight = 0,
  int captureBottom = 0,
}) async {
  return await _cloudChannel!.invokeMethod('selectScreenCaptureTarget', {
    "sourceInfo": sourceInfo.toJson(),
    "property": property.toJson(),
    "captureLeft": captureLeft,
    "captureTop": captureTop,
    "captureRight": captureRight,
    "captureBottom": captureBottom,
  });
}