HW Colorspace conversion support from GRAY16_LE source buffer to I420 or NV12


I have GRAY16_LE format raw video buffers on which we want to perform video compression (H.264 or H265). But the NVENC h.264 encoder accepts only I420 or NV12 format.
nvvidconv does not support GRAY16_LE to I420 or NV12 format conversion.
I am aware of soft convert solution, which I would not prefer.
So the question is how to feed GRAY16_LE raw video buffers for video compression using NVENC without compromising speed ?

Since there is no hardware solution for GRAY16_LE, you would need to use software converter.

A relevant topic:

Thanks for your response
We need hardware solution as the software solution does not satisfy performance requirements.
"It shall be supported in next r32 release.".
So Which release will it be available. Can we get a date on this?



Sorry for making confusion. This means supporting P010_10LE in video encoder( nvv4l2h265enc ).
For GRAY16_LE, we are not able to support it due to hardware limitation.

Ok thanks for your reply,
In our case GRAY16_LE would be preferred for handling by our image processing modules.
It is only for encoding by NVENC we require this format conversion.
So I have two questions:

  1. During the capture, is it possible to use ISP for converting GRAY16_LE to I420 format.
  2. Is it possible to use the ISP on offline data.
    ie raw video data(say 2sec) from file or user space memory -> ISP (for format conversion)->NVENC
1 Like

GRAY16_LE is not supported by ISP engine.

Thanks, I got that.

Between is it possible to use ISP for other tasks(histogram etc) to work on offline data in memory or file?


This is not supported. The working case is to connect to Bayer sensors and the captured raw frames go into ISP engine through Argus frameworks. You may check camera boards from our partners: