ScreenCaptureParameters
屏幕共享的参数配置。
Dart
class ScreenCaptureParameters {
const ScreenCaptureParameters(
{this.dimensions,
this.frameRate,
this.bitrate,
this.captureMouseCursor,
this.windowFocus,
this.excludeWindowList,
this.excludeWindowCount,
this.highLightWidth,
this.highLightColor,
this.enableHighLight});
(name: 'dimensions')
final VideoDimensions? dimensions;
(name: 'frameRate')
final int? frameRate;
(name: 'bitrate')
final int? bitrate;
(name: 'captureMouseCursor')
final bool? captureMouseCursor;
(name: 'windowFocus')
final bool? windowFocus;
(name: 'excludeWindowList')
final List<int>? excludeWindowList;
(name: 'excludeWindowCount')
final int? excludeWindowCount;
(name: 'highLightWidth')
final int? highLightWidth;
(name: 'highLightColor')
final int? highLightColor;
(name: 'enableHighLight')
final bool? enableHighLight;
factory ScreenCaptureParameters.fromJson(Map<String, dynamic> json) =>
_$ScreenCaptureParametersFromJson(json);
Map<String, dynamic> toJson() => _$ScreenCaptureParametersToJson(this);
}
dimensions
信息
在共享文档的场景(screenScenarioDocument)下设置编码分辨率时,选择以下两种方式其中之一。
- 如果你需要最优的画质,建议将编码分辨率设置为与采集分辨率相同。
- 如果你希望在画质、带宽和系统性能之间达到相对平衡,则:
- 当采集分辨率大于 1920 × 1080 时,建议编码分辨率不低于 1920 × 1080。
- 当采集分辨率低于 1920 × 1080 时,建议编码分辨率不低于 1280 × 720。
dimensions 设为 1920 × 1080: - 如果屏幕分辨率小于
dimensions,如 1000 × 1000,SDK 直接按 1000 × 1000 进行编码。 - 如果屏幕分辨率大于
dimensions,如 2000 × 1500,SDK 按屏幕分辨率的宽高比,即 4:3,取dimensions以内的最大分辨率进行编码,即 1440 × 1080。
frameRate
共享视频的帧率。单位为 fps;默认值为 5,建议不要超过 15。
bitrate
共享视频的码率。单位为 Kbps;默认值为 0,表示 SDK 根据当前共享屏幕的分辨率计算出一个合理的值。
captureMouseCursor
信息
受 macOS 系统限制,在共享屏幕时将该参数设置为 false 无效(共享窗口时无影响)。
- true:(默认)采集鼠标。
- false: 不采集鼠标。
windowFocus
信息
由于 macOS 系统限制,设置该成员将窗口前置时,如果当前的应用存在多个窗口,只会将主窗口前置。
- true: 前置窗口。
- false:(默认)不前置窗口。
excludeWindowList
待屏蔽窗口的 ID 列表。调用 startScreenCaptureByDisplayId 开启屏幕共享时,你可以通过该参数屏蔽指定的窗口。你可以在调用 updateScreenCaptureParameters 更新屏幕共享的配置参数时,通过该参数动态屏蔽指定的窗口。
enableHighLight
信息
当你在共享窗口或屏幕的部分区域时,如果将该参数设置为 true,SDK 会对整个窗口或屏幕进行描边。
- true: 描边。
- false: (默认)不描边。
highLightColor
(仅适用于 macOS 和 Windows)
- 在 Windows 平台上,指描边的 ARGB 颜色。默认值为 0xFF8CBF26。
- 在 macOS 平台上,
COLOR_CLASS指NSColor。
highLightWidth
(仅适用于 macOS 和 Windows)描边的宽度 (px)。默认值为 5,取值范围为 (0,50]。
信息
该参数仅在
highLighted 设置为 true 时生效。excludeWindowCount
待屏蔽窗口的数量。
信息
在 Windows 平台上,该参数最大值不超过 24,如果超过该值,则屏蔽窗口功能失效。