dxcam
A Python high-performance screenshot library for Windows using Desktop Duplication API
Decision gist · record as of 2026-08-14
Yes, if you are on Windows and need high-speed screen capture for video, AI, or computer vision work. The active maintenance, permissive MIT license, and native support for Direct3D apps make it a solid choice over slower alternatives. Install friction is moderate (Windows-only, Python 3.10+, two dependencies), but no known vulnerabilities and recent releases reduce risk.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Windows 10+ required; comtypes and numpy must be installed; Python 3.10 or later.
- Medium install friction: Windows-only wheels for Python 3.10–3.14 with two runtime dependencies (comtypes, numpy).
- Active maintenance with recent releases; repo shows 802 stars and last commit 2026-03-18.
License · maintenance · safety
MIT (permissive) — MIT license permits commercial and private use with minimal restrictions; suitable for most projects without legal friction.
last release 2026-03-12 (155 days) · last repo commit 2026-03-18 · 802 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 144,806 downloads/mo, #11,142 on PyPI
Alternatives
Verify before relying
pip install dxcam
import dxcam
with dxcam.create() as camera:
frame = camera.grab() # returns numpy.ndarray- Whether the 240+fps throughput claim on 1080p holds across typical hardware configurations.
- Performance characteristics of the winrt backend relative to dxgi on modern Windows 11 systems.
- Behavior and overhead when capturing multiple monitors or GPU devices simultaneously.
What it is and what it does
DXcam is a Windows-only Python library for capturing screen frames at high speed using the Desktop Duplication API. It wraps low-level DXGI or WinRT capture backends and returns frames as numpy arrays, making it suitable for real-time video pipelines, AI agent vision systems, and computer vision workflows that need low-latency, high-FPS access to screen content.
The library supports both one-shot frame grabs and continuous capture with an in-memory ring buffer, optional region cropping, multiple output color formats (RGB, RGBA, BGR, BGRA, GRAY), and frame timestamps. It depends on comtypes for Windows COM interop and numpy for array handling. Wheels are pre-built for Python 3.10–3.14 on Windows; source builds require Cython compilation for optimal performance.
Use it for
- Capture game or application screens at 60+ fps for real-time AI agent vision or computer vision analysis.
- Record full-screen Direct3D applications with stable, low-latency frame delivery for video encoding.
- Grab individual frames from multiple monitors or GPU outputs for multi-display monitoring systems.
- Build screen-based automation or testing pipelines that need precise frame timing and region selection.
- Stream desktop content to machine learning models with minimal latency overhead.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are on Windows and need high-speed screen capture for video, AI, or computer vision work.
The active maintenance, permissive MIT license, and native support for Direct3D apps make it a solid choice over slower alternatives. Install friction is moderate (Windows-only, Python 3.10+, two dependencies), but no known vulnerabilities and recent releases reduce risk.
Install
dxcam on PyPI
Before you install
Medium install friction: Windows-only wheels for Python 3.10–3.14 with two runtime dependencies (comtypes, numpy). Active maintenance with recent releases; repo shows 802 stars and last commit 2026-03-18.
Windows 10+ required; comtypes and numpy must be installed; Python 3.10 or later.
License in practice
MIT license permits commercial and private use with minimal restrictions; suitable for most projects without legal friction.
Quickstart
pip install dxcam
import dxcam
with dxcam.create() as camera:
frame = camera.grab() # returns numpy.ndarray
Verify before relying
- Whether the 240+fps throughput claim on 1080p holds across typical hardware configurations.
- Performance characteristics of the winrt backend relative to dxgi on modern Windows 11 systems.
- Behavior and overhead when capturing multiple monitors or GPU devices simultaneously.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | 2 packagescomtypesnumpy |
| Maintenance | Actively maintained 155 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 144,806 / month, #11,142 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaIntended Audience :: DevelopersOperating System :: Microsoft :: WindowsOperating System :: Microsoft :: Windows :: Windows 10Operating System :: Microsoft :: Windows :: Windows 11Programming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Multimedia :: GraphicsTopic :: Multimedia :: Graphics :: CaptureTopic :: Multimedia :: Graphics :: Capture :: Screen Capture |
Evidence: dxcam-0.3.0-cp310-cp310-win_amd64.whl; dxcam-0.3.0-cp311-cp311-win_amd64.whl; dxcam-0.3.0-cp312-cp312-win_amd64.whl; dxcam-0.3.0-cp313-cp313-win_amd64.whl; dxcam-0.3.0-cp314-cp314-win_amd64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “windows screen capture”
- dxcamDXcam captures screen frames on Windows at high speed using the…
- pyscreenshotCaptures screenshots to Pillow images using multiple backend methods,…
- mssCaptures screenshots from one or all monitors on Windows, macOS, and…
Give your agent the search over MCP, or paste the wish link into any chat.
More Graphics packages
Pillow adds image processing capabilities to Python, providing file format support, efficient pixel data handling, and image manipulation operations.
Install it if you need to work with images in Python—it is the de facto standard for this task.
fonttools manipulates font files in multiple formats (TrueType, OpenType, AFM, Type 1, Mac-specific) and includes TTX, a tool to convert fonts to and from XML text format.
Install it if you need to read, write, or manipulate fonts programmatically or via the TTX command-line tool.
Enables matplotlib figures to display inline directly within Jupyter notebooks and IPython environments instead of in separate windows.
PyMuPDF extracts, renders, converts, and manipulates PDF and other document formats (XPS, EPUB, images, Office files via Pro) with high performance, providing text, tables, images, and metadata with precise layout information.
The AGPL license requires careful review if you are building proprietary software—commercial licensing is available from Artifex.
pypdfium2 is a Python binding to PDFium that enables PDF rendering, inspection, manipulation, and creation through a ctypes interface to Google's PDFium library.
Install it if you need PDF rendering, inspection, or manipulation in Python; the medium install friction is offset by comprehensive platform support.
Altair is a declarative Python library for creating interactive statistical visualizations by writing simple, readable code that compiles to Vega-Lite specifications.
See also mss · pygrabber · scenedetect · winrt-Windows.Graphics.Imaging · PyScreeze · streamlit-camera-input-live · pyscreenshot · pyrealsense2 · imageio-ffmpeg · motioneye-client