FScreenCaptureParameters
- Unreal Blueprint
更新时间不可用
屏幕共享的参数配置。
USTRUCT(BlueprintType)
struct FScreenCaptureParameters
{
GENERATED_BODY()
public:
UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ScreenCaptureParameters")
FVideoDimensions dimensions = FVideoDimensions();
UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ScreenCaptureParameters")
int frameRate = 5;
UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ScreenCaptureParameters")
int bitrate = 0;
UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ScreenCaptureParameters")
bool captureMouseCursor = true;
UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ScreenCaptureParameters")
bool windowFocus = false;
UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ScreenCaptureParameters")
int64 excludeWindowList = 0;
UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ScreenCaptureParameters")
int excludeWindowCount = 0;
UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ScreenCaptureParameters")
int highLightWidth = 0;
UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ScreenCaptureParameters")
int highLightColor = 0;
UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|ScreenCaptureParameters")
bool enableHighLight = false;
FScreenCaptureParameters(){}
FScreenCaptureParameters(const agora::rtc::ScreenCaptureParameters & AgoraData){
dimensions = FVideoDimensions(AgoraData.dimensions);
frameRate = AgoraData.frameRate;
bitrate = AgoraData.bitrate;
captureMouseCursor = AgoraData.captureMouseCursor;
windowFocus = AgoraData.windowFocus;
highLightWidth = AgoraData.highLightWidth;
highLightColor = AgoraData.highLightColor;
enableHighLight = AgoraData.enableHighLight;
}
agora::rtc::ScreenCaptureParameters CreateAgoraData() const {
agora::rtc::ScreenCaptureParameters AgoraData;
AgoraData.dimensions = dimensions.CreateAgoraData();
AgoraData.frameRate = frameRate;
AgoraData.bitrate = bitrate;
AgoraData.captureMouseCursor = captureMouseCursor;
AgoraData.windowFocus = windowFocus;
AgoraData.highLightWidth = highLightWidth;
AgoraData.highLightColor = highLightColor;
AgoraData.enableHighLight = enableHighLight;
return AgoraData;
}
void FreeAgoraData(agora::rtc::ScreenCaptureParameters& AgoraData) const {
dimensions.FreeAgoraData(AgoraData.dimensions);
}
};属性
| 参数名 | 描述 |
|---|---|
dimensions | 屏幕共享流的视频编码分辨率。详见 FUABT_VideoDimensions。默认值为 1920 × 1080,即 2073600 像素。该像素值为计费标准。 当共享的屏幕分辨率宽高比与该值设置不一致时,SDK 按如下策略进行编码。假设 dimensions 设为 1920 × 1080:
注: 在共享文档的场景(SCREEN_SCENARIO_DOCUMENT)下设置编码分辨率时,选择以下两种方式其中之一。
|
frameRate | |
bitrate | |
captureMouseCursor | |
windowFocus | 调用 StartScreenCaptureByWindowId 方法共享窗口时,是否将该窗口前置:
注: 由于 macOS 系统限制,设置该成员将窗口前置时,如果当前的应用存在多个窗口,只会将主窗口前置。 |
excludeWindowList | 待屏蔽窗口的 ID 列表。调用 StartScreenCaptureByDisplayId 开启屏幕共享时,你可以通过该参数屏蔽指定的窗口。你可以在调用 UpdateScreenCaptureParameters 更新屏幕共享的配置参数时,通过该参数动态屏蔽指定的窗口。 |
enableHighLight | |
highLightColor | |
highLightWidth | |
excludeWindowCount |