ScreenRecorder: An extension for screen recording

1. Introduction

Screen Recorder is an extension which offers a set of tools to record screen without root access.

Latest Version: 1.5
Released:  July 11, 2020
Last Updated:  Sunday
Requires: Api 21 (and Api 24 for Pause and Resume methods)
Permissions: android.permission.WRITE_EXTERNAL_STORAGE and android.permission.RECORD_AUDIO (and android.permission.FOREGROUND_SERVICE for Api 29 and above)

2. Blocks

image
image
image
image
image

3. Documentation

  • On Error
    Event invoked when an error occurs while recording
    image
    error ~ text
  • On Info
    Event invoked when an informational event occurs while recording
    image
    info ~ text
  • On Recording Completed
    Event indicating that recording has completed.
    image
    filePath ~ text
  • On Recording Started
    Event indicating that recording has started.
    image
  • Get Supported Profiles
    Returns a list of supported video qaulity profiles
    image
    Returns : List< Integer >
  • Initialize Recorder
    Prepares the recorder to begin capturing and saving data.
    image
  • Is Recording
    Returns whether recorder is recording screen or not
    image
    Returns : boolean
  • Mimimize App
    Minimizes current app
    image
  • Pause Recording
    Pauses recording.It does nothing if the recording is already paused.
    image
    Requires Api 24
  • Reset Properties
    Sets property values according to video quality.
    image
  • Resume Recording
    Resumes recording.It does nothing if the recording is not paused.
    image
    Requires Api 24
  • Start Recording
    Starts capturing the screen and saving to file specified.
    image
  • Stop Recording
    Stops the recording and resets the recorder to its idle state.After calling this method, you will have to initialize recorder again to record again.
    image
  • Api Version
    Returns android version code
    image
    Returns : int
  • Audio Encoder
    Sets/Returns the audio encoder used to encode audio recording.
    image
    Returns : int
  • Audio Encoding Bit Rate
    Sets/Returns the audio encoding bit rate for recording.Using 0 will reset it to default.
    image
    Returns : long
  • File Name
    Sets/Returns the path of the output file to be produced.Use absolute file path here.If you want to use default file path then pass an empty string.
    image
    Returns : text
  • Frame Rate
    Sets/Returns the frame rate of the video to be captured.
    image
    Returns : int
  • Max Duration
    Sets/Returns the maximum duration (in ms) of the recording session.Setting it 0 will remove duration limit.
    image
    Returns : long
  • Max File Size
    Sets/Returns the maximum filesize (in bytes) of the recording session.Setting it 0 will remove file size limit.
    image
    Returns : long
  • Use Default Profile
    Sets/Returns whether recorder should use default profile (set using VideoQuality) for recording or not.
    image
    Returns : boolean
  • Video Encoder
    Sets/Returns the video encoder used to encode video recording.
    image
    Returns : int
  • Video Encoding Rate
    Sets/Returns the video encoding bit rate for recording.Setting it 0 will reset it to default.
    image
    Returns : long
  • Video Format
    Sets/Returns the format of the output file produced during recording.
    image
    Returns : int
  • Video Quality
    Sets the video quality profile used for recording.ResetProperties method will use this profile to get default values.To use this profile in recording you must have to set UseDefaultProfile to true.
    image
    Returns : int

4. Downloads

5. Liked my work/Support me

Please consider donating some amount to keep me motivated.

6. External References

Audio Encoder: MediaRecorder.AudioEncoder
Video Encoder: MediaRecorder.VideoEncoder
Output Format: MediaRecorder.OutputFormat
Video Quality: Camcorder Profile

Note: Not every video/audio encoder supports all output formats.
This can help you to chose appropriate properties:
Media Formats

Hope it helps!

Leave a Reply