Skip to content

voltmx.screenrecorder Namespace

The voltmx.screenrecorder namespace, helps you to implement the screen record feature of WebRTC in your web apps.

You can use the functions available in the voltmx.screenrecorder namespace to start, pause, resume, and stop the screen recording. To know the current state of the recording, use the getrecordedstate API. After the screen recording has been completed, use the getrecordeddata API to fetch the video as a Blob URL.

The APIs in voltmx.screenrecorder namespace are applicable only for the Desktop Web platform.

Note: This feature is currently supported only in Google Chrome ( v72 and later) , Mozilla Firefox( v66 ) and Opera(v60).

Functions

The voltmx.screenrecorder namespace contains the following functions.

voltmx.screenrecorder.start


You can use the start API to initiate the recording of the screen. When this method is invoked, the web browser asks for permission to select the window, tab, or screen.

Syntax


voltmx.screenrecorder.start(config);

Parameters

config

The config parameter consists of a JavaScript object. It contains the following attributes.

Attributes Description
framerate Framerate is the number of consecutive images/ frames that appears on a screen per second. The default value is 30fps. This is an optional parameter.
onFailure onFailure contains the callback that is invoked when an error occurs while recording, For example, this callback is invoked when the web browser does not support the screen recording feature. This is an optional parameter.

The callback for the onFailure key must have the following signature.

onFailureCallback(err);

here, the err parameter is a string that contains the reason for the failure.

Example

config = {
 framerate: 24,
 onFailure: function(err) {  
//Sample code for onFailure callback, where err contains the error message.
  voltmx.print("Error :" + err);
 } 
};
voltmx.screenrecorder.start(config);

Return Values

None


voltmx.screenrecorder.pause


You can use the pause API to temporarily stop the recording of the screen. You can restart the recording process by using the resume API.

Syntax


voltmx.screenrecorder.pause();

Parameters

None

Example

 voltmx.screenrecorder.pause(); 

Return Values

None


voltmx.screenrecorder.resume


You can use the resume API to restart the screen recording after the pause API has been invoked.

Syntax


voltmx.screenrecorder.resume();

Parameters

None

Example

 voltmx.screenrecorder.resume();    

Return Values

None


voltmx.screenrecorder.stop


You can use the stop API to end the screen recording. After the recording process is stopped, you can use the getrecordeddata API to retrieve the Blob URL of the video.

Syntax


voltmx.screenrecorder.stop();

Parameters

None

Example

 voltmx.screenrecorder.stop();  

Return Values

None

Remarks

  • After you have invoked the stop API, invoke the getrecordeddata API to retrieve the screen recording. If you invoke the start API before invoking the getrecordeddata API, the new recording overrides the previous recording. The previous recording is not retained and you will lose the data.

voltmx.screenrecorder.getrecordeddata


You can use the getrecordeddata API to retrieve the screen recording in the form of a Blob URL.

Syntax


voltmx.screenrecorder.getrecordeddata();

Parameters

None

Example

var blob = voltmx.screenrecorder.getrecordeddata();

Return Values

Returns a Blob URL of the screen recording as a String.

Note: In the Opera(v60) web browser, if you assign the Blob URL of the screen recording to the source property of the Video widget, the recording may not start. This is because the Opera(v60) web browser has a technical limitation while playing an HTML5 video.


voltmx.screenrecorder.getrecordedstate


You can use the getrecordedstate API to retrieve the current state of the screen recording.

Syntax


voltmx.screenrecorder.getrecordedstate();

Parameters

None

Example

var state = voltmx.screenrecorder.getrecordingstate();

Return Values

This API can return any one of the following values.

State Description
inactive The screen recording has not started or it has been stopped.
paused The screen recording has been paused.
recording The screen is being recorded.