FullScreenRecorder class

Record the full screen of the app with the option to add meta data in real time.

Signature:

export declare class FullScreenRecorder extends ExternalObject 

Extends: ExternalObject

Remarks

Use ControlManager.getFullScreenRecorder() to get an instance of this class.

Properties

PropertyModifiersTypeDescription
AudioChannel

static

readonly

typeof FullScreenRecorderAudioChannelWhich audio channel(s) are to be used in full screen recording.

Methods

MethodModifiersDescription
addHighlight(type, level)Associate a highlight of the given type at the current moment in the video capture
askUserForPermissionWithPromptAsync()Explicitly asks permission from the user if full screen recording is allowed by showing a prompt if needed when previous permission has not been granted. When false is returned it is recommended that you close the module gracefully.
pause()Pause the recording
resume()Resume the recording after pausing it
setRecordingSpeed(speed)Control the timing of adding frames to the video recording.
setRecordingVolume(volume, audioChannel)Set the volume of the recording audio input in real time.
startRecording()Start a video recording.
stopRecording(delay)Stop the full screen recording, must occur after a call to startRecording.

FullScreenRecorder.addHighlight() method

Associate a highlight of the given type at the current moment in the video capture

Signature:

addHighlight(type: Enum<typeof HighlightType>, level: number): void;

Parameters

ParameterTypeDescription
typeEnum<typeof HighlightType>The classification of what makes this moment special
levelnumberA value between 1 and 100 that describes how strong the highlight moment is

Returns:

void

FullScreenRecorder.askUserForPermissionWithPromptAsync() method

Warning: This API is now obsolete.

ControlManager.getFullScreenRecorder() does this before the FullScreenRecorder object is returned

Explicitly asks permission from the user if full screen recording is allowed by showing a prompt if needed when previous permission has not been granted. When false is returned it is recommended that you close the module gracefully.

Signature:

askUserForPermissionWithPromptAsync(): Promise<boolean>;

Returns:

Promise<boolean>

Returns true if the user has allowed the permission; false if it has denied it.

FullScreenRecorder.AudioChannel property

Warning: This API is now obsolete.

Use FullScreenRecorderAudioChannel

Which audio channel(s) are to be used in full screen recording.

Signature:

static readonly AudioChannel: typeof FullScreenRecorderAudioChannel;

FullScreenRecorder.pause() method

Pause the recording

Signature:

pause(): void;

Returns:

void

FullScreenRecorder.resume() method

Resume the recording after pausing it

Signature:

resume(): void;

Returns:

void

FullScreenRecorder.setRecordingSpeed() method

Control the timing of adding frames to the video recording.

Signature:

setRecordingSpeed(speed: number): void;

Parameters

ParameterTypeDescription
speednumberSlow motion capture for values between 0.5 and 1 or time lapse for values > 1.

Returns:

void

Remarks

If this is not called recording defaults to a value of 1 which is real time.

For values other then 1 it's suggested you set the recording volume to 0 to disable audio recording. Otherwise the audio is out of sync with slow mo recordings and chopping for time lapse ones.

FullScreenRecorder.setRecordingVolume() method

Set the volume of the recording audio input in real time.

Signature:

setRecordingVolume(volume: number, audioChannel?: Enum<typeof FullScreenRecorderAudioChannel>): void;

Parameters

ParameterTypeDescription
volumenumberThe desired audio input volume, with normal values between 0 and 1. Volume defaults to 1 if this isn't called.
audioChannelEnum<typeof FullScreenRecorderAudioChannel>(Optional) The audio channel(s) to apply the volume change to

Returns:

void

FullScreenRecorder.startRecording() method

Start a video recording.

Signature:

startRecording(): void;

Returns:

void

FullScreenRecorder.stopRecording() method

Stop the full screen recording, must occur after a call to startRecording.

Signature:

stopRecording(delay?: number): Promise<VideoAsset>;

Parameters

ParameterTypeDescription
delaynumber(Optional) Stop the recording after the given delay in seconds, the default value is 0 which stops immediately. Use this if you know the cut off time of your recording so the system recording indicator can alert the user when the recording time is near the end. A subsequent call to stopRecording or pause will causes this pending stop to be cancelled and the promise resolution will fail.

Returns:

Promise<VideoAsset>

The video created during the recording process

Remarks

This call can take more than half a second to run, try to perform this operation behind the scenes