Skip to content

screen capture and recording with or without cursor

Screen recording

The screen recording is enabled when VideoSource = vs_ScreenRecording.
Then, all the preview and recording features of the video capture devices can be applied:
- the preview by invoking StartPreview,
- the frame capture by invoking CaptureFrameTo,
- the recording by invoking StartRecording,
- the compression on the fly or after capture (see the Recording section) - the video processing and graphics and text overlays when the frame grabber is enabled.

The recording of the cursor is enabled or disabled with ScreenRecordingWithCursor.

The capture of layered windows (e.g. floating or transparent windows) can be enabled by the ScreenRecordingLayeredWindows property.

If some areas of the screen are not properly recorded, try to enable or disable the ScreenRecordingThroughClipboard property.

WMV screen recording compressed with the Windows Media screen codec
when recording in WMV, the following settings will automatically use Microsoft's Windows Media screen codec:

VideoGrabber.VideoSource = vs_ScreenRecording
 VideoGrabber.RecordingMethod = rm_ASF
 VideoGrabber.ASFProfileVersion = apv_ProfileVersion_9
 VideoGrabber.ASFVideoQuality = 95
 VideoGrabber.StartRecording()

or

VideoGrabber.VideoSource = vs_ScreenRecording
 VideoGrabber.RecordingMethod = rm_ASF
 VideoGrabber.ASFProfileVersion = apv_ProfileVersion_9
 VideoGrabber.ASFVideoBitRate = 2000000
 VideoGrabber.StartRecording()

(note: ASFVideoBitRate and ASFVideoQuality are mutually exclusive, ASFVideoQuality is mandatory)

If you are using a .prx profile, select the screen codec in the codec list when creating it with WMProEdt.exe
Specifying the monitor(s) to record when more than 1 monitor is available
If more than one monitor is available, the number of the monitor to record is specified by the ScreenRecordingMonitor property.

  • to record the default monitor set ScreenRecordingMonitor = 0 (default value).
  • to record the 2nd monitor, set ScreenRecordingMonitor = 1, and so on...

Recording the extended desktop
Simply set ScreenRecordingMonitor = -1, this will record the whole extended desktop across all the monitors.

*Remarks: *
- the preview or recording frame rate of the screen display is specified by the FrameRate property. When FrameRate is not set (0), the frame rate is 30 fps, or 10 fps for an ASF recording or ASF network streaming at the default video bit rate (ASFVideoBitRate not set) and for a screen area of 4K or more (3840x2160 pixels or more): a message (OnLog) reports these cases. Set FrameRate to use another frame rate, e.g. FrameRate = 30 for a 4K screen.
- if frames are dropped when recording a large screen area, lower the frame rate (FrameRate) or the recorded size (ScreenRecordingSizePercent).
- it is possible to record only a part of the screen by specifying a cropping area.
- when ScreenRecordingThroughClipboard is enabled, the clipboard is continuously flushed during preview and recording.