Skip to main content

pyorbbecsdk is a python wrapper for the OrbbecSDK

Project description

pyorbbecsdk

Python Bindings for Orbbec SDK v2.x
The official Python wrapper enabling developers to interface with Orbbec RGB-D cameras (Gemini, Femto, Astra series) through a clean, Pythonic API backed by native C++ performance via pybind11.

Documentation · PyPI Package · Community · OrbbecSDK v2 · Gitee Mirror

Build PyPI Python License


Branch note: This is the v2-main branch (SDK v2.x). For the legacy v1.x branch, see main. The differences between SDK v1.x and v2.x are described in the OrbbecSDK_v2 README.

Table of Contents

Overview

AMR Grocery Delivery Body Health Tracking 3D Face Payment

Supported Devices

Important:

  • Most new devices come with compatible firmware pre-installed and work out-of-the-box.
  • Starting from October 2025 (Orbbec SDK v2.5.5), devices using the OpenNI protocol will be upgraded to UVC protocol. See the upgrade document for details.
  • For legacy v1.x device support (Astra+, Astra Pro Plus, Gemini 2 XL), use the main branch.

For detailed branch comparison and device support matrix, see Introduction - Device Support Comparison.

Why pyorbbecsdk?

  • 📷 RGB-D streaming — Depth, color, and infrared streams with configurable resolution and FPS.
  • 🛠️ Post-processing filters — Temporal, Spatial (Advanced), HoleFilling, Threshold, Decimation, Noise Removal.
  • 🎯 Depth-color alignment — Software AlignFilter and hardware D2C alignment.
  • ☁️ Point cloud generation — Colored 3D point clouds via PointCloudFilter.
  • 📐 Camera calibration data — Access intrinsics, distortion coefficients, and extrinsic transforms.
  • Real-time performance — Backed by native C++ performance via pybind11.
  • 🌐 Network cameras — Connect to Femto Mega / Gemini 2 XL over Ethernet.
  • 📦 Pre-built wheels — No compilation required for Windows x64, Linux x64, and ARM64.

Getting started

The pyorbbecsdk contains all the libraries that power your camera along with tools that let you experiment with its features and settings.

To get started:

1. Install the package via PyPI (recommended) or from GitHub Release:

pip install --upgrade pyorbbecsdk2

💡 Recommended: Use Virtual Environment

Modern systems (e.g., macOS, Ubuntu 24.04+) restrict pip installations to the system Python. Using a virtual environment avoids permission errors:

# Create and activate virtual environment
python3 -m venv orbbec_env
source orbbec_env/bin/activate  # Linux/macOS
# .\orbbec_env\Scripts\Activate.ps1  # Windows PowerShell

# Install SDK in virtual environment
pip install --upgrade pyorbbecsdk2

See Virtual Environment Guide for more options (venv, pyenv, conda).

🔧 Building from Source? See the Build with UV Guide for detailed instructions.

2. Setup the environment (one-time OS-level configuration for metadata and udev rules):

# From the repository

# Windows (PowerShell — will auto-request Administrator)
python scripts/env_setup/setup_env.py
# Linux (will auto-request sudo)
python3 scripts/env_setup/setup_env.py

# Or from the installed package
python $(python -c "import pyorbbecsdk, os; print(os.path.dirname(pyorbbecsdk.__file__))")/shared/setup_env.py

3. Start experimenting with the SDK's Quick Start code:

from pyorbbecsdk import *

pipeline = Pipeline()
pipeline.start()                        # uses default config from OrbbecSDKConfig.xml
frames = pipeline.wait_for_frames(1000) # get synchronized Color + Depth frames

For full visualisation, check out examples/quick_start.py. Running result:

quick_start_result

Samples

The examples/ directory contains 35+ scripts organized by difficulty to start using the pyorbbecsdk with only a few lines of code.

Level Category Description
Quick Start Zero-config RGBD viewer — first thing to run.
⭐⭐ Beginner Hello camera, depth viz, alignment, calibration, point cloud, multi-stream, IMU, network camera, and firmware update.
⭐⭐⭐ Advanced Recording & playback, device control, filter chains, HDR, presets, depth work modes, multi-device sync, coordinate transforms, high-performance pipeline.
⭐⭐⭐⭐ Applications YOLO object detection with depth overlay; interactive depth ruler.
⭐⭐⭐⭐ LiDAR LiDAR streaming, control, recording, and playback.

See examples/README.md for the full list with per-script descriptions and device compatibility.

📚 Next Steps: Explore our structured learning path from beginner to advanced → Quick Start Guide - Next Steps

Supported Platforms

pyorbbecsdk supports the following operating systems and architectures. Pre-built wheels are available for all platforms via pip install --upgrade pyorbbecsdk2.

Quick Camera Evaluation

Want to test your camera without writing code? Download Orbbec Viewer — a standalone GUI application that lets you immediately view camera streams, adjust settings, and verify device functionality.

(Click a platform icon below to download Orbbec Viewer for your OS)

Windows
Linux x64
Linux ARM
macOS
Windows (x64) Linux (x64) Linux (ARM64) macOS (ARM)
Windows 10+ Ubuntu 18.04 / 20.04 / 22.04 Ubuntu 18.04 / 20.04 / 22.04 macOS 13.2+ (Apple Silicon / M1 and later)

Supported Python versions: Python 3.8 to 3.13

Automated Firmware Update

If you encounter errors related to firmware version mismatch, please use the automated update assistant:

python scripts/auto_update_firmware.py

This script will check your current device firmware version, guide you to download the correct firmware, and perform the firmware update safely.

For detailed device support and firmware compatibility information, see Introduction — v2-main Branch.

FAQ

See the full FAQ for common issues and solutions.

Community

Join the conversation and connect with other pyorbbecsdk users to share ideas, solve problems, and help make the SDK awesome.

  • GitHub Issues If you come across a bug or want to request a feature, please raise an issue in this GitHub repository.
  • Documentation The comprehensive Orbbec SDK V2 Python Wrapper User Guide covers architecture, API quick-starts, and usage guides.
  • Contributing Contributions are welcome — read CONTRIBUTING.md for build instructions, code style, and the PR process.

Changelog

See CHANGELOG.md for a detailed history of changes.

License

This project is licensed under the Apache License 2.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pyorbbecsdk2-2.1.1-cp313-cp313-win_amd64.whl (17.5 MB view details)

Uploaded CPython 3.13Windows x86-64

pyorbbecsdk2-2.1.1-cp313-cp313-manylinux_2_27_x86_64.whl (30.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64

pyorbbecsdk2-2.1.1-cp313-cp313-manylinux_2_27_aarch64.whl (30.1 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ ARM64

pyorbbecsdk2-2.1.1-cp313-cp313-macosx_13_0_arm64.whl (36.4 MB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

pyorbbecsdk2-2.1.1-cp312-cp312-win_amd64.whl (17.5 MB view details)

Uploaded CPython 3.12Windows x86-64

pyorbbecsdk2-2.1.1-cp312-cp312-manylinux_2_27_x86_64.whl (30.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64

pyorbbecsdk2-2.1.1-cp312-cp312-manylinux_2_27_aarch64.whl (30.1 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ ARM64

pyorbbecsdk2-2.1.1-cp312-cp312-macosx_13_0_arm64.whl (36.4 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

pyorbbecsdk2-2.1.1-cp311-cp311-win_amd64.whl (17.5 MB view details)

Uploaded CPython 3.11Windows x86-64

pyorbbecsdk2-2.1.1-cp311-cp311-manylinux_2_27_x86_64.whl (30.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64

pyorbbecsdk2-2.1.1-cp311-cp311-manylinux_2_27_aarch64.whl (30.1 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ ARM64

pyorbbecsdk2-2.1.1-cp311-cp311-macosx_13_0_arm64.whl (36.4 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

pyorbbecsdk2-2.1.1-cp310-cp310-win_amd64.whl (17.5 MB view details)

Uploaded CPython 3.10Windows x86-64

pyorbbecsdk2-2.1.1-cp310-cp310-manylinux_2_27_x86_64.whl (30.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64

pyorbbecsdk2-2.1.1-cp310-cp310-manylinux_2_27_aarch64.whl (30.1 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ ARM64

pyorbbecsdk2-2.1.1-cp310-cp310-macosx_13_0_arm64.whl (36.4 MB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

pyorbbecsdk2-2.1.1-cp39-cp39-win_amd64.whl (17.5 MB view details)

Uploaded CPython 3.9Windows x86-64

pyorbbecsdk2-2.1.1-cp39-cp39-manylinux_2_27_x86_64.whl (30.4 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.27+ x86-64

pyorbbecsdk2-2.1.1-cp39-cp39-manylinux_2_27_aarch64.whl (30.1 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.27+ ARM64

pyorbbecsdk2-2.1.1-cp39-cp39-macosx_13_0_arm64.whl (36.4 MB view details)

Uploaded CPython 3.9macOS 13.0+ ARM64

pyorbbecsdk2-2.1.1-cp38-cp38-win_amd64.whl (17.5 MB view details)

Uploaded CPython 3.8Windows x86-64

pyorbbecsdk2-2.1.1-cp38-cp38-macosx_13_0_arm64.whl (36.4 MB view details)

Uploaded CPython 3.8macOS 13.0+ ARM64

File details

Details for the file pyorbbecsdk2-2.1.1-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 ec8edb486e08406270d5122177a420914dc136b8ac8770a61b5292dbe19c9357
MD5 92a89c920cfb2406e69e5317a88349f2
BLAKE2b-256 4e54400720ff098e7ab3e5cf52b39f4ecb01b184c785ff68f3528b127c9079b4

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp313-cp313-manylinux_2_27_x86_64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp313-cp313-manylinux_2_27_x86_64.whl
Algorithm Hash digest
SHA256 ecfaa9125e3175f06ac1be58f0b925b4538d910edf2594d540370073e1a0ad4a
MD5 398eb1faea4a90d1ac8ca23478b93e91
BLAKE2b-256 1052004c2b5adb4cfd454bba351281314736b6818d26302a55c967168fee3c10

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp313-cp313-manylinux_2_27_aarch64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp313-cp313-manylinux_2_27_aarch64.whl
Algorithm Hash digest
SHA256 10838efaa76b8e3186114720d54231c10f1132b3f3df86fa64a693363727a7c5
MD5 417da2d8a20475204a430a5a5f74aea3
BLAKE2b-256 b7327d4b47e31ab9ed2a17d2b6d0b62335153d47a861b8ff4a33f13b92b2e609

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 0b1da294c52027af7faa0f35e1bd14a8ba33394451aa80f89f81afd0b901df1d
MD5 456569f1f1ef8aea359e747c4c9c695e
BLAKE2b-256 28e87e33840cca18cf7414f5f387dba189d7e14e0f9c42eba83be6d83ed80188

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 a2d8d79c42411ebcf5e1a5a1b1b163591e3cb272789940a979bc2bf58649d125
MD5 3d70c5c8fe7743a4190733d2bbb3da8b
BLAKE2b-256 264a7d01e138255293fb6cf747f1afd62e54945dea7680d32abcf990cc0e41f1

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp312-cp312-manylinux_2_27_x86_64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp312-cp312-manylinux_2_27_x86_64.whl
Algorithm Hash digest
SHA256 a6bb2d44d1d737a4c5a8449cad93c6a430b40b692ad981fa11c9114fa66d1181
MD5 3f247e4f89d102ac2b41239ddc329333
BLAKE2b-256 ffa5b7e8f6d16e85f0e94c514aa78f13afbf34d7e3e8c9b5b67e4e1e0ea398f9

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp312-cp312-manylinux_2_27_aarch64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp312-cp312-manylinux_2_27_aarch64.whl
Algorithm Hash digest
SHA256 0eec2bb79807a8e518c41249404a0f003f30c5b70a5d944239a7b2415f95da12
MD5 93eeece87cfc68c4d520ff22d1b039f5
BLAKE2b-256 093e24ee1af6a4e55552c011a0e6438259cb5e6ae4d00d65417d6e5f9741e272

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 f7d498930c8fca475bcad49836ba799d3cc924b6b14a6a1ac0f51397ac6a6498
MD5 68dc278f0ac805d013d84702f486231e
BLAKE2b-256 2b453f36e049c5066a141eb87386c04382e4f97f9d837ee5032d8900bd9f1b8b

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 0ad7c02270ae6064f1daabea627d18314e6c05ab94a58cf54f4e062c471ee7b3
MD5 b8a1c3f2b4d6c2e82a6271c55c98b7ef
BLAKE2b-256 2b6360ecca0f811c87fc94426a67e918f0af904f54e285adc1e59ccbeef207a8

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp311-cp311-manylinux_2_27_x86_64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp311-cp311-manylinux_2_27_x86_64.whl
Algorithm Hash digest
SHA256 837144e6fb4d32f85fe993b20c681192f9b2906b9999dc16a2093be719aae24c
MD5 6c68d871d0b6ff79882785235f2c1ab2
BLAKE2b-256 4cfebd23a1a7646827f55a432407d8ff6de8e7cc1c462327081218accc20ea9a

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp311-cp311-manylinux_2_27_aarch64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp311-cp311-manylinux_2_27_aarch64.whl
Algorithm Hash digest
SHA256 36bc9c32052091f08bf4f52d108c858778ea06bf3f5bd7f1dc6a77b2237da351
MD5 02bdc13aa0dc78ec1cc7fe42b7379c61
BLAKE2b-256 139f58c7c14018c2e5321279cbabb2ba8caf7c40c98cc5025fd68f8b6205246d

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 c42ebfa2f90489207c5e796ceabdae2002e43bf58bdeae2d450e1ce5ca624b43
MD5 371db8664ea5f7cd0f56803d26855327
BLAKE2b-256 93ae41ef763136889c3783eefa3265b78fc3def6315c093afe8b2ae7ac0b1f4c

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 c1f9c0d7d1ce5d4b487357d1bed7c85f2fca3cbe0b6071480a17a01e3a178f01
MD5 9e8e675d80de7d849b7e0683a187f323
BLAKE2b-256 da224788dc3432c2c988257e5123de56cf42c3436bec7e32d16a9ac800370c4e

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp310-cp310-manylinux_2_27_x86_64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp310-cp310-manylinux_2_27_x86_64.whl
Algorithm Hash digest
SHA256 1cbd4c630f7edd7588299d7231169508253780c5c0bb658970485cf62c14cfeb
MD5 8342bcdada5fcd6a5fb0a4230e6e9cc6
BLAKE2b-256 f50372fe91856ba73de8125aba9ca53b1a883ab922fe5bffc71566f808b76975

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp310-cp310-manylinux_2_27_aarch64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp310-cp310-manylinux_2_27_aarch64.whl
Algorithm Hash digest
SHA256 dfe360ca7c6e595bc0d55d215cebb897911fd4992ce5814fd8878cb91806c9ee
MD5 b5ffd637a68aacdc683287b5adc29a81
BLAKE2b-256 cc315f293c78f0df4fec44ffeeec3f81609356157f372aeb734a608739496610

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp310-cp310-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 6f00e8423f08ce83bdad1489a77efe70c2a7ceba8045570f4ce181b385db4b33
MD5 bebfc166aa5d6375b6ad7fed3eb97a26
BLAKE2b-256 65f5b87f3d85a133bcc47e508c8f332fbe22dd7e15847eeb69eca98d36b19f00

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: pyorbbecsdk2-2.1.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 17.5 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 6ed64ee29c4e8f36999c3b97b6719b1492d6750a282521e8ed5510f8fa7db9d0
MD5 eaf5c7483f4c3b9d642a9e75d2809a9a
BLAKE2b-256 32b0a3c82d9f6d678e03a5dfad728feb7349fcc9fa5ac06e909d6b1552ce628f

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp39-cp39-manylinux_2_27_x86_64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp39-cp39-manylinux_2_27_x86_64.whl
Algorithm Hash digest
SHA256 92b8544b12387d46079e293b010767d3b09897cbb95c82f032118968d504cea5
MD5 9665d8981d3b53e3a19b9fe8defbf281
BLAKE2b-256 dee61b69dc7cd06d413e3ed1cfd3828b79f68543836e83fd2b1ab18f3def7e1d

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp39-cp39-manylinux_2_27_aarch64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp39-cp39-manylinux_2_27_aarch64.whl
Algorithm Hash digest
SHA256 02263dfc9ad471ede2a40eea20fb3ee17307f46069a2250e41745e55bc180a44
MD5 102ffb3e4175532627899dba24e64e21
BLAKE2b-256 9d6ef9bb8f0a59102bd3526283d629fa2298e35015f7b87bd66e670eeba700c0

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp39-cp39-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp39-cp39-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 c3a67dbf5126e59909d914b5aaacfa9c4d22e24e9b46dc3bc98cac1d4de5a82c
MD5 db7eac84902f321395e96d61cff487e5
BLAKE2b-256 507dbe78567d5052b7ee6d29448caf2296bb72bb438a6de51c9d246ca6a9abd4

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: pyorbbecsdk2-2.1.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 17.5 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 c246995655803b3bba619f7bc9d10aafe92075d3a58e239f87784555ab92f771
MD5 686d47ed160bc4565cd6327734a48db5
BLAKE2b-256 9e11d3f22c99ef48b44722a2828010b6caf767c17fcc62ee8dfbd22cc61c67d8

See more details on using hashes here.

File details

Details for the file pyorbbecsdk2-2.1.1-cp38-cp38-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pyorbbecsdk2-2.1.1-cp38-cp38-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 ceed7b12b75815bdf612d78751d5b8cc561fe309d699d39b3fd78b0ee3ca5469
MD5 29a36057b9358a5eebd98f8d725fb7e5
BLAKE2b-256 0e127d56bbb900a76a99109389010dd0b3343a253b3c8f9065a72631c7fda32c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page