Agora C++ API Reference for All Platforms

Public Types | Public Member Functions | List of all members
agora::rtc::IScreenCapturerEx Class Referenceabstract

Inherits agora::rtc::IScreenCapturer.

## Public Types
enum | SCREEN_CAPTURER_STATE { SCREEN_CAPTURER_STARTED, SCREEN_CAPTURER_STOPPED }

## Public Member Functions
virtual | ~IScreenCapturerEx ()
virtual int | StartCapture ()=0
virtual int | StopCapture ()=0
virtual void | RegisterCaptureDataCallback (std::weak_ptr<::rtc::VideoSinkInterface< webrtc::VideoFrame >> dataCallback)=0
virtual int | CaptureMouseCursor (bool capture)=0
virtual int | GetScreenDimensions (VideoDimensions &dimension)=0
virtual int | SetOutputDimensions (VideoDimensions dimension)
virtual int | SetContentType (agora::VideoContentSubType type)
virtual void | GetContentType (agora::VideoContentType &type, agora::VideoContentSubType &subtype)
virtual bool | FocusOnSelectedSource ()=0
virtual void | SetHighLight (bool isHighLight, unsigned int color, int width)
virtual void | SetVideoQoEPusher (std::weak_ptr< agora::rtc::VideoStatsEventsPusher > pusher)=0
virtual int | initWithDisplayIdLLApiInternal (int64_t displayId, const rtc::Rectangle &regionRect)=0
virtual int | initWithScreenRectLLApiInternal (const rtc::Rectangle &screenRect, const rtc::Rectangle &regionRect)=0
virtual int | initWithWindowIdLLApiInternal (view_t windowId, const rtc::ScreenCaptureConfiguration &config)=0
virtual int | updateScreenCaptureRegionLLApiInternal (const rtc::Rectangle &rect)=0
virtual int | setScreenOrientationLLApiInternal (VIDEO_ORIENTATION orientation)=0
virtual int | setFrameRateLLApiInternal (int rate)=0
virtual int | initWithMediaProjectionPermissionResultDataLLApiInternal (void *data, const VideoDimensions &dimensions)=0
virtual int | InitUsingLastRegionSetting ()
virtual void | SetCaptureSource (bool allow_magnification_api, bool allow_directx_capturer)
virtual void | GetCaptureSource (bool &allow_magnification_api, bool &allow_directx_capturer)
virtual void | SetAllowUseWGC (bool allow_use_wgc)
virtual void | GetAllowUseWGC (bool &allow_use_wgc)
virtual void | SetCaptureToTexture (bool capture_to_texture)
virtual void | GetCaptureToTexture (bool &capture_to_texture)
virtual void | ForcedUsingScreenCapture (bool using_screen_capture)
virtual void | SetExcludeWindowList (const std::vector< void * > &window_list)=0
virtual webrtc::DesktopCapturer::SourceId | GetSourceId ()=0
virtual int | GetCaptureType ()=0
virtual int | registerScreenCaptureObserver (IScreenCaptureObserver *observer)
virtual int | unregisterScreenCaptureObserver (IScreenCaptureObserver *observer)
virtual void * | getScreenCaptureSources (const IScreenCaptureSource::ScreenSourceListOption &option)
virtual void | deinit ()
virtual void | attachStatsSpace (uint64_t stats_space)
Public Member Functions inherited from agora::rtc::IScreenCapturer
virtual int | initWithDisplayId (int64_t displayId, const Rectangle &regionRect)=0
virtual int | initWithScreenRect (const Rectangle &screenRect, const Rectangle &regionRect)=0
virtual int | initWithWindowId (view_t windowId, const Rectangle &regionRect)=0
virtual int | setContentHint (VIDEO_CONTENT_HINT contentHint, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | updateScreenCaptureRegion (const Rectangle &regionRect, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | setScreenOrientation (VIDEO_ORIENTATION orientation, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | setFrameRate (int rate, aosl_ref_t ares=AOSL_REF_INVALID)=0
virtual int | initWithMediaProjectionPermissionResultData (void *data, const VideoDimensions &dimensions)=0
Public Member Functions inherited from agora::RefCountInterface
virtual void | AddRef () const =0
virtual RefCountReleaseStatus | Release () const =0
virtual bool | HasOneRef () const =0

## Additional Inherited Members
Protected Member Functions inherited from agora::rtc::IScreenCapturer
| ~IScreenCapturer ()
Protected Member Functions inherited from agora::RefCountInterface
virtual | ~RefCountInterface ()

## Member Enumeration Documentation

## ◆ SCREEN_CAPTURER_STATE

enum agora::rtc::IScreenCapturerEx::SCREEN_CAPTURER_STATE

Enumerator
SCREEN_CAPTURER_STARTED |
SCREEN_CAPTURER_STOPPED |

## Constructor & Destructor Documentation

## ◆ ~IScreenCapturerEx()

virtual agora::rtc::IScreenCapturerEx::~IScreenCapturerEx | ( |  | ) |
| inline virtual

## Member Function Documentation

## ◆ StartCapture()

virtual int agora::rtc::IScreenCapturerEx::StartCapture | ( |  | ) |
| pure virtual

## ◆ StopCapture()

virtual int agora::rtc::IScreenCapturerEx::StopCapture | ( |  | ) |
| pure virtual

## ◆ RegisterCaptureDataCallback()

virtual void agora::rtc::IScreenCapturerEx::RegisterCaptureDataCallback | ( | std::weak_ptr<::rtc::VideoSinkInterface< webrtc::VideoFrame >> | dataCallback | ) |
| pure virtual

## ◆ CaptureMouseCursor()

virtual int agora::rtc::IScreenCapturerEx::CaptureMouseCursor | ( | bool | capture | ) |
| pure virtual

## ◆ GetScreenDimensions()

virtual int agora::rtc::IScreenCapturerEx::GetScreenDimensions | ( | VideoDimensions & | dimension | ) |
| pure virtual

## ◆ SetOutputDimensions()

virtual int agora::rtc::IScreenCapturerEx::SetOutputDimensions | ( | VideoDimensions | dimension | ) |
| inline virtual

## ◆ SetContentType()

virtual int agora::rtc::IScreenCapturerEx::SetContentType | ( | agora::VideoContentSubType | type | ) |
| inline virtual

## ◆ GetContentType()

virtual void agora::rtc::IScreenCapturerEx::GetContentType | ( | agora::VideoContentType & | type,
|  | agora::VideoContentSubType & | subtype
| ) |  |
| inline virtual

## ◆ FocusOnSelectedSource()

virtual bool agora::rtc::IScreenCapturerEx::FocusOnSelectedSource | ( |  | ) |
| pure virtual

## ◆ SetHighLight()

virtual void agora::rtc::IScreenCapturerEx::SetHighLight | ( | bool | isHighLight,
|  | unsigned int | color,
|  | int | width
| ) |  |
| inline virtual

## ◆ SetVideoQoEPusher()

virtual void agora::rtc::IScreenCapturerEx::SetVideoQoEPusher | ( | std::weak_ptr< agora::rtc::VideoStatsEventsPusher > | pusher | ) |
| pure virtual

## ◆ initWithDisplayIdLLApiInternal()

virtual int agora::rtc::IScreenCapturerEx::initWithDisplayIdLLApiInternal | ( | int64_t | displayId,
|  | const rtc::Rectangle & | regionRect
| ) |  |
| pure virtual

## ◆ initWithScreenRectLLApiInternal()

virtual int agora::rtc::IScreenCapturerEx::initWithScreenRectLLApiInternal | ( | const rtc::Rectangle & | screenRect,
|  | const rtc::Rectangle & | regionRect
| ) |  |
| pure virtual

## ◆ initWithWindowIdLLApiInternal()

virtual int agora::rtc::IScreenCapturerEx::initWithWindowIdLLApiInternal | ( | view_t | windowId,
|  | const rtc::ScreenCaptureConfiguration & | config
| ) |  |
| pure virtual

## ◆ updateScreenCaptureRegionLLApiInternal()

virtual int agora::rtc::IScreenCapturerEx::updateScreenCaptureRegionLLApiInternal | ( | const rtc::Rectangle & | rect | ) |
| pure virtual

## ◆ setScreenOrientationLLApiInternal()

virtual int agora::rtc::IScreenCapturerEx::setScreenOrientationLLApiInternal | ( | VIDEO_ORIENTATION | orientation | ) |
| pure virtual

## ◆ setFrameRateLLApiInternal()

virtual int agora::rtc::IScreenCapturerEx::setFrameRateLLApiInternal | ( | int | rate | ) |
| pure virtual

## ◆ initWithMediaProjectionPermissionResultDataLLApiInternal()

virtual int agora::rtc::IScreenCapturerEx::initWithMediaProjectionPermissionResultDataLLApiInternal | ( | void * | data,
|  | const VideoDimensions & | dimensions
| ) |  |
| pure virtual

## ◆ InitUsingLastRegionSetting()

virtual int agora::rtc::IScreenCapturerEx::InitUsingLastRegionSetting | ( |  | ) |
| inline virtual

## ◆ SetCaptureSource()

virtual void agora::rtc::IScreenCapturerEx::SetCaptureSource | ( | bool | allow_magnification_api,
|  | bool | allow_directx_capturer
| ) |  |
| inline virtual

## ◆ GetCaptureSource()

virtual void agora::rtc::IScreenCapturerEx::GetCaptureSource | ( | bool & | allow_magnification_api,
|  | bool & | allow_directx_capturer
| ) |  |
| inline virtual

## ◆ SetAllowUseWGC()

virtual void agora::rtc::IScreenCapturerEx::SetAllowUseWGC | ( | bool | allow_use_wgc | ) |
| inline virtual

## ◆ GetAllowUseWGC()

virtual void agora::rtc::IScreenCapturerEx::GetAllowUseWGC | ( | bool & | allow_use_wgc | ) |
| inline virtual

## ◆ SetCaptureToTexture()

virtual void agora::rtc::IScreenCapturerEx::SetCaptureToTexture | ( | bool | capture_to_texture | ) |
| inline virtual

## ◆ GetCaptureToTexture()

virtual void agora::rtc::IScreenCapturerEx::GetCaptureToTexture | ( | bool & | capture_to_texture | ) |
| inline virtual

## ◆ ForcedUsingScreenCapture()

virtual void agora::rtc::IScreenCapturerEx::ForcedUsingScreenCapture | ( | bool | using_screen_capture | ) |
| inline virtual

## ◆ SetExcludeWindowList()

virtual void agora::rtc::IScreenCapturerEx::SetExcludeWindowList | ( | const std::vector< void * > & | window_list | ) |
| pure virtual

## ◆ GetSourceId()

virtual webrtc::DesktopCapturer::SourceId agora::rtc::IScreenCapturerEx::GetSourceId | ( |  | ) |
| pure virtual

## ◆ GetCaptureType()

virtual int agora::rtc::IScreenCapturerEx::GetCaptureType | ( |  | ) |
| pure virtual

## ◆ registerScreenCaptureObserver()

virtual int agora::rtc::IScreenCapturerEx::registerScreenCaptureObserver | ( | IScreenCaptureObserver * | observer | ) |
| inline virtual

## ◆ unregisterScreenCaptureObserver()

virtual int agora::rtc::IScreenCapturerEx::unregisterScreenCaptureObserver | ( | IScreenCaptureObserver * | observer | ) |
| inline virtual

## ◆ getScreenCaptureSources()

virtual void* agora::rtc::IScreenCapturerEx::getScreenCaptureSources | ( | const IScreenCaptureSource::ScreenSourceListOption & | option | ) |
| inline virtual

## ◆ deinit()

virtual void agora::rtc::IScreenCapturerEx::deinit | ( |  | ) |
| inline virtual

## ◆ attachStatsSpace()

virtual void agora::rtc::IScreenCapturerEx::attachStatsSpace | ( | uint64_t | stats_space | ) |
| inline virtual