#include <IAgoraRtcEngine.h>
Public 成员函数 | |
ScreenCaptureParameters () | |
ScreenCaptureParameters (const VideoDimensions &d, int f, int b, bool c, bool focus, view_t *ex=NULL, int cnt=0) | |
ScreenCaptureParameters (int width, int height, int f, int b, bool c, bool focus, view_t *ex=NULL, int cnt=0) | |
Public 属性 | |
VideoDimensions | dimensions |
int | frameRate |
int | bitrate |
bool | captureMouseCursor |
bool | windowFocus |
view_t * | excludeWindowList |
int | excludeWindowCount |
int | highLightWidth |
unsigned int | highLightColor |
bool | enableHighLight |
屏幕共享的参数配置。
共享游戏画面时,声网推荐你根据下表设置 ScreenCaptureParameters
中的 dimensions
、frameRate
、bitrate
。
分辨率 | 帧率(fps) | 码率(Kbps) |
---|---|---|
160 × 120 | 15 | 130 |
120 × 120 | 15 | 100 |
320 × 180 | 15 | 280 |
180 × 180 | 15 | 200 |
240 × 180 | 15 | 240 |
320 × 240 | 15 | 400 |
240 × 240 | 15 | 280 |
424 × 240 | 15 | 440 |
640 × 360 | 15 | 800 |
360 × 360 | 15 | 520 |
640 × 360 | 30 | 1200 |
360 × 360 | 30 | 800 |
480 × 360 | 15 | 640 |
480 × 360 | 30 | 980 |
640 × 480 | 15 | 1000 |
480 × 480 | 15 | 800 |
640 × 480 | 30 | 1500 |
480 × 480 | 30 | 1200 |
848 × 480 | 15 | 1220 |
848 × 480 | 30 | 1860 |
640 × 480 | 10 | 800 |
1280 × 720 | 15 | 2260 |
1280 × 720 | 30 | 3420 |
960 × 720 | 15 | 1820 |
960 × 720 | 30 | 2760 |
1920 × 1080 | 15 | 4160 |
1920 × 1080 | 30 | 6300 |
1920 × 1080 | 60 | 6500 |
ScreenCaptureParameters
设置,与 setVideoEncoderConfiguration 无关。
|
inline |
|
inline |
|
inline |
VideoDimensions agora::rtc::ScreenCaptureParameters::dimensions |
共享的屏幕流的视频编码分辨率。
默认值为 1920 × 1080,即 2073600 像素。该像素值为计费标准。
当共享的屏幕分辨率宽高比与该值设置不一致时,SDK 按如下策略进行编码。假设 dimensions 为 1920 × 1080:
int agora::rtc::ScreenCaptureParameters::frameRate |
共享的屏幕流的视频编码帧率,单位为 fps;默认值为 5,建议不要超过 15。
int agora::rtc::ScreenCaptureParameters::bitrate |
共享的屏幕流的视频编码码率,单位为 Kbps;默认值为 0,表示 SDK 根据当前共享屏幕的分辨率计算出一个合理的值。
bool agora::rtc::ScreenCaptureParameters::captureMouseCursor |
是否采集鼠标用于屏幕共享
bool agora::rtc::ScreenCaptureParameters::windowFocus |
调用 startScreenCaptureByWindowId 方法共享窗口时,是否将该窗口前置。
view_t* agora::rtc::ScreenCaptureParameters::excludeWindowList |
待屏蔽窗口的 ID 列表。
调用 startScreenCaptureByScreenRect 或 startScreenCaptureByDisplayId 开启屏幕共享时,你可以通过该参数屏蔽指定的窗口。
开启屏幕共享后,你可以在调用 updateScreenCaptureParameters 更新屏幕共享的配置参数时,通过该参数动态屏蔽指定的窗口。
excludeWindowList
,SDK 会报告错误码 ERR_NOT_SUPPORTED_MUTI_GPU_EXCLUDE_WINDOW(1736)
。 int agora::rtc::ScreenCaptureParameters::excludeWindowCount |
待屏蔽窗口的数量。
int agora::rtc::ScreenCaptureParameters::highLightWidth |
(仅适用于 macOS)描边的宽度 (px)。默认值为 0,取值范围为 [0,50]。
unsigned int agora::rtc::ScreenCaptureParameters::highLightColor |
(仅适用于 macOS)描边的 ARGB 颜色。默认值为 0xFF8CBF26。
bool agora::rtc::ScreenCaptureParameters::enableHighLight |
(仅适用于 macOS)是否对共享的窗口或屏幕进行描边: