ScreenCaptureSourceInfo
可共享窗口或屏幕的信息。在 IScreenCaptureSourceList 中返回。
struct ScreenCaptureSourceInfo { ScreenCaptureSourceType type; view_t sourceId; const char* sourceName; ThumbImageBuffer thumbImage; ThumbImageBuffer iconImage; const char* processPath; const char* sourceTitle; bool primaryMonitor; #if defined(_WIN32) Rectangle position; bool minimizeWindow; view_t sourceDisplayId; ScreenCaptureSourceInfo() : type(ScreenCaptureSourceType_Unknown), sourceId(nullptr), sourceName(nullptr), processPath(nullptr), sourceTitle(nullptr), primaryMonitor(false), isOccluded(false), minimizeWindow(false), sourceDisplayId((view_t)-2) {} #else ScreenCaptureSourceInfo() : type(ScreenCaptureSourceType_Unknown), sourceId(nullptr), sourceName(nullptr), processPath(nullptr), sourceTitle(nullptr), primaryMonitor(false), isOccluded(false) {} #endif };
属性
- type
- 共享目标的类型。详见 ScreenCaptureSourceType。
- sourceId
- 对于窗口,表示窗口 ID(Window ID);对于屏幕,表示屏幕 ID(Display ID)。
- sourceName
- 窗口或屏幕的名称。UTF-8 编码。
- thumbImage
- 缩略图的图像内容。详见 ThumbImageBuffer。
- iconImage
- 图标的图像内容。详见 ThumbImageBuffer。
- processPath
- 窗口所属的进程。UTF-8 编码。
- sourceTitle
- 窗口标题。UTF-8 编码。
- primaryMonitor
- 屏幕是否为主显示屏:
true
: 屏幕为主显示屏。false
: 屏幕不是主显示屏。
- position
- 窗口相对于整个屏幕空间(包含所有可共享屏幕)的位置。详见 Rectangle。
- minimizeWindow
- (仅适用于 Windows) 窗口是否已最小化:
true
: 窗口已最小化。false
: 窗口未最小化。
- sourceDisplayId
- (仅适用于 Windows) 窗口所在的屏幕 ID。如果窗口为跨屏幕显示,则表示与该窗口相交面积最大的屏幕 ID。如果窗口位于可见屏幕之外,则该成员的值为 -2。