Skip to content

Feat: Beta namespace - #1919

Open
aljazkonec1 wants to merge 30 commits into
developfrom
feat/beta_namespace
Open

Feat: Beta namespace#1919
aljazkonec1 wants to merge 30 commits into
developfrom
feat/beta_namespace

Conversation

@aljazkonec1

@aljazkonec1 aljazkonec1 commented Jul 30, 2026

Copy link
Copy Markdown
Collaborator

Purpose

This PR adds a new beta namespace to depthai. The namespace is meant to include features and new nodes that are subject to large API and behavioural changes in any proceeding depthai version without any prior warning. Beta node run only on RVC4 devices, if you have an RVC2 device, you have to run the node on host.

Specification

In addition, the first supported beta nodes are all parsers from depthai-nodes and their respective message types. Their implementations have been compared to their results from depthai-nodes with no difference in output for the same given NN input. It is not expected that the API for this batch of parsers will stay stable.

Dependencies & Potential Impact

Possible issues with RVC2 devices on enumeration of messages. Other than that the beta nodes are isolated

Deployment Plan

Testing & Validation

comparison of outputs with depthai-nodes implementations.

AI Usage

Assisted-by: Claude Fable 5 Max & Codex 5.6 Sol xhigh

Submitted code was reviewed by a human: tested and validated. Since it is beta feature

The author is taking the responsibility for the contribution: YES

@coderabbitai

coderabbitai Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Too many files!

This PR contains 166 files, which is 66 over the limit of 100.

To get a review, reduce the PR to 100 files or fewer by splitting it into smaller PRs or changing its base branch.

Upgrade to a paid plan to raise the limit.

This review couldn't start because sufficient usage credits or metered capacity aren't available. Add credits or update usage-based reviews in the billing tab, then retry.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 12661e88-323a-4321-ab2f-59461fbe232b

📥 Commits

Reviewing files that changed from the base of the PR and between 9377bcf and e715caa.

📒 Files selected for processing (166)
  • .github/workflows/main.workflow.yml
  • .github/workflows/python-main.yml
  • CMakeLists.txt
  • bindings/python/CMakeLists.txt
  • bindings/python/setup.py
  • bindings/python/src/DatatypeBindings.cpp
  • bindings/python/src/beta/datatype/ClassificationsBindings.cpp
  • bindings/python/src/beta/datatype/ClustersBindings.cpp
  • bindings/python/src/beta/datatype/KeypointsBindings.cpp
  • bindings/python/src/beta/datatype/LinesBindings.cpp
  • bindings/python/src/beta/datatype/Map2DBindings.cpp
  • bindings/python/src/beta/datatype/PredictionsBindings.cpp
  • bindings/python/src/beta/node/ClassificationParserBindings.cpp
  • bindings/python/src/beta/node/ClassificationSequenceParserBindings.cpp
  • bindings/python/src/beta/node/EmbeddingsParserBindings.cpp
  • bindings/python/src/beta/node/FastSAMParserBindings.cpp
  • bindings/python/src/beta/node/HRNetParserBindings.cpp
  • bindings/python/src/beta/node/ImageOutputParserBindings.cpp
  • bindings/python/src/beta/node/ImgDetectionsFilterBindings.cpp
  • bindings/python/src/beta/node/KeypointParserBindings.cpp
  • bindings/python/src/beta/node/LaneDetectionParserBindings.cpp
  • bindings/python/src/beta/node/MLSDParserBindings.cpp
  • bindings/python/src/beta/node/MPPalmDetectionParserBindings.cpp
  • bindings/python/src/beta/node/MapOutputParserBindings.cpp
  • bindings/python/src/beta/node/PPTextDetectionParserBindings.cpp
  • bindings/python/src/beta/node/RFDETRParserBindings.cpp
  • bindings/python/src/beta/node/RegressionParserBindings.cpp
  • bindings/python/src/beta/node/SCRFDParserBindings.cpp
  • bindings/python/src/beta/node/SuperAnimalParserBindings.cpp
  • bindings/python/src/beta/node/XFeatMonoParserBindings.cpp
  • bindings/python/src/beta/node/XFeatStereoParserBindings.cpp
  • bindings/python/src/beta/node/YuNetParserBindings.cpp
  • bindings/python/src/pipeline/PipelineBindings.cpp
  • bindings/python/src/pipeline/datatype/AprilTagsBindings.cpp
  • bindings/python/src/pipeline/datatype/MessageGroupBindings.cpp
  • bindings/python/src/pipeline/datatype/SpatialLocationCalculatorDataBindings.cpp
  • bindings/python/src/pipeline/datatype/TrackedFeaturesBindings.cpp
  • bindings/python/src/pipeline/datatype/TrackletsBindings.cpp
  • bindings/python/src/pipeline/node/CameraBindings.cpp
  • bindings/python/src/pipeline/node/Common.hpp
  • bindings/python/src/pipeline/node/NodeBindings.cpp
  • bindings/python/tests/CMakeLists.txt
  • bindings/python/tests/beta_img_detections_filter_test.py
  • cmake/Depthai/DepthaiDeviceRVC4Config.cmake
  • cmake/depthaiConfig.cmake.in
  • cmake/depthaiOptions.cmake
  • examples/cpp/IMU/imu_gyroscope_accelerometer.cpp
  • examples/cpp/ToF/tof_align.cpp
  • examples/cpp/ToF/tof_all_queues.cpp
  • examples/cpp/ToF/tof_minimal.cpp
  • examples/python/Beta/img_detections_filter.py
  • include/depthai/beta/datatype/Classifications.hpp
  • include/depthai/beta/datatype/Clusters.hpp
  • include/depthai/beta/datatype/ImgDetectionsFilterConfig.hpp
  • include/depthai/beta/datatype/Keypoints.hpp
  • include/depthai/beta/datatype/Lines.hpp
  • include/depthai/beta/datatype/Map2D.hpp
  • include/depthai/beta/datatype/Predictions.hpp
  • include/depthai/beta/datatypes.hpp
  • include/depthai/beta/node/ClassificationParser.hpp
  • include/depthai/beta/node/ClassificationSequenceParser.hpp
  • include/depthai/beta/node/EmbeddingsParser.hpp
  • include/depthai/beta/node/FastSAMParser.hpp
  • include/depthai/beta/node/HRNetParser.hpp
  • include/depthai/beta/node/ImageOutputParser.hpp
  • include/depthai/beta/node/ImgDetectionsFilter.hpp
  • include/depthai/beta/node/KeypointParser.hpp
  • include/depthai/beta/node/LaneDetectionParser.hpp
  • include/depthai/beta/node/MLSDParser.hpp
  • include/depthai/beta/node/MPPalmDetectionParser.hpp
  • include/depthai/beta/node/MapOutputParser.hpp
  • include/depthai/beta/node/PPTextDetectionParser.hpp
  • include/depthai/beta/node/RFDETRParser.hpp
  • include/depthai/beta/node/RegressionParser.hpp
  • include/depthai/beta/node/SCRFDParser.hpp
  • include/depthai/beta/node/SuperAnimalParser.hpp
  • include/depthai/beta/node/XFeatMonoParser.hpp
  • include/depthai/beta/node/XFeatStereoParser.hpp
  • include/depthai/beta/node/YuNetParser.hpp
  • include/depthai/beta/nodes.hpp
  • include/depthai/beta/properties/ClassificationParserProperties.hpp
  • include/depthai/beta/properties/ClassificationSequenceParserProperties.hpp
  • include/depthai/beta/properties/EmbeddingsParserProperties.hpp
  • include/depthai/beta/properties/FastSAMParserProperties.hpp
  • include/depthai/beta/properties/HRNetParserProperties.hpp
  • include/depthai/beta/properties/ImageOutputParserProperties.hpp
  • include/depthai/beta/properties/ImgDetectionsFilterProperties.hpp
  • include/depthai/beta/properties/KeypointParserProperties.hpp
  • include/depthai/beta/properties/LaneDetectionParserProperties.hpp
  • include/depthai/beta/properties/MLSDParserProperties.hpp
  • include/depthai/beta/properties/MPPalmDetectionParserProperties.hpp
  • include/depthai/beta/properties/MapOutputParserProperties.hpp
  • include/depthai/beta/properties/PPTextDetectionParserProperties.hpp
  • include/depthai/beta/properties/RFDETRParserProperties.hpp
  • include/depthai/beta/properties/RegressionParserProperties.hpp
  • include/depthai/beta/properties/SCRFDParserProperties.hpp
  • include/depthai/beta/properties/SuperAnimalParserProperties.hpp
  • include/depthai/beta/properties/XFeatMonoParserProperties.hpp
  • include/depthai/beta/properties/XFeatStereoParserProperties.hpp
  • include/depthai/beta/properties/YuNetParserProperties.hpp
  • include/depthai/depthai.hpp
  • include/depthai/pipeline/datatype/DatatypeEnum.hpp
  • include/depthai/pipeline/node/StereoDepth.hpp
  • src/beta/datatype/Classifications.cpp
  • src/beta/datatype/Clusters.cpp
  • src/beta/datatype/ImgDetectionsFilterConfig.cpp
  • src/beta/datatype/Keypoints.cpp
  • src/beta/datatype/Lines.cpp
  • src/beta/datatype/Map2D.cpp
  • src/beta/datatype/Predictions.cpp
  • src/beta/node/ClassificationParser.cpp
  • src/beta/node/ClassificationSequenceParser.cpp
  • src/beta/node/EmbeddingsParser.cpp
  • src/beta/node/FastSAMParser.cpp
  • src/beta/node/HRNetParser.cpp
  • src/beta/node/ImageOutputParser.cpp
  • src/beta/node/ImgDetectionsFilter.cpp
  • src/beta/node/KeypointParser.cpp
  • src/beta/node/LaneDetectionParser.cpp
  • src/beta/node/MLSDParser.cpp
  • src/beta/node/MPPalmDetectionParser.cpp
  • src/beta/node/MapOutputParser.cpp
  • src/beta/node/PPTextDetectionParser.cpp
  • src/beta/node/RFDETRParser.cpp
  • src/beta/node/RegressionParser.cpp
  • src/beta/node/SCRFDParser.cpp
  • src/beta/node/SuperAnimalParser.cpp
  • src/beta/node/XFeatMonoParser.cpp
  • src/beta/node/XFeatStereoParser.cpp
  • src/beta/node/YuNetParser.cpp
  • src/beta/properties/ImgDetectionsFilterProperties.cpp
  • src/beta/utilities/Classification/ClassificationUtils.cpp
  • src/beta/utilities/Classification/ClassificationUtils.hpp
  • src/beta/utilities/Detection/DetectionUtils.cpp
  • src/beta/utilities/Detection/DetectionUtils.hpp
  • src/beta/utilities/Detection/MaskUtils.cpp
  • src/beta/utilities/Detection/MaskUtils.hpp
  • src/beta/utilities/FastSAM/FastSAMUtils.cpp
  • src/beta/utilities/FastSAM/FastSAMUtils.hpp
  • src/beta/utilities/Keypoints/KeypointsUtils.cpp
  • src/beta/utilities/Keypoints/KeypointsUtils.hpp
  • src/beta/utilities/LaneDetection/LaneDetectionUtils.cpp
  • src/beta/utilities/LaneDetection/LaneDetectionUtils.hpp
  • src/beta/utilities/MLSD/MLSDUtils.cpp
  • src/beta/utilities/MLSD/MLSDUtils.hpp
  • src/beta/utilities/MediaPipe/MediaPipeUtils.cpp
  • src/beta/utilities/MediaPipe/MediaPipeUtils.hpp
  • src/beta/utilities/PPText/PPTextUtils.cpp
  • src/beta/utilities/PPText/PPTextUtils.hpp
  • src/beta/utilities/RFDETR/RFDETRUtils.cpp
  • src/beta/utilities/RFDETR/RFDETRUtils.hpp
  • src/beta/utilities/SCRFD/SCRFDUtils.cpp
  • src/beta/utilities/SCRFD/SCRFDUtils.hpp
  • src/beta/utilities/XFeat/XFeatUtils.cpp
  • src/beta/utilities/XFeat/XFeatUtils.hpp
  • src/beta/utilities/YuNet/YuNetUtils.cpp
  • src/beta/utilities/YuNet/YuNetUtils.hpp
  • src/pipeline/datatype/DatatypeEnum.cpp
  • src/pipeline/datatype/StreamMessageParser.cpp
  • src/pipeline/node/Camera.cpp
  • src/pipeline/node/host/Replay.cpp
  • src/utility/ImageManipImpl.cpp
  • src/utility/ProtoSerialize.cpp
  • tests/CMakeLists.txt
  • tests/src/ondevice_tests/pipeline/node/image_manip_test.cpp
  • tests/src/onhost_tests/beta_parser_properties_test.cpp

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces an opt-in beta (experimental) namespace in depthai-core, wiring new beta datatypes/nodes/utilities through CMake, core serialization/parsing, and Python bindings, along with initial examples/tests.

Changes:

  • Add DEPTHAI_BUILD_BETA build option and propagate DEPTHAI_HAVE_BETA to conditionally compile/export beta APIs.
  • Introduce beta datatypes/nodes/properties/utilities and integrate them into DatatypeEnum, stream parsing, and host replay behavior.
  • Add Catch2 + Python tests and a Python example for beta functionality; includes several formatting-only cleanups.

Reviewed changes

Copilot reviewed 163 out of 166 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
tests/src/onhost_tests/beta_parser_properties_test.cpp Adds on-host tests for beta parser property serialization/round-tripping.
tests/src/ondevice_tests/pipeline/node/image_manip_test.cpp Formatting change in ImageManip test config setup.
tests/CMakeLists.txt Conditionally adds beta on-host test when DEPTHAI_BUILD_BETA is enabled.
src/utility/ProtoSerialize.cpp Marks additional beta datatypes as not supported for protobuf deserialization.
src/utility/ImageManipImpl.cpp Minor comment formatting tweak.
src/pipeline/node/host/Replay.cpp Extends replay datatype handling for new enum values (unsupported types).
src/pipeline/node/Camera.cpp Style-only formatting change.
src/pipeline/datatype/StreamMessageParser.cpp Adds parsing branches for beta datatypes under DEPTHAI_HAVE_BETA.
src/pipeline/datatype/DatatypeEnum.cpp Extends datatype hierarchy to include new beta datatypes.
src/beta/utilities/RFDETR/RFDETRUtils.hpp Adds RF-DETR decoding utility API (beta).
src/beta/utilities/PPText/PPTextUtils.hpp Adds PP-Text detection decoding utility API (beta).
src/beta/utilities/MLSD/MLSDUtils.hpp Adds MLSD line decoding utility API (beta).
src/beta/utilities/MediaPipe/MediaPipeUtils.hpp Adds MediaPipe palm detection utility API (beta).
src/beta/utilities/LaneDetection/LaneDetectionUtils.hpp Adds lane detection utility API (beta).
src/beta/utilities/Detection/MaskUtils.hpp Adds mask processing helpers (beta).
src/beta/utilities/Detection/DetectionUtils.hpp Adds detection utilities (e.g., NMS) (beta).
src/beta/utilities/Classification/ClassificationUtils.hpp Adds classification tensor helpers (beta).
src/beta/properties/ImgDetectionsFilterProperties.cpp Implements beta properties dtor for ImgDetectionsFilter.
src/beta/node/EmbeddingsParser.cpp Adds EmbeddingsParser node implementation (beta).
src/beta/datatype/Predictions.cpp Adds Predictions datatype implementation (beta).
src/beta/datatype/Lines.cpp Adds Lines datatype implementation (beta).
src/beta/datatype/Keypoints.cpp Adds Keypoints datatype implementation (beta).
src/beta/datatype/ImgDetectionsFilterConfig.cpp Adds ImgDetectionsFilterConfig datatype implementation (beta).
src/beta/datatype/Classifications.cpp Adds Classifications datatype implementation (beta).
include/depthai/pipeline/node/StereoDepth.hpp Wraps warning comment for formatting.
include/depthai/pipeline/datatype/DatatypeEnum.hpp Adds new datatype enum entries for beta datatypes.
include/depthai/depthai.hpp Conditionally exports beta headers when DEPTHAI_HAVE_BETA is set.
include/depthai/beta/properties/YuNetParserProperties.hpp Adds YuNetParser properties (beta).
include/depthai/beta/properties/XFeatStereoParserProperties.hpp Adds XFeatStereoParser properties (beta).
include/depthai/beta/properties/XFeatMonoParserProperties.hpp Adds XFeatMonoParser properties (beta).
include/depthai/beta/properties/SuperAnimalParserProperties.hpp Adds SuperAnimalParser properties (beta).
include/depthai/beta/properties/SCRFDParserProperties.hpp Adds SCRFDParser properties (beta).
include/depthai/beta/properties/RFDETRParserProperties.hpp Adds RFDETRParser properties (beta).
include/depthai/beta/properties/RegressionParserProperties.hpp Adds RegressionParser properties (beta).
include/depthai/beta/properties/PPTextDetectionParserProperties.hpp Adds PPTextDetectionParser properties (beta).
include/depthai/beta/properties/MPPalmDetectionParserProperties.hpp Adds MPPalmDetectionParser properties (beta).
include/depthai/beta/properties/MLSDParserProperties.hpp Adds MLSDParser properties (beta).
include/depthai/beta/properties/MapOutputParserProperties.hpp Adds MapOutputParser properties (beta).
include/depthai/beta/properties/LaneDetectionParserProperties.hpp Adds LaneDetectionParser properties (beta).
include/depthai/beta/properties/KeypointParserProperties.hpp Adds KeypointParser properties (beta).
include/depthai/beta/properties/ImgDetectionsFilterProperties.hpp Adds ImgDetectionsFilter properties (beta).
include/depthai/beta/properties/ImageOutputParserProperties.hpp Adds ImageOutputParser properties (beta).
include/depthai/beta/properties/HRNetParserProperties.hpp Adds HRNetParser properties (beta).
include/depthai/beta/properties/FastSAMParserProperties.hpp Adds FastSAMParser properties (beta).
include/depthai/beta/properties/EmbeddingsParserProperties.hpp Adds EmbeddingsParser properties (beta).
include/depthai/beta/properties/ClassificationSequenceParserProperties.hpp Adds ClassificationSequenceParser properties (beta).
include/depthai/beta/properties/ClassificationParserProperties.hpp Adds ClassificationParser properties (beta).
include/depthai/beta/nodes.hpp Adds umbrella include for beta nodes.
include/depthai/beta/node/RegressionParser.hpp Adds RegressionParser node API (beta).
include/depthai/beta/node/MapOutputParser.hpp Adds MapOutputParser node API (beta).
include/depthai/beta/node/ImgDetectionsFilter.hpp Adds ImgDetectionsFilter node API (beta).
include/depthai/beta/node/ImageOutputParser.hpp Adds ImageOutputParser node API (beta).
include/depthai/beta/node/HRNetParser.hpp Adds HRNetParser node API (beta).
include/depthai/beta/node/EmbeddingsParser.hpp Adds EmbeddingsParser node API (beta).
include/depthai/beta/node/ClassificationParser.hpp Adds ClassificationParser node API (beta).
include/depthai/beta/datatypes.hpp Adds umbrella include for beta datatypes.
include/depthai/beta/datatype/Predictions.hpp Adds Predictions datatype API (beta).
include/depthai/beta/datatype/Map2D.hpp Adds Map2D datatype API (beta).
include/depthai/beta/datatype/Lines.hpp Adds Lines datatype API (beta).
include/depthai/beta/datatype/Keypoints.hpp Adds Keypoints datatype API (beta).
include/depthai/beta/datatype/ImgDetectionsFilterConfig.hpp Adds ImgDetectionsFilterConfig datatype API (beta).
include/depthai/beta/datatype/Clusters.hpp Adds Clusters datatype API (beta).
include/depthai/beta/datatype/Classifications.hpp Adds Classifications datatype API (beta).
examples/python/Beta/img_detections_filter.py Adds beta Python example for ImgDetectionsFilter.
examples/cpp/ToF/tof_minimal.cpp Formatting-only change.
examples/cpp/ToF/tof_all_queues.cpp Formatting-only change.
examples/cpp/ToF/tof_align.cpp Include ordering + formatting-only changes.
examples/cpp/IMU/imu_gyroscope_accelerometer.cpp Whitespace cleanup.
CMakeLists.txt Adds beta sources + compile definition DEPTHAI_HAVE_BETA when enabled.
cmake/depthaiOptions.cmake Introduces DEPTHAI_BUILD_BETA option.
cmake/depthaiConfig.cmake.in Exports DEPTHAI_BUILD_BETA in package config.
cmake/Depthai/DepthaiDeviceRVC4Config.cmake Updates RVC4 version string.
bindings/python/tests/CMakeLists.txt Adds beta Python test when beta build is enabled.
bindings/python/tests/beta_img_detections_filter_test.py Adds Python tests for beta ImgDetectionsFilter availability/passthrough.
bindings/python/src/pipeline/PipelineBindings.cpp Treats depthai.beta.node classes as “from bindings” for create-path selection.
bindings/python/src/pipeline/node/NodeBindings.cpp Adds beta node bind callstack entries and creates depthai.beta.node submodule.
bindings/python/src/pipeline/node/Common.hpp Adds helper to register beta nodes (addBetaNode / ADD_BETA_NODE_DERIVED).
bindings/python/src/pipeline/node/CameraBindings.cpp Formatting-only change.
bindings/python/src/pipeline/datatype/TrackletsBindings.cpp Formatting-only change.
bindings/python/src/pipeline/datatype/TrackedFeaturesBindings.cpp Formatting-only change.
bindings/python/src/pipeline/datatype/SpatialLocationCalculatorDataBindings.cpp Formatting-only change.
bindings/python/src/pipeline/datatype/MessageGroupBindings.cpp Formatting-only change.
bindings/python/src/pipeline/datatype/AprilTagsBindings.cpp Formatting-only change.
bindings/python/src/DatatypeBindings.cpp Adds conditional exposure of beta datatype enum values and binding callstack entries.
bindings/python/src/beta/node/YuNetParserBindings.cpp Adds Python bindings for YuNetParser (beta).
bindings/python/src/beta/node/XFeatStereoParserBindings.cpp Adds Python bindings for XFeatStereoParser (beta).
bindings/python/src/beta/node/XFeatMonoParserBindings.cpp Adds Python bindings for XFeatMonoParser (beta).
bindings/python/src/beta/node/SuperAnimalParserBindings.cpp Adds Python bindings for SuperAnimalParser (beta).
bindings/python/src/beta/node/SCRFDParserBindings.cpp Adds Python bindings for SCRFDParser (beta).
bindings/python/src/beta/node/RFDETRParserBindings.cpp Adds Python bindings for RFDETRParser (beta).
bindings/python/src/beta/node/RegressionParserBindings.cpp Adds Python bindings for RegressionParser (beta).
bindings/python/src/beta/node/PPTextDetectionParserBindings.cpp Adds Python bindings for PPTextDetectionParser (beta).
bindings/python/src/beta/node/MPPalmDetectionParserBindings.cpp Adds Python bindings for MPPalmDetectionParser (beta).
bindings/python/src/beta/node/MLSDParserBindings.cpp Adds Python bindings for MLSDParser (beta).
bindings/python/src/beta/node/MapOutputParserBindings.cpp Adds Python bindings for MapOutputParser (beta).
bindings/python/src/beta/node/LaneDetectionParserBindings.cpp Adds Python bindings for LaneDetectionParser (beta).
bindings/python/src/beta/node/KeypointParserBindings.cpp Adds Python bindings for KeypointParser (beta).
bindings/python/src/beta/node/ImgDetectionsFilterBindings.cpp Adds Python bindings for ImgDetectionsFilter + config/properties (beta).
bindings/python/src/beta/node/ImageOutputParserBindings.cpp Adds Python bindings for ImageOutputParser (beta).
bindings/python/src/beta/node/HRNetParserBindings.cpp Adds Python bindings for HRNetParser (beta).
bindings/python/src/beta/node/FastSAMParserBindings.cpp Adds Python bindings for FastSAMParser (beta).
bindings/python/src/beta/node/EmbeddingsParserBindings.cpp Adds Python bindings for EmbeddingsParser (beta).
bindings/python/src/beta/node/ClassificationSequenceParserBindings.cpp Adds Python bindings for ClassificationSequenceParser (beta).
bindings/python/src/beta/node/ClassificationParserBindings.cpp Adds Python bindings for ClassificationParser (beta).
bindings/python/src/beta/datatype/PredictionsBindings.cpp Adds Python bindings for Predictions datatype (beta).
bindings/python/src/beta/datatype/Map2DBindings.cpp Adds Python bindings for Map2D datatype (beta).
bindings/python/src/beta/datatype/LinesBindings.cpp Adds Python bindings for Lines datatype (beta).
bindings/python/src/beta/datatype/KeypointsBindings.cpp Adds Python bindings for Keypoints datatype (beta).
bindings/python/src/beta/datatype/ClustersBindings.cpp Adds Python bindings for Clusters datatype (beta).
bindings/python/src/beta/datatype/ClassificationsBindings.cpp Adds Python bindings for Classifications datatype (beta).
bindings/python/setup.py Allows enabling beta build via env var to CMake args.
bindings/python/CMakeLists.txt Adds beta binding sources when DEPTHAI_BUILD_BETA is enabled.
.github/workflows/python-main.yml Enables beta build in Python CI workflow and passes CMake flag.
.github/workflows/main.workflow.yml Adds workflow input + env-based logic to build with/without beta; passes CMake flag.
Suppressed comments (1)

tests/src/onhost_tests/beta_parser_properties_test.cpp:75

  • The schema validation loop only asserts properties if the expected nodes are encountered; if a node is missing from schema.nodes, the test will still pass (false negative). Consider tracking which expected node names were seen and REQUIRE at the end that all expected nodes were found.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +1 to +2
#include <catch2/catch_all.hpp>
#include <depthai/depthai.hpp>
Comment on lines +339 to +344
case DatatypeEnum::ImgDetectionsFilterConfig:
#ifdef DEPTHAI_HAVE_BETA
return parseDatatype<beta::ImgDetectionsFilterConfig>(metadataStart, serializedObjectSize, data, fd);
#else
break;
#endif
@aljazkonec1 aljazkonec1 added the testable PR is ready to be tested - run vanilla tests label Aug 5, 2026
using namespace dai;
using namespace dai::beta::node;

auto betaModule = m.def_submodule("beta", "Experimental APIs");

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

bindings/python/src/beta/node/KeypointParserBindings.cpp doesn't have this (at least not explicit). How come the difference?

@moratom moratom left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Neat, some experimental nodes :)

A few high level comments:

  • I think basic tests would make sense still, even though the API is experimental
  • Maybe makes sense to add a notice to README what's the purpuse of the beta submodule (unstable API, ...)
  • RVC2 FW still needs to be bumped for safety, to get the enums updated

cv::Mat colored;
logDepth.convertTo(
colored, CV_8U, 255.0 / (logMaxDepth - logMinDepth), -logMinDepth * 255.0 / (logMaxDepth - logMinDepth));
logDepth.convertTo(colored, CV_8U, 255.0 / (logMaxDepth - logMinDepth), -logMinDepth * 255.0 / (logMaxDepth - logMinDepth));

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

formatting intentional?

@moratom

moratom commented Aug 5, 2026

Copy link
Copy Markdown
Collaborator

From CI:

[RVC4] 91: -------------------------------------------------------------------------------
[RVC4] 91: Test raw camera output
[RVC4] 91: -------------------------------------------------------------------------------
[RVC4] 91: /workspace/tests/src/ondevice_tests/pipeline/node/camera_test.cpp:18
[RVC4] 91: ...............................................................................
[RVC4] 91:
[RVC4] 91: /workspace/tests/src/ondevice_tests/pipeline/node/camera_test.cpp:21: FAILED:
[RVC4] 91: due to unexpected exception with message:
[RVC4] 91:   RPC 'getConnectedCameraFeatures' failed: [json.exception.parse_error.101]
[RVC4] 91:   parse error at line 1, column 1: syntax error while parsing value -
[RVC4] 91:   unexpected end of input; expected '[', '{', or a literal
[RVC4] 91:
[RVC4] 91: -------------------------------------------------------------------------------
[RVC4] 91: Test camera with multiple outputs with different FPS
[RVC4] 91: -------------------------------------------------------------------------------
[RVC4] 91: /workspace/tests/src/ondevice_tests/pipeline/node/camera_test.cpp:44
[RVC4] 91: ...............................................................................
[RVC4] 91:
[RVC4] 91: /workspace/tests/src/ondevice_tests/pipeline/node/camera_test.cpp:44: FAILED:
[RVC4] 91: due to unexpected exception with message:
[RVC4] 91:   RPC 'getConnectedCameraFeatures' failed: [json.exception.parse_error.101]
[RVC4] 91:   parse error at line 1, column 1: syntax error while parsing value -
[RVC4] 91:   unexpected end of input; expected '[', '{', or a literal

this doesn't seem like a flaky test, OS 1.27.1 RVC4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

testable PR is ready to be tested - run vanilla tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants