Skip to content

Conversation

@mocsharp
Copy link
Contributor

Add a new encoder/decoder option: nvc using NVIDIA Video Codec.
The encoder and decoder operators are in C++ with Python wrappers.

Known Issue

The simulated surgeon app prints the following error when attempting to access the Tensor in the CameraStreamStats operators:

[error] [entity.hpp:90] Unable to find component from the name '' (error: GXF_ENTITY_COMPONENT_NOT_FOUND)

@mocsharp mocsharp requested a review from SachidanandAlle May 29, 2025 22:35
@mocsharp mocsharp self-assigned this May 29, 2025
mocsharp added 3 commits May 29, 2025 19:34
Signed-off-by: Victor Chang <[email protected]>
Signed-off-by: Victor Chang <[email protected]>

# capture room camera stream (optional)
NDDS_DISCOVERY_PEERS=${PATIENT_IP} python surgeon/camera.py --name room --width 1280 --height 720
NDDS_DISCOVERY_PEERS=${PATIENT_IP} python surgeon/camera.py --name room --width 1280 --height 720 [--decoder nvc]
Copy link
Contributor

Choose a reason for hiding this comment

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

r we going it by default.. because for igx we still have not solved the problem...? if so, then just provide an option to use --decoder nvjpeg | nvc..

Copy link
Contributor Author

Choose a reason for hiding this comment

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

No. That's why I put them in square brackets as "optional" parameter.

copy_to_host=False,
width=self.width,
height=self.height,
codec="H264",
Copy link
Contributor

Choose a reason for hiding this comment

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

you can take from encode_params (which is a json.. can be sent via args)
bitrate, frame_rate etc.. you can simple change to frame_rate=self.encoder_params("framerate", 60) and so on

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Thanks! I've updated it in 5884924.
The change includes a sample JSON file and an updated README with usage examples and options for each parameter.

height=self.height,
codec="H264",
preset="P3",
bitrate=10000000,
Copy link
Contributor

Choose a reason for hiding this comment

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

same as encode_params

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Thanks! I've updated it in 5884924.
The change includes a sample JSON file and an updated README with usage examples and options for each parameter.

@SachidanandAlle
Copy link
Contributor

Otherwise LGTM...

Copy link
Contributor

@SachidanandAlle SachidanandAlle left a comment

Choose a reason for hiding this comment

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

Looks good to me

@SachidanandAlle SachidanandAlle merged commit 10e64d7 into sachi/telesurgery May 30, 2025
1 check passed
@mocsharp mocsharp deleted the vchang/nvc branch May 30, 2025 16:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants