7 #pragma once // NOLINT(build/header_guard)
11 #include <api/cpp/aosl_ares_class.h>
21 #if defined (_WIN32) || (defined(__APPLE__) && TARGET_OS_MAC && !TARGET_OS_IPHONE)
39 virtual int initWithDisplayId(int64_t displayId,
const Rectangle& regionRect) = 0;
42 #if defined(_WIN32) || (defined(__linux__) && !defined(__ANDROID__))
60 virtual int initWithScreenRect(
const Rectangle& screenRect,
62 #endif // TARGET_OS_MAC && !TARGET_OS_IPHONE
118 virtual int setFrameRate(
int rate, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
120 #if defined(__ANDROID__)
137 virtual int initWithMediaProjectionPermissionResultData(
void* data,
139 #endif // __ANDROID__
145 #if defined(__ANDROID__) || (defined(__APPLE__) && TARGET_OS_IPHONE)
158 virtual int setScreenCaptureDimensions(
const VideoDimensions& dimensions, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
170 virtual int updateScreenCaptureRegion(
const Rectangle& regionRect, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
176 virtual int setFrameRate(
int rate, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
186 virtual int setAudioRecordConfig(
int channels,
int sampleRate, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
195 virtual int setAudioVolume(uint32_t volume, aosl_ref_t ares = AOSL_REF_INVALID) = 0;
197 #if defined(__ANDROID__)
214 virtual int setExternalMediaProjection(
void* mediaProjection) = 0;
218 virtual ~IScreenCapturer2() {}