creates a temporary interactive interface for capturing from the main screen into a video.


captures from a screen or part of a screen specified by source.


creates a non-blocking asynchronous interface to capture video and saves the result in var.


captures asynchronously from the specified source.


  • VideoCapture can be used to record videos from screens as well as parts of the screens such as notebooks.
  • Once stopped, VideoScreenCapture[] returns a Video object that includes the captured video.
  • Once stopped, VideoScreenCapture[Dynamic[var]] assigns the captured video to the variable var.
  • VideoScreenCapture by default captures the whole first screen.
  • Possible settings for source to capture other screens or parts of a screen are:
  • nrecording from the n^(th) connected screen
    {{xmin,ymin},{xmax,ymax}}recording from the region bbox of all the first screen
    {n,{{xmin,ymin},{xmax,ymax}}}recording from the region bbox of the n^(th) screen
    NotebookObject[]recording from a notebook displayed on screen
  • VideoScreenCapture takes the following options:
  • AudioInputDeviceNoneaudio input device to use for capture
    CaptureRunningFalsewhether to immediately start the capture
    MaxDurationmaximum duration for capture
  • By default, VideoScreenCapture places the new video under the "Video" directory in $WolframDocumentsDirectory.
  • Options to control properties of the output video are:
  • BitRateAutomaticapproximate bit rate to use
    CompressionLevelAutomaticcompression level to use
    FrameRateAutomaticthe frame rate to use
    GeneratedAssetFormatAutomaticthe format of the result
    GeneratedAssetLocation$GeneratedAssetLocationthe location of the result
    OverwriteTargetFalsewhether to overwrite an existing file
    RasterSizeAutomaticraster size of the output video
    VideoEncodingAutomaticvideo encoding to use


open allclose all

Basic Examples  (2)

Capture a video from the screen:

Once stopped, a Video object is returned:

Create a non-blocking screen recorder:

Perform any evaluation while recording:

Once stopped, the resulting video is stored in the dynamic variable:

Scope  (3)

Record a complete screen:

Record from a specified bounding box on a screen:

Record from a notebook:

Options  (3)

AudioInputDevice  (1)

By default, VideoScreenCapture does not record an audio track:

Use the AudioInputDevice to select the device from which audio is recorded:

CaptureRunning  (1)

Use CaptureRunningTrue to have the recording started as soon as the cell is displayed:

MaxDuration  (1)

By default, the recording continues until the stop button is clicked:

Use the MaxDuration option to stop the recording automatically at a specified time:

Wolfram Research (2022), VideoScreenCapture, Wolfram Language function,


Wolfram Research (2022), VideoScreenCapture, Wolfram Language function,


Wolfram Language. 2022. "VideoScreenCapture." Wolfram Language & System Documentation Center. Wolfram Research.


Wolfram Language. (2022). VideoScreenCapture. Wolfram Language & System Documentation Center. Retrieved from


@misc{reference.wolfram_2022_videoscreencapture, author="Wolfram Research", title="{VideoScreenCapture}", year="2022", howpublished="\url{}", note=[Accessed: 28-November-2022 ]}


@online{reference.wolfram_2022_videoscreencapture, organization={Wolfram Research}, title={VideoScreenCapture}, year={2022}, url={}, note=[Accessed: 28-November-2022 ]}