startScreenCaptureBySourceType

Starts screen capture from the specified video source.

Future<void> startScreenCaptureBySourceType(
      {required VideoSourceType sourceType,
      required ScreenCaptureConfiguration config});
Attention: This method applies to the macOS and Windows only.

Applicable scenarios

In the screen sharing scenario, you need to call this method to start capturing the screen video stream.

The SDK supports a series of methods for screen capturing, with the following distinctions between them. Please choose according to the actual scenario:

Call timing

You can call this method either before or after joining the channel, with the following differences:
  • Call this method before joining a channel, then call joinChannel to join channel and set publishScreenCaptureVideo to true to start screen sharing.
  • Call this method after joining a channel, then call updateChannelMediaOptions to join channel and set publishScreenCaptureVideo to true to start screen sharing.

Restrictions

  • If you start screen capture by calling this method, you need to call stopScreenCaptureBySourceType to stop screen capture.
  • On the Windows platform, it supports up to four screen capture video streams.
  • On the macOS platform, it supports only one screen capture video stream.

Parameters

sourceType
The type of the video source. See VideoSourceType.
Attention: On the macOS platform, this parameter can only be set to videoSourceScreen (2).
config
The configuration of the captured screen. See ScreenCaptureConfiguration.

Exceptions

When the method call succeeds, there is no return value; when fails, the AgoraRtcException exception is thrown. You need to catch the exception and handle it accordingly.