nvxio::Render createDefaultRender problem

Hello,
when I try to instantiate an object of type nvxio::Render as in the instruction below

    std::unique_ptr<nvxio::Render> renderer(nvxio::createDefaultRender("Render Personal", width/2, height/2, NVXCU_DF_IMAGE_RGB));

the error is

Error: format == NVXCU_DF_IMAGE_RGBX failure in file src/NVX/Render/GlfwUIRenderImpl.cpp line 76

any type of vx_df_image_e gives me this error the only one you can create the object with is NVXCU_DF_IMAGE_RGBX, why?

Thanks
Sa

Hi,

The function only support NVXCU_DF_IMAGE_RGBX, which is “A single 32-bit pixel plane of 4 interleaved 8-bit RGBX units”.
You can check the source implementation in the following file:

/usr/share/visionworks/sources/nvxio/src/NVX/Render/GlfwUIRenderImpl.cpp

Thanks.

Thank you for your answer, then I wonder why it is written in the format parameter documentation that you can enter any format of type nvxcu_df_image_e

because even with ovxio::Render has the same description but works with RGB
vx_df_image_e

Hi,

There are two issue for this:

1.
You will need to use VX_DF_IMAGE_RGBX or NVXCU_DF_IMAGE_RGBX for the Render.
The format is single 32-bit pixel plane of 4 interleaved 8-bit RGBX units, as mentioned above.

2.
There are two possible render API.

For ‘VisionWorks Render Interface’, the format is defined as vx_df_image_e.
For ‘VisionWorks CUDA Render Interface’, the format is defined as nvxcu_df_image_e.

Thanks.

Yes I noticed that there are two Renders what I was wondering why for the Render ovxio I can pass RGB or GREY images to it and it works while for nvxio it only works with RGBX?

Thanks for answer.