Skip to main content

PyPI version Python Versions Downloads Downloads

Python Screen Recorder

Python screen recorder also pyscreenrecorder is a powerful Python package for screen recording with an optional mouse cursor overlay.
It allows high-performance screen capturing, custom resolution, and real-time mouse tracking.

✨ Features

  • 🎥 Record screen with smooth frame rates (30 FPS default).
  • 🖱 Mouse overlay customization (color, size, thickness).
  • 📺 Multi-monitor support – Choose which monitor to record.
  • 🔄 Set custom resolution (e.g., 1280x720, 1920x1080).
  • ⚡ Optimized performance with mss for fast screen capture.
  • 🎨 Flexible output formats – Supports .mp4, .avi, and .mkv.
  • 🔍 Monitor detection – List available monitors and their specs.

📦 Installation

Install pyscreenrecorder using pip:

pip install pyscreenrecorder

Upgrade pyscreenrecorder using pip:

pip install pyscreenrecorder -U

🚀 Usage

Basic Screen Recording

from pyscreenrecorder import ScreenRecorder

ScreenRecorder(
    filename="screen_record.mp4",
    duration=10,
    fps=30,
    monitor_number=1,
    mouse=True,
)

📺 Listing Available Monitors

from pyscreenrecorder import pyScreenRecorder

monitors = pyScreenRecorder.list_monitors()
print("Available Monitors:", monitors)

Example Output:

[
  { "monitor": 0, "width": 1920, "height": 1080 },
  { "monitor": 1, "width": 2560, "height": 1440 }
]

🎥 Recording with Custom Settings

from pyscreenrecorder import ScreenRecorder

ScreenRecorder(
    filename="custom_record.mp4",
    duration=15,
    fps=60,
    monitor_number=2,
    resolution=(1280, 720),  # Set custom resolution
    mouse=True,
    mouse_color=(255, 0, 0),  # Red cursor
    mouse_size=10,
    mouse_thickness=3,
)

🔹 60 FPS Recording
🔹 Custom 1280x720 resolution
🔹 Red-colored mouse cursor with increased size

🛠 Advanced Example

from pyscreenrecorder import pyScreenRecorder

if __name__ == "__main__":
    # Display available monitors
    monitors = pyScreenRecorder.list_monitors()
    print("Available Monitors:", monitors)

    # Start recording with advanced settings
    pyRec = pyScreenRecorder(
        filename="high_quality_record.mp4",
        duration=30,
        fps=60,
        monitor_number=1,
        resolution=(1920, 1080),  # Full HD recording
        mouse=True,
        mouse_color=(0, 255, 0),  # Green cursor
        mouse_size=6,
        mouse_thickness=2,
    )
    pyRec.screenRecorder()

⚙ Supported File Formats

pyscreenrecorder supports the following video formats:

Format Description
MP4 High compatibility
AVI Uncompressed quality
MKV Modern, flexible

Set the format by using the appropriate file extension in filename.
Example:

ScreenRecorder(filename="recording.mkv")

🎯 Dependencies

pyscreenrecorder relies on:

  • opencv-python
  • numpy
  • mss
  • pyautogui
  • MouseInfo
  • PyGetWindow
  • PyMsgBox
  • pyperclip
  • PyRect
  • PyScreeze
  • pytweening

No additional configuration is required.


📝 License

This project is licensed under the MIT License.


📚 More Information

📌 GitHub Repository:
🔗 https://github.com/SSujitX/pyscreenrecorder

📌 Issue Tracker:
🐛 Report a Bug


🏁 Conclusion

pyscreenrecorder is an efficient, easy-to-use, and customizable screen recording tool in Python. Whether you need basic screen capturing or advanced mouse-tracked recordings, this package provides all the features.

🚀 Try it today! 🚀

Visitors

Metadata

Release files for pyscreenrecorder 0.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyscreenrecorder 0.0.3
File Size Uploaded
pyscreenrecorder-0.0.3.tar.gz 6.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyscreenrecorder 0.0.3
File Interpreter ABI Platform
pyscreenrecorder-0.0.3-py3-none-any.whl Python 3 none any Details

Total release size: 13.7 kB

Release files / pyscreenrecorder-0.0.3.tar.gz

Download URL pyscreenrecorder-0.0.3.tar.gz
Size 6.5 kB
Tags Source
SHA-256 checksum
How to use checksums
41bbca546f061b6daa7f763d6643856ef3ad9fdeb2949d2965d775ca1d99c0eb
BLAKE2b-256 checksum
How to use checksums
8aa2ff4f2cf9b381a357f87a0ed35efebb5bfb7716b33941454e0b0752c4dd19
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 2, 2025.

Transparency log

Release files / pyscreenrecorder-0.0.3-py3-none-any.whl

Download URL pyscreenrecorder-0.0.3-py3-none-any.whl
Size 7.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
dfa3b238549f07c59d0b58c6bef5c1508b65bf3a4588f05e9a75ff5df812f9f3
BLAKE2b-256 checksum
How to use checksums
1fad9d8658850660d63fd369b3d655bd94dee2cdfef7c540c23c56db9c84fc1d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Feb 2, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

0.0.3 This release

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page