Skip to content

Commit

Permalink
[Plugin 450] basic version: partial bp compile
Browse files Browse the repository at this point in the history
  • Loading branch information
WinterPu committed Oct 16, 2024
1 parent 152de53 commit fc00690
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2439,7 +2439,7 @@ int UAgoraBPuRtcEngine::StartScreenCaptureByWindowId(int64 windowId, const FRect
#if defined(_WIN32) || (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)
agora::rtc::Rectangle rectangle = regionRect.CreateAgoraData();
agora::rtc::ScreenCaptureParameters screenCaptureParameters = captureParams.CreateAgoraData();
auto ret = AgoraUERtcEngine::Get()->startScreenCaptureByWindowId(UABT::ToView(windowId), rectangle, screenCaptureParameters);
auto ret = AgoraUERtcEngine::Get()->startScreenCaptureByWindowId(windowId, rectangle, screenCaptureParameters);
regionRect.FreeAgoraData(rectangle);
captureParams.FreeAgoraData(screenCaptureParameters);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3405,13 +3405,29 @@ struct FENUMWRAP_ENCODING_PREFERENCE {
};

UENUM(BlueprintType)
enum class ECOMPRESSION_PREFERENCE : uint8 {
enum class EENUMCUSTOM_COMPRESSION_PREFERENCE :uint8 {
PREFER_COMPRESSION_AUTO = 0,
PREFER_LOW_LATENCY = 1,
PREFER_QUALITY = 2,
};

USTRUCT(BlueprintType)
struct FENUMWRAP_COMPRESSION_PREFERENCE {

GENERATED_BODY()

PREFER_LOW_LATENCY = 0,
public:
// require to call [GetRawValue] method to get the raw value
UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|EENUMCUSTOM_COMPRESSION_PREFERENCE")
EENUMCUSTOM_COMPRESSION_PREFERENCE ValueWrapper = EENUMCUSTOM_COMPRESSION_PREFERENCE::PREFER_COMPRESSION_AUTO;

PREFER_QUALITY = 1,
AGORA_CREATE_UEENUM_CONVERT_STRUCT_INNER_3_ENTRIES(FENUMWRAP_COMPRESSION_PREFERENCE,agora::rtc::COMPRESSION_PREFERENCE, EENUMCUSTOM_COMPRESSION_PREFERENCE,
PREFER_COMPRESSION_AUTO,
PREFER_LOW_LATENCY,
PREFER_QUALITY)
};


USTRUCT(BlueprintType)
struct FAdvanceOptions {

Expand All @@ -3421,7 +3437,7 @@ struct FAdvanceOptions {
FENUMWRAP_ENCODING_PREFERENCE encodingPreference = EENUMCUSTOM_ENCODING_PREFERENCE::PREFER_AUTO;

UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|AdvanceOptions")
ECOMPRESSION_PREFERENCE compressionPreference = ECOMPRESSION_PREFERENCE::PREFER_QUALITY;
FENUMWRAP_COMPRESSION_PREFERENCE compressionPreference = EENUMCUSTOM_COMPRESSION_PREFERENCE::PREFER_QUALITY;

UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category = "Agora|AdvanceOptions")
bool encodeAlpha = false;
Expand All @@ -3431,14 +3447,14 @@ struct FAdvanceOptions {

FAdvanceOptions(const agora::rtc::AdvanceOptions & AgoraData){
encodingPreference = AgoraData.encodingPreference;
compressionPreference = static_cast<ECOMPRESSION_PREFERENCE>(AgoraData.compressionPreference);
compressionPreference = static_cast<FENUMWRAP_COMPRESSION_PREFERENCE>(AgoraData.compressionPreference);
encodeAlpha = AgoraData.encodeAlpha;
}

agora::rtc::AdvanceOptions CreateAgoraData() const{
agora::rtc::AdvanceOptions AgoraData;
AgoraData.encodingPreference = encodingPreference.GetRawValue();
AgoraData.compressionPreference =static_cast<agora::rtc::COMPRESSION_PREFERENCE>(compressionPreference);
AgoraData.compressionPreference =static_cast<agora::rtc::COMPRESSION_PREFERENCE>(compressionPreference.GetRawValue());
AgoraData.encodeAlpha = encodeAlpha;
return AgoraData;
}
Expand Down Expand Up @@ -4521,7 +4537,7 @@ struct FScreenCaptureSourceInfo {

type = AgoraData.type;

sourceId = UABT::FromViewToInt(AgoraData.sourceId);
sourceId = AgoraData.sourceId;
sourceName = UTF8_TO_TCHAR(AgoraData.sourceName);
thumbImage = FThumbImageBuffer(AgoraData.thumbImage);
iconImage = FThumbImageBuffer(AgoraData.iconImage);
Expand All @@ -4532,14 +4548,14 @@ struct FScreenCaptureSourceInfo {
position = FRectangle(AgoraData.position);
#if defined(_WIN32)
minimizeWindow = AgoraData.minimizeWindow;
sourceDisplayId = UABT::FromViewToInt(AgoraData.sourceDisplayId);
sourceDisplayId = AgoraData.sourceDisplayId;
#endif
}

agora::rtc::ScreenCaptureSourceInfo CreateAgoraData() const {
agora::rtc::ScreenCaptureSourceInfo AgoraData;
AgoraData.type = static_cast<agora::rtc::ScreenCaptureSourceType>(type.GetRawValue());
AgoraData.sourceId = UABT::ToView(sourceId);
AgoraData.sourceId = sourceId;
SET_UABT_FSTRING_TO_CONST_CHAR___MEMALLOC(AgoraData.sourceName, sourceName)
AgoraData.thumbImage = thumbImage.CreateAgoraData();
AgoraData.iconImage = iconImage.CreateAgoraData();
Expand All @@ -4550,7 +4566,7 @@ struct FScreenCaptureSourceInfo {
AgoraData.position = position.CreateAgoraData();
#if defined(_WIN32)
AgoraData.minimizeWindow = minimizeWindow;
AgoraData.sourceDisplayId = UABT::ToView(sourceDisplayId);
AgoraData.sourceDisplayId = sourceDisplayId;
#endif
return AgoraData;
}
Expand Down

0 comments on commit fc00690

Please sign in to comment.