# ScreenCaptureParameters (/zh-CN/api-reference/rtc/cpp-all-platforms/class-screencaptureparameters)

> For AI agents: see the complete documentation index at [llms.txt](/llms.txt).

<a id="class_screencaptureparameters__prototype"></a>

```cpp
struct ScreenCaptureParameters {
  bool captureAudio;
  ScreenAudioParameters audioParams;
  VideoDimensions dimensions;
  int frameRate;
  int bitrate;
  bool captureMouseCursor;
  bool windowFocus;
  view_t* excludeWindowList;
  int excludeWindowCount;
  int highLightWidth;
  unsigned int highLightColor;
  bool enableHighLight;
};
```

<a id="class_screencaptureparameters__parameters"></a>

## 属性 [#属性]

<ParameterList>
<a id="dimensions"></a>
<Parameter name="dimensions">

:::note
注： 在文档共享场景中设置编码分辨率时，请参考建议设置方式。
:::

屏幕共享视频流的编码分辨率。默认值为 1920 × 1080，即 2,073,600 像素。声网会根据该参数的值计算费用。如果屏幕尺寸与该参数值不同，SDK 会采用以下编码策略。假设 `dimensions` 设置为 1920 × 1080：

- 如果屏幕尺寸小于 `dimensions`，例如 1000 × 1000 像素，SDK 使用屏幕尺寸（即 1000 × 1000 像素）进行编码。
- 如果屏幕尺寸大于 `dimensions`，例如 2000 × 1500 像素，SDK 会在保持屏幕宽高比（4\:3）的前提下，使用不超过 `dimensions` 的最大值进行编码，即 1440 × 1080。

详见 [VideoDimensions](/zh-CN/api-reference/rtc/cpp-all-platforms/class-videodimensions)。

</Parameter>
<a id="framerate"></a>
<Parameter name="frameRate">

在 Windows 和 macOS 上，表示屏幕共享视频流的编码帧率（fps）。默认值为 5。声网不建议设置超过 15 的值。

</Parameter>
<a id="bitrate"></a>
<Parameter name="bitrate">

在 Windows 和 macOS 上，表示屏幕共享视频流的编码码率（Kbps）。默认值为 0，表示 SDK 会根据当前屏幕的分辨率自动计算码率。

</Parameter>
<a id="capturemousecursor"></a>
<Parameter name="captureMouseCursor">

:::note
注： 由于 macOS 系统限制，在屏幕共享时设置为 false 无效（共享窗口时不受影响）。
:::

是否在屏幕共享中捕获鼠标：

- true：（默认）捕获鼠标。
- false：不捕获鼠标。

</Parameter>
<a id="windowfocus"></a>
<Parameter name="windowFocus">

:::note
注： 由于 macOS 系统限制，当设置该参数将窗口置于前台时，如果当前应用有多个窗口，只有主窗口会被置于前台。
:::

调用 [startScreenCaptureByWindowId](/zh-CN/api-reference/rtc/cpp-all-platforms/video/screencapture#api_irtcengine_startscreencapturebywindowid) 方法共享窗口时，是否将该窗口置于前台：

- true：将窗口置于前台。
- false：（默认）不将窗口置于前台。

</Parameter>
<a id="excludewindowlist"></a>
<Parameter name="excludeWindowList">

要屏蔽的窗口 ID 列表。调用 [startScreenCaptureByDisplayId](/zh-CN/api-reference/rtc/cpp-all-platforms/video/screencapture#api_irtcengine_startscreencapturebydisplayid) 开始屏幕共享时，可使用该参数屏蔽指定窗口。调用 [updateScreenCaptureParameters](/zh-CN/api-reference/rtc/cpp-all-platforms/video/screencapture#api_irtcengine_updatescreencaptureparameters) 更新屏幕共享配置时，也可使用该参数动态屏蔽指定窗口。

</Parameter>
<a id="excludewindowcount"></a>
<Parameter name="excludeWindowCount">

要排除的窗口数量。

:::note
注： 在 Windows 平台上，该参数的最大值为 24；若超过此值，窗口排除将失败。
:::

</Parameter>
<a id="highlightwidth"></a>
<Parameter name="highLightWidth">

（仅适用于 macOS 和 Windows）边框的宽度（像素）。默认值为 5，取值范围为 (0, 50]。

:::note
注： 仅当 `highLighted` 设置为 true 时该参数才生效。
:::

</Parameter>
<a id="highlightcolor"></a>
<Parameter name="highLightColor">

（仅适用于 macOS 和 Windows）

- 在 Windows 平台上，边框颜色为 ARGB 格式。默认值为 0xFF8CBF26。
- 在 macOS 上，`COLOR_CLASS` 表示 `NSColor`。

</Parameter>
<a id="enablehighlight"></a>
<Parameter name="enableHighLight">

:::note
注： 当共享窗口或屏幕的部分区域时，若设置该参数为 true，SDK 会在整个窗口或屏幕周围显示边框。
:::

（仅适用于 macOS 和 Windows）是否在共享的窗口或屏幕周围显示边框：

- true：显示边框。
- false：（默认）不显示边框。

</Parameter>
</ParameterList>
