LibArgus ISP Output Formats

I know I can change ISP Output Format with setting:

PIXEL_FMT_YCbCr_420_888 comes in block linear format, right? What would be the best way to convert this?

Lately, you introduced IBufferOutputStream, where I can set the format I need in the NvBufferFormat. What happens internally there? Is the format always PIXEL_FMT_YCbCr_420_888 and is converted to the NvBufferFormat I want? Is possible to get real PIXEL_FMT_PO16 with this method? Which NvBufferFormat I had to give, so I get PIXEL_FMT_PO16 and not PIXEL_FMT_YCbCr_420_888 converted to PIXEL_FMT_PO16?

Best regards,

hello busch.johannes,

may I know what’s the actual use-case, what’s the final output format you expected?

Yes! I’d like to use ISP features with LibArgus. But I’d like to habe 10-bit values (also have 10-bit mipi sensor), that’s why I’d like to use P016 format which can be used (found it in the example).

In the example it is used with EGL Stream. Currently I am using BufferOutputStream so I was wondering if it’s possible to use P016 with this, too.

Best regards,

The existing implementation is in gstreamer. Please try the command:

$ gst-launch-1.0 nvarguscamerasrc num-buffers=300 ! 'video/xraw(memory:NVMM),format=P010_10LE' ! nvv4l2h265enc ! h265parse ! qtmux ! filesink location=P010_10LE.mp4

And you can get h265 stream compressed from YUV420 10-bit. Please check source code of nvarguscamerasrc plugin. The code demonstrates how to get NvBuffer in NvBufferColorFormat_NV12_10LE.

Hey, thanks for the response!
In your example provides how to use P016 with IEGLStream, but I’d like to use BufferOutputStream in LibArgus. If this is not possible with P016, let me know!

I will switch to IEGLStream then.

Please follow the sample code to use IEGLOutputStream. It has not been tested in using BufferOutputStream.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.